目录结构调整

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,656 @@
(function(wnd, undef){
//复制json对象
function min_copyjson(json)
{
return JSON.parse(JSON.stringify(json));
}
//json对象转字符串
function min_jsontostr(json) {
return JSON.stringify(json);
}
//字符串转json对象
function min_strtojson(str) {
return JSON.parse(str);
}
//字符串转整型 def:转换失败时返回的默认值
function min_strtoint(str, def) {
var i = parseInt(str);
if (i == 0) {
return 0;
};
if (!i) { //=0也会进来
if (!def) {
def = 0;
};
i = def;
}
return i;
};
//整型转字符串
function min_inttostr(i) {
return i.toString();
};
//整除
function min_div(i, b)
{
if (!b) {
return parseInt(i);
}
return parseInt(i / b);
};
//取余数
function min_mod(a, b){
return a % b;
};
//取绝对值
function min_abs(b) {
return Math.abs(b);
};
//取随机数
function min_random(min, max) {
var Range = max - min;
var Rand = Math.random();
return (min + Math.round(Rand * Range));
};
//取随机数1
function min_random1(num) {
return parseInt(Math.random()*num);
};
//随机字符串
function min_randomChar(length){
var x = "0123456789";
var y = "qwertyuioplkjhgfdsazxcvbnm";
var z = "QWERTYUIOPLKJHGFDSAZXCVBNM";
var tmp = "";
for (var i = 0; i < length; i++) {
switch(min_random(0, 2)) {
case 0:
tmp += x.charAt(Math.ceil(Math.random()*100000000)%x.length);
break;
case 1:
tmp += y.charAt(Math.ceil(Math.random()*100000000)%y.length);
break;
case 2:
tmp += z.charAt(Math.ceil(Math.random()*100000000)%z.length);
break;
default:
break;
}
}
// var timestamp = new Date().getTime();
// return timestamp + tmp;
return tmp;
}
//取长度
function min_length(key) {
if (typeof(key) != "string") {
var key = key + "";
}
return key.length;
}
//字符全替换
function min_replaceAll(str, str_old, str_new, ignoreCase)
{
if (!RegExp.prototype.isPrototypeOf(str_old)) {
return str.replace(new RegExp(str_old, (ignoreCase ? "gi": "g")), str_new);
} else {
return str.replace(str_old, str_new);
}
}
//取本地当前时间格式yyyy-MM-dd HH:MM:SS
function min_now()
{
var date = new Date();
var seperator1 = "-";
var seperator2 = ":";
var month = date.getMonth() + 1;
var strDate = date.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
+ " " + date.getHours() + seperator2 + date.getMinutes()
+ seperator2 + date.getSeconds();
return currentdate;
}
//本地存储数据
function min_writefile_gameid(msg, gameid, fileid) {
localStorage.setItem("file_" + gameid + "_" + fileid, msg);
}
//读取本地数据
function min_readfile_gameid(gameid, fileid) {
return localStorage.getItem("file_" + gameid + "_" + fileid);
}
//取当前页面url中的参数值 def:没取到时返回的默认值
function min_getQueryString(name, def) {
var self = window;
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = self.location.search.substr(1).match(reg);
if (r != null) {
return unescape(r[2])
} else {
if (def) {
return def;
} else {
return null;
}
}
}
//获取当前页面的路径
function min_getUrlRootPath() {
var curWwwPath = window.location.host;
var pathName = window.location.pathname;
return curWwwPath + pathName.substr(0,pathName.lastIndexOf('/'));
}
//设置cookie
function min_setCookie(name, value, exp_minute) {
if (!exp_minute) {
exp_minute = 20; //默认时效20分钟
}
var exp = new Date();
exp.setTime(exp.getTime() + exp_minute*60*1000);
document.cookie = name + "=" + value + ";expires=" + exp.toGMTString()+';path=/';
}
//读取cookie
function min_getCookie(name) {
var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
if(arr != null)
return arr[2];
return null;
}
//删除cookie
function min_delCookie(name) {
var value = min_getCookie(name);
if (value) {
min_setCookie(name, value, 0);
}
}
//获取一个dom
function min_getdom(id)
{
return document.getElementById(id);
};
//设置一个dom属性值 iddom、或dom的id、或实列key属性val
function min_setdom(id, key, val) {
var obj;
if (typeof(id) == 'string') {
obj = min_getdom(id);
}
else {
obj = id;
}
obj.setAttribute(key, val);
}
//添加一段innerHTML
function min_uphtml(id, str, isadd) {
/*
setAttribute是设置网页元素的属性就是在标签里内如<img />标签的src属性。
innerHTML不是属性只是JS里内代表一个双标记中间的文本如:<span> </span>中间的字符。
*/
var obj = window.document.getElementById(id);
if (isadd) {
obj.innerHTML = obj.innerHTML + str;
}
else {
obj.innerHTML = str;
}
}
//新建一个定时器每隔time毫秒执行一次func函数函数返回定时器id
function min_ontime(func, time)
{
return setInterval(func, time);
}
//新建一个定时器time毫秒后执行一次func函数只执行一次函数返回定时器id
function min_ontimeout(func, time)
{
return setTimeout(func, time);
}
//关闭定时器id为timerid的定时器
function min_closetime(timerid)
{
return clearTimeout(timerid);
}
//encode转码
function min_encode(s)
{
return encodeURIComponent(s);
}
//decode解码
function min_decode(s)
{
return decodeURIComponent(s);
}
//新建一个tcp连接
function min_tcp(config)
{
var ws = new WebSocket("ws://" + config.ipport); //"127.0.0.1:5414"
//连接上服务器后触发的事件
if (config.onopen) {
ws.onopen = config.onopen;
};
//收到服务器发来的数据包后触发的事件onmessage函数会有一个底层的msg参数其中msg.data才是服务器发过来的业务数据
if (config.onmessage) {
ws.onmessage = config.onmessage;
};
//断开与服务器的连接后触发的事件
if (config.onclose) {
ws.onclose = config.onclose; //断开连接的事件
};
return ws;
}
//http请求
function min_http(config) {
/*
config =
{
url: "http://127.0.0.1:5414/index.html",
type: "POST", //GET or POST 方法
data: "", //请求的数据
success: func_callback_succ, //请求成功后的回调函数function(data,status,callbackdata)
error: func_callback_err, //请求失败后的回调函数function(data,status)
callbackdata: "", //作为回调函数第三个参数带入回调函数的数据
//enurl: 0, //是否encodeURIComponent转码, 默认0不转码
//deurl: 0, //是否decodeURIComponent解码默认0不解码
debugLog: false, //是否输出debug日志默认false
method: "(OPTIONAL) True for async and False for Non-async | By default its Async"
}
*/
if (!config.debugLog) {
config.debugLog = false;
}
if (!config.enurl) {
config.enurl = 0;
}
if (!config.deurl) {
config.deurl = 0;
}
if (!config.method) {
config.method = true;
}
if (!config.url) {
if (config.debugLog == true) {
console.log("No Url!");
}
return;
};
if (!config.type) {
if (config.debugLog == true) {
console.log("No Default type (GET/POST) given!");
}
return;
}
var xmlhttp = initXMLhttp();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200 && config.success)
{
var responseText = mydecodeURIComponent(xmlhttp.responseText, config.deurl);
if (!config.callbackdata) {
config.success(responseText, xmlhttp.readyState);
}
else {
config.success(responseText, xmlhttp.readyState, config.callbackdata);
}
if (config.debugLog == true) {
console.log("SuccessResponse");
}
if (config.debugLog == true) {
console.log("Response Data:" + xmlhttp.responseText);
}
}
else
{
if (xmlhttp.readyState == 4 && config.error)
{
if (!config.callbackdata) {
config.error(xmlhttp.readyState, xmlhttp.status);
}
else {
config.error(xmlhttp.readyState, xmlhttp.status, config.callbackdata);
}
}
if (config.debugLog == true) {
console.log("FailureResponse --> readyState:" + xmlhttp.readyState + ", Status:" + xmlhttp.status);
}
}
}
var sendString = [],
sendData = config.data;
if (typeof sendData === "string") {
var tmpArr = String.prototype.split.call(sendData, '&');
for (var i = 0, j = tmpArr.length; i < j; i++) {
var datum = tmpArr[i].split('=');
if (datum[1]) {
sendString.push(myencodeURIComponent(datum[0], config.enurl) + "=" + myencodeURIComponent(datum[1], config.enurl));
}
else {
sendString.push(myencodeURIComponent(datum[0], config.enurl));
}
}
}
else if (typeof sendData === 'object' && !(sendData instanceof String || (FormData && sendData instanceof FormData))) {
for (var k in sendData) {
var datum = sendData[k];
if (Object.prototype.toString.call(datum) == "[object Array]") {
for (var i = 0, j = datum.length; i < j; i++) {
sendString.push(myencodeURIComponent(k, config.enurl) + "[]=" + myencodeURIComponent(datum[i], config.enurl));
}
}
else {
sendString.push(myencodeURIComponent(k, config.enurl) + "=" + myencodeURIComponent(datum, config.enurl));
}
}
}
sendString = sendString.join('&');
if (config.type == "GET") {
var g;
var i = config.url.lastIndexOf("?");
if (i > 8) {
g = "&";
} else {
g = "?";
}
var ddata = new Date().getMilliseconds();
if (sendString == "") {
sendString = '#dfw1977=' + (ddata + min_random(1, 99999) * 1000);
} else {
sendString = sendString + '#dfw1977=' + (ddata + min_random(1, 99999) * 1000);
}
xmlhttp.open("GET", config.url + g + sendString, config.method);
xmlhttp.send();
if (config.debugLog == true) {
console.log("GET fired at:" + config.url + "?" + sendString);
}
}
if (config.type == "POST") {
xmlhttp.open("POST", config.url, config.method);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send(sendString);
if (config.debugLog == true) {
console.log("POST fired at:" + config.url + " || Data:" + sendString);
}
}
}
function initXMLhttp() {
var xmlhttp;
if (window.XMLHttpRequest) {
//code for IE7,firefox chrome and above
xmlhttp = new XMLHttpRequest();
} else {
//code for Internet Explorer
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
return xmlhttp;
}
//转码
function myencodeURIComponent(s, ifif)
{
if (ifif == 1) {
return min_encode(s);
} else {
return s;
}
}
//解码
function mydecodeURIComponent(s, ifif)
{
if (ifif == 1) {
return min_decode(s);
} else {
return s;
}
}
//在数组中根据元素值查找下标
function min_ary_indexof(array1, val, name)
{
for (var i = 0; i < array1.length; i++)
{
if (!name)
{
if (array1[i] == val)
return i;
}
else
{
if (array1[i][name] == val)
return i;
}
}
return -1;
};
//在数组中根据值删除元素
function min_ary_delval(array1, val, name)
{
var index = min_ary_indexof(array1, val, name);
if (index > -1)
{
array1.splice(index, 1);
}
};
//在数组中根据下标删除诺干个元素
function min_ary_delfromto(array1, from, to)
{
var rest = array1.slice((to || from) + 1 || array1.length);
array1.length = from < 0 ? array1.length + from : from;
array1.push.apply(array1, rest);
};
//在数组中删除某一对象元素
function min_ary_delobj(array1, object)
{
for (var i = 0; i < array1.length; ++i)
{
if (array1[i] === object)
{
array1.splice(i, 1);
break;
}
}
};
//数组包含
function min_ary_include(aryparent, arychild){
for (var i = 0; i < arychild.length; i++) {
var found = false;
for (var j = 0; j < aryparent.length; j++) {
if (aryparent[j] == arychild[i]){
found = true;
break;
}
}
if (!found){
return false;
}
}
return true;
};
//数组相减
function min_ary_deduct(aryparent, arychild){
var re = [];
for (var i = 0; i < aryparent.length; i++){
var found = false;
for (var j = 0; j < arychild.length; j++){
if (aryparent[i] == arychild[j]){
found = true;
break;
}
}
if (!found){
re.push(aryparent[i])
}
}
return re;
};
//是否存在指定函数
function min_ExitsFunction(funcName)
{
try
{
if (typeof(funcName) == "function")
{
return true;
}
}
catch(e)
{}
return false;
}
//按顺序加载js文件
function min_loadJsFile(str_jsfile, func_succ, NoRandomFlag)
{
var domScript = document.createElement('script');
if (!NoRandomFlag)
{
// str_jsfile = str_jsfile + '?' + Math.random() * 10000;
// str_jsfile = str_jsfile + '?' + min_random(1, 10000000);
str_jsfile = str_jsfile + '?' + min_timestamp();
}
domScript.src = str_jsfile;
func_succ = func_succ || function(){};
domScript.onload = domScript.onreadystatechange = function() {
if (!this.readyState || 'loaded' === this.readyState || 'complete' === this.readyState) {
func_succ();
this.onload = this.onreadystatechange = null;
this.parentNode.removeChild(this);
}
}
document.getElementsByTagName('head')[0].appendChild(domScript);
}
//生成一个GUID
function min_guid()
{
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
return v.toString(16);});
}
//获取时间戳
function min_timestamp()
{
return new Date().getTime();
}
wnd.min_copyjson = min_copyjson; //复制json对象
wnd.min_jsontostr = min_jsontostr; //json转字符串
wnd.min_strtojson = min_strtojson; //字符串转json
wnd.min_inttostr = min_inttostr; //整型转字符型
wnd.min_strtoint = min_strtoint; //字符型转整型
wnd.min_div = min_div; //整除
wnd.min_mod = min_mod; //取余数
wnd.min_abs = min_abs; //取绝对值
wnd.min_random = min_random; //取随机数
wnd.min_random1 = min_random1; //取随机数1
wnd.min_randomChar = min_randomChar; //随机字符串
wnd.min_length = min_length; //取长度
wnd.min_replaceAll = min_replaceAll; //字符全替换
wnd.min_now = min_now; //取本地当前时间
wnd.min_guid = min_guid; //生成一个GUID
wnd.min_getQueryString = min_getQueryString; //取当前页面url中的参数值
wnd.min_getUrlRootPath = min_getUrlRootPath; //获取当前页面的路径
wnd.min_setCookie = min_setCookie; //设置cookie
wnd.min_getCookie = min_getCookie; //读取cookie
wnd.min_delCookie = min_delCookie; //删除cookie
wnd.min_getdom = min_getdom; //获取一个dom
wnd.min_setdom = min_setdom; //设置一个dom属性值
wnd.min_uphtml = min_uphtml; //添加一段innerHTML
wnd.min_ontime = min_ontime; //新建一个周期性的定时器
wnd.min_ontimeout = min_ontimeout; //新建一个一次性的定时器
wnd.min_closetime = min_closetime; //关闭定时器
wnd.min_writefile_gameid = min_writefile_gameid; //本地存储数据
wnd.min_readfile_gameid = min_readfile_gameid; //读取本地数据
wnd.min_encode = min_encode; //encodeURIComponent转码
wnd.min_decode = min_decode; //decodeURIComponent解码
wnd.min_tcp = min_tcp; //新建一个tcp连接
wnd.min_http = min_http; //http请求
wnd.min_ary_indexof = min_ary_indexof; //在数组中根据元素值查找下标
wnd.min_ary_delval = min_ary_delval; //在数组中根据值删除元素
wnd.min_ary_delfromto = min_ary_delfromto; //在数组中根据下标删除诺干个元素
wnd.min_ary_delobj = min_ary_delobj; //在数组中删除某一对象元素
wnd.min_ary_include = min_ary_include; //数组包含
wnd.min_ary_deduct = min_ary_deduct; //数组相减
wnd.min_ExitsFunction = min_ExitsFunction; //是否存在函数
wnd.min_loadJsFile = min_loadJsFile; //加载js文件
wnd.min_guid = min_guid; //生成一个GUID
wnd.min_timestamp = min_timestamp; //获取时间戳
})(window);

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,822 @@
var AppList = AppList||{};
var RouteList = RouteList||{};
var RpcList = RpcList||{};
//--------------AppList---------------
AppList.app = "youle";
//-----------RouteList-------------
RouteList.platform = "platform";
RouteList.agent="agent";
RouteList.room="room";
//----------------RpcList--------------
RpcList.player_login = "player_login";
RpcList.self_join_room = "self_join_room";
RpcList.create_room = "create_room";
RpcList.self_break_room = "self_break_room";
RpcList.other_break_room = "other_break_room";
RpcList.other_join_room = "other_join_room";
RpcList.self_exit_room = "self_exit_room";
RpcList.other_exit_room = "other_exit_room";
RpcList.self_apply_free_room = "self_apply_free_room";
RpcList.other_apply_free_room = "other_apply_free_room";
RpcList.self_agree_free_room = "self_agree_free_room";
RpcList.other_agree_free_room = "other_agree_free_room";
RpcList.self_refuse_free_room = "self_refuse_free_room";
RpcList.other_refuse_free_room = "other_refuse_free_room";
RpcList.free_room = "free_room";
RpcList.over_game = "over_game";
RpcList.get_player_grade1 = "get_player_grade1";
RpcList.get_player_grade2 = "get_player_grade2";
RpcList.update_roomcard = "update_roomcard";
RpcList.other_offline = "other_offline";
RpcList.other_online = "other_online";
RpcList.send_voice = "send_voice";
RpcList.play_voice = "play_voice";
RpcList.send_text = "send_text";
RpcList.receive_chat = "receive_chat";
RpcList.get_player_task = "get_player_task";
RpcList.player_finish_task = "player_finish_task";
RpcList.get_task_award = "get_task_award";
RpcList.can_award = "can_award";
RpcList.kick_offline = "kick_offline";
RpcList.call_phone = "call_phone";
RpcList.other_callphone = "other_callphone";
RpcList.hangup_phone = "hangup_phone";
RpcList.other_hangup = "other_hangup";
RpcList.self_makewar = "self_makewar";
RpcList.other_makewar = "other_makewar";
RpcList.agentserver_game="agentserver_game";
RpcList.send_gift="send_gift";
RpcList.other_send_gift="other_send_gift";
RpcList.send_voice="send_voice";
RpcList.play_voice="play_voice";
RpcList.connect_roomserver="connect_roomserver";
RpcList.connect_agentserver="connect_agentserver";
RpcList.broadcast="broadcast";
RpcList.send_phiz="send_phiz";
RpcList.submit_opinion = "submit_opinion";
RpcList.kick_server = "kick_server";
RpcList.get_paylist = "get_paylist";
RpcList.pay_succ = "pay_succ";
RpcList.submit_location = "submit_location";
RpcList.binding_invitecode = "binding_invitecode";
RpcList.update_bean = "update_bean";
RpcList.get_player_invitecode = "get_player_invitecode";
RpcList.beanroom_surrender = "beanroom_surrender";
RpcList.player_prepare = "player_prepare";
RpcList.share_room = "share_room";
RpcList.get_share_room = "get_share_room";
RpcList.quick_enter_share_room = "quick_enter_share_room";
RpcList.advanced_roomlist = "advanced_roomlist";
RpcList.advanced_createroom = "advanced_createroom";
RpcList.change_room = "change_room";
RpcList.change_seat = "change_seat";
RpcList.set_bankpwd = "set_bankpwd";
RpcList.binding_phone = "binding_phone";
RpcList.send_phone_checkcode = "send_phone_checkcode";
RpcList.send_phone_code_wechat = "send_phone_code_wechat";
RpcList.get_treasurelist = "get_treasurelist";
RpcList.change_star = "change_star";
RpcList.submit_phoneinfo = "submit_phoneinfo";
RpcList.update_charm = "update_charm";
RpcList.setSign = "setSign";
RpcList.switchRoomList = "switchRoomList";
RpcList.getInfoByShortCode = "getInfoByShortCode";
RpcList.optBanList = "optBanList";
RpcList.getShortCodeRankList = "getShortCodeRankList";
RpcList.setAllCharm = "setAllCharm";
RpcList.getVipRankList = "getVipRankList";
RpcList.playerBehavior = "playerBehavior";
RpcList.setVipForbidSelect = "setVipForbidSelect";
RpcList.topup_card = "topup_card";
RpcList.query_player2 = "query_player2";
RpcList.giveCoin = "giveCoin";
RpcList.getPlayerWhiteList = "getPlayerWhiteList";
RpcList.optWhiteList = "optWhiteList";
var h5RpcList={}
h5RpcList.joinRoom = "joinRoom";
//----------------------------end------------------------------
var ClickBtn = [3,5,7,13,14,15,10,11,12,25,17,9,47,51,53,55,58,59,76,60,61,74,75,80,115,183,150,151,153,181,201,202,183,184,185,205,206,207,208,209,210,211,212,166,167,168,169,170,124,127,130,
133,233,245,246,247,253,248,249,253,256,257,258,259,260,261,262,263,550,177,283,375,391,392,393,394,395,396,397,
398,399,400,401,402,403,366,367,386,464,234,345,483,484,493,509,512,513,514,515,519,520,521,568,569,570,571,572,579,
602,626,604,656,661,662,663,664,665,666,667,668,669,670,671,3000,3004,3007,3008,3009,3010,3011,3014,3016,3017,3018,3019,
3034,3035,3044,3045,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3057,3043,3038,3039,3067,3068,3087,3088,3089,3096,3075,3076,3097,3111,3120,92,93,97,
99,104,105,106,107,3133,3139,3140,3144,3145,3149,3155,3159,679,3182,3184,3175,3194,3195,3199,3214,3215,3205,3206,3210,
3203,3216,3217,3222,3231,3232,3233,3235,3240,3251,3253,3243,3244,3245,3255,3256,3258,3260,3264,3265,3266,3268,3269,3289,3281,3276,3274];
var C_PageOne = {
Tag:1,
X:1100,
Y:160,
H:80
};
var C_PageTwo = {
Tag:1,
X:1100,
Y:160,
H:80
};
var UnClickBtn = [8,50,225,227,228,229,699,161,162,164,165,370,426,427,428,429,430,431,432,433,434,435,446,447,448,449,450,451,452,453,454,455,468,469,470,471,472,473,474,475,476,477,498,499,500,501,
502,503,504,505,506,507,81,573,574,575,629,630,631,632,633,3056,3040,3058,3041,3061,3062,3071,3072,3069,3070,3090,3091,3092,3093,3094,3095,3098,3104,3108,3115,3116,3118,3119,
102,336,337,338,155,154,156,110,111,3127,3128,3141,3142,3146,3147,3151,3157,3099,3197,3212,3237,3246,3247,3248,3249,3250,3291,3280,3288,3283,3279,3292
];
var exceptSrc = [115,5,253,338,339,340,21,361,362,363,364,365,366,367,368,369,370,371,372,396];
var ConstVal=ConstVal||{};
ConstVal.Max = {
ShowChat:2000,
textlength:20,
headImgTimer:200,
heartbeat:30000
};
ConstVal.Tips={
width:30,
time:3000,
};
ConstVal.Kick={
text:"网络出现异常!",
tip:"(请重启游戏)"
};
ConstVal.screenShotParam = 0.7;
ConstVal.ShareTaskId="TJnueK1103Xgwj2o79xM2nvSe0WN6rzp";
ConstVal.iMessage={
text_y1:-60,
text_y2:25,
icon_x:20,
icon_y1:-65,
icon_y2:20,
close_x:1205,
close_y1:-60,
close_y2:25,
bg_y1:-85,
bg_y2:0,
time:500,
x1:85,
x2:1205,
y:0,
h:85,
speed:0.05,
max_length:60
};
ConstVal.Emotion = {
//动画帧间隔200
mode:1,//表情播放时间模式1->按帧数确定时间2->按照show_time_list确定
count:20,
f_spid:467,
tag:1,
rate:100,
col_num:4,//一行上的个数
spid_list:[528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547],//表情精灵列表序号对应
src_list:[147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166],//表情对应资源号
frame_list:[5,25,31,30,14,7,8,17,3,8,30,14,35,24,23,15,6,24,31,9],//表情对应帧数
show_time_list:[147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166],//表情播放时间
x:20,
y:20,
dis_x:20,
dis_y:20,
w:100,
h:100,
clip_x:0,
clip_y:0,
clip_h:0,
clip_w:0
}
ConstVal.Com_History = {
//动画帧间隔200
f_spid:696,
head_tag:1,
page_count:5,
text_width:12.5,
bubble_tag:10000,
content_tag:20000,
time_tag:30000,
time_length:[10,30,60,90,120,300],
bubble_width:[100,140,180,220,260,300,340],//气泡长度
head_res_id:116,
head_x:20,
head_y:30,
head_h:60,
head_dis_y:35,
time_bubble_dis_x:10,
head_bubble_dis_x:78,
bubble_content_dis_x:25,
head_bubble_dis_y:0,
head_content_1_dis_y:13,
head_content_2_dis_y:13,
time_bubble_dis_y:13,
clip_x:0,
clip_y:0,
clip_h:0,
clip_w:0
}
ConstVal.Task = {
f_spid:176,//父精灵
bg_spid:120,//背景精灵
task_des_spid:135,//任务描述精灵
reward_des_spid:307,//任务奖励描述
proc_bg_spid:311,//任务进度背景
proc_spid:315,//任务进度前景
proc_des_spid:319,//任务进度文字描述
get_reward_btn_spid:124,//领取任务按钮
isreward_spid:328,//已领取
tofinish_btn_spid:125,//去完成任务
//tag值
bg_tag:1,
task_des_tag:1000,
reward_des_tag:2000,
proc_bg_tag:3000,
proc_tag:4000,
proc_des_tag:5000,
get_reward_btn_tag:6000,
isreward_tag:7000,
tofinish_btn_tag:8000,
//位置
bg_x:0,
bg_y:0,
bg_w:0,//动态获取
bg_dis_x:0,
task_des_x:30,
task_des_y:30,
reward_des_y:265,
proc_bg_y:380,
proc_y:380,
proc_des_y:380,
get_reward_btn_y:368,
isreward_y:365,
tofinish_btn_y:330,
clip_x:110,
clip_y:170,
clip_w:0,
clip_h:0
}
ConstVal.Launch_mode={
name:"Launchtype",
from_hall:1,
from_self:0
};
ConstVal.OS = {//操作系统类型
apple:1,//苹果
android:2,//安卓
winphone:3,//windowsphone
other:4//其他
};
ConstVal.InterEffSoundsList = ["00001.mp3","00002.mp3","00003.mp3","00004.mp3"];
ConstVal.soudsSpidList = [235,13,5,6,7,9,339,11,12,14,15,249,10,376,377,378,379,380,381,382,383,384,385,150,153,151,283,181,513,233,185];
ConstVal.Broadcast = {
textwidth:18,
speed:0.1,
clip_x:0,
clip_y:0,
clip_w:0,
clip_h:0
};
ConstVal.Notice = {
replaceOldWord:"#",
replaceNewWord:"\n",
lineHeight:60,
textHeight:30,
textWidth:14,
clip_x:0,
clip_y:0,
clip_w:725,
clip_h:450,
img_clip_x:366,
img_clip_y:156,
img_clip_w:765,
img_clip_h:483,
};
ConstVal.payConfig = {
enablePay:false
};
ConstVal.loginButton = {
key:"loginimage",
type1:[1,22],//0->类型值 1->图片资源ID
type2:[2,203]
}
ConstVal.userAgent = {
paraName:"",
uAgent_1:1,
uAgent_2:2,
uAgent_3:3
};
ConstVal.worldRoom = {
f_sp_1:522,
f_sp_2:523,
bg_sp_1:524,
bg_sp_2:525,
top_sp_1:526,
top_sp_2:563,
des_sp_1:527,
des_sp_2:564,
starbg_sp_1:566,
starbg_sp_2:567,
star_sp_1:562,
star_sp_2:565,
mult_sp_1:3020,
mult_sp_2:3021,
join_sp_1:3022,
join_sp_2:3023,
pCount_sp_1:3024,
leave_sp_2:3025,
topImg_sp:96,
title_sp:3165,
multIcon_sp:94,
multImg_sp:95,
imgList:[361,362,363,364,365,366,367,368,369,370,371,372],
multIcon_y:100,
multImg_y:119,
topImg_y:25,
multImgWidth:25,
multIconImgSpace:20,
pCountIcon_sp_2:3026,
pCount_sp_2:3027,
roomCode_sp_2:3028,
bg_sp_tag_1:1,
top_sp_tag_1:2000,
des_sp_tag_1:4000,
starbg_sp_tag_1:6000,
star_sp_tag_1:8000,
mult_sp_tag_1:10000,
pCount_sp_tag_1:12000,
join_sp_tag_1:14000,
multIcon_tag:16000,
multImg_tag:18000,
topImg_tag:20000,
bg_sp_tag_2:1,
top_sp_tag_2:2000,
des_sp_tag_2:4000,
starbg_sp_tag_2:6000,
star_sp_tag_2:8000,
mult_sp_tag_2:10000,
leave_sp_tag_2:12000,
roomCode_sp_tag_2:14000,
pCountIcon_sp_tag_2:16000,
join_sp_tag_2:18000,
pCount_sp_tag_2:20000,
title_tag:40000,
clip_x_1:0,
clip_x_2:0,
clip_y_1:0,
clip_y_2:0,
clip_w_1:1050,
clip_w_2:1150,
clip_h_1:512,
clip_h_2:465,
bg_sp_x_1:0,
bg_sp_x_2:0,
bg_sp_y_1:0,
bg_sp_y_2:0,
//bg_sp_y_2:43,
bg_sp_space_1:6,
bg_sp_space_2:15,
top_sp_x_1:25,
top_sp_x_2:25,
top_sp_y_1:35,
top_sp_y_2:20,
top_sp_width_1:20,
top_sp_width_2:13,
top_sp_space_1:6,
top_sp_space_2:6,
des_sp_x_1:25,
des_sp_x_2:30,
title_sp_x:20,
title_sp_y:3,
des_sp_y_1:80,
des_sp_y_2:45,
des_sp_width_1:11,
des_sp_width_2:11,
des_sp_space_1:6,
des_sp_space_2:6,
//mult_sp_x_1:10000,
pCount_sp_x_1:80,
join_sp_x_1:302,//靠右显示
mult_sp_y_1:74,
pCount_sp_y_1:193,
join_sp_y_1:193,
mult_sp_x_2:30,
roomCode_sp_x_2:775,
pCountIcon_sp_x_2:170,
join_sp_x_2:700,//靠右显示
leave_sp_x_2:700,//靠右显示
pCountIcon_pCount_space_2:10,
pCount_space_2:8,
//mult_sp_y_2:72,
//roomCode_sp_y_2:25,
//pCountIcon_sp_y_2:76,
//join_sp_y_2:72,
//leave_sp_y_2:23,
//pCount_sp_y_2:81,
mult_sp_y_2:92,
roomCode_sp_y_2:45,
pCountIcon_sp_y_2:96,
join_sp_y_2:92,
leave_sp_y_2:45,
pCount_sp_y_2:101,
starbg_sp_x_1:35,
starbg_sp_x_2:35,
starbg_sp_y_1:182,
starbg_sp_y_2:182,
starbg_sp_space_1:6,
starbg_sp_space_2:6,
star_sp_x_1:35,
star_sp_x_2:35,
star_sp_y_1:189,
star_sp_y_2:189,
star_sp_space_1:6,
star_sp_space_2:6,
mult_sp_w_1:13,
join_sp_w_1:10,
join_sp_w_2:12,
leave_sp_w_2:12,
mult_sp_w_2:13,
roomCode_sp_w_2:16,
bgSpaceX:438,
bgSpaceY:250,
};
ConstVal.snrRoomList ={
f_spid:611,
bg_spid:622,
rcode_bg_spid:623,
rcode_spid:624,
close_spid:625,
update_spid:626,
switch_spid:627,
info_spid:600,
profit_spid:601,
video_spid:3138,
bg_tag:1,
rcode_bg_tag:200,
rcode_tag:400,
close_tag:600,
update_tag:800,
switch_tag:1000,
info_tag:1200,
profit_tag:1400,
video_tag:1600,
clip_x:0,
clip_y:0,
clip_w:900,
clip_h:0,
bg_x:15,
rcode_bg_x:33,
rcode_x:35,
close_x:70,
update_x:20,
switch_x:150,
info_x:35,
profit_x:150,
video_x:420,
bg_y:10,
rcode_bg_y:260,
rcode_y:28,
close_y:260,
update_y:90,
switch_y:90,
info_y:80,
profit_y:25,
video_y:20,
profit_w:12,
bg_space:5,
rcode_bg_space:35,
rcode_space:50,
close_space:300,
update_space:400,
switch_space:500,
bksp:3137,
};
ConstVal.rankList ={
f_spid:609,
bg_spid:610,
badge_spid:629,
headimg_spid:630,
headfront_spid:631,
name_spid:632,
star_spid:633,
bg_tag:1,
badge_tag:100,
headimg_tag:200,
headfront_tag:300,
name_tag:400,
star_tag:500,
clip_x:0,
clip_y:0,
clip_w:0,
clip_h:511,
bg_x:0,
badge_x:-20,
headimg_x:93,
headfront_x:85,
name_x:190,
star_x:190,
bg_y:0,
badge_y:-5,
headimg_y:12,
headfront_y:5,
name_y:8,
star_y:42,
space:13,
headsrc:262
};
ConstVal.MenuScene = {
createBtn_1:[780,182],//有星星场
joinBtn_1:[780,320],
starBtn:[780,458],
createBtn_2:[780,230],
joinBtn_2:[780,405]
};
//仓库
ConstVal.wareHouse = {
tableBgX:[41,33],
tableTextX:[57,51],
passWordLength:6,
};
ConstVal.sysNotice = {
f_spid:3109,
bubble_spid:163,
msg_spid:3110,
msg_width:11,
msg_tag:50000,
msg_rOld:"#",
msg_rNew:"\n",
lineHeight:25,
limit:10000,
bubble_tag:1,
x:20,
y:20,
spaceX:40,
spaceY:40,
bm_space_x:20,
bm_space_y:35,
lineSpace:30,// 行距
noteSpace:40,//每条的距离
clip_x:0,
clip_y:0,
clip_h:0,
clip_w:0
}
ConstVal.starConfig = {
resList:[214,214],
}
ConstVal.Animation = {
time1:1200,
time2:2000,
fundTime:5230,
deltaTime:1000,
};
ConstVal.myRoomList ={
maxLength:5,
fSpid:98,
bgSp:100,
roomCodeSp:102,
bgTag:1,
roomCodeTag:100,
placeX:0,
placeY:95,
bgX:8,
bgY:55,
space:5,
rCodeX:140,
rCodeY:85,
//clip_x:8,
//clip_y:160,
//clip_w:265,
//clip_h:450,
roomCodeWidth:14,
}
ConstVal.netType = 0;
ConstVal.isGameHall = false;
ConstVal.vipRoomList1 = {
f_spid:3172,
bg_spid:3176,
title_spid:3177,
code_spid:3178,
owner_spid:3179,
count_spid:3180,
del_spid:3181,
des_spid:3189,
enter_spid:3192,
bg_tag:1,
title_tag:1000,
code_tag:2000,
owner_tag:3000,
count_tag:4000,
des_tag:5000,
del_tag:6000,
enter_tag:7000,
clip_x:0,
clip_y:0,
clip_w:0,
clip_h:460,
space:199,
title_x:20,
code_x:70,
des_x:25,
owner_x:270,
count_x:525,
del_x:583,
enter_x:514,
title_y:3,
code_y:148,
des_y:50,
owner_y:146,
count_y:146,
del_y:0,
enter_y:42,
}
ConstVal.vipRoomList2 = {
f_spid:3185,
bg_spid:3186,
code_spid:3187,
count_spid:3188,
bg_tag:1,
code_tag:1000,
count_tag:2000,
clip_x:0,
clip_y:0,
clip_w:0,
clip_h:460,
spaceX:285,
spaceY:145,
code_x:56,
count_x:50,
code_y:25,
count_y:65,
countW:12,
}
ConstVal.blackList = {
f_spid:3204,
bg_spid:3207,
id_spid:3209,
del_spid:3208,
bg_tag:1,
id_tag:10000,
del_tag:20000,
clip_x:0,
clip_y:0,
clip_w:0,
clip_h:0,
id_x:25,
del_x:330,
id_y:12,
del_y:4,
space:8,
};
ConstVal.vipRank = {
f_spid:3227,
bg_spid:3223,
txt_spid:3229,
rank_spid:3228,
score_spid:3230,
bg_tag:1,
txt_tag:10000,
rank_tag:20000,
score_tag:30000,
clip_x:0,
clip_y:0,
clip_w:0,
clip_h:0,
txt_x:70,
rank_x:0,
score_x:230,
txt_y:10,
rank_y:4,
score_y:10,
rank_space:10,
space:8,
rank_w:25,
};
ConstVal.whiteList = {
f_spid:3272,
bg_spid:3277,
id_spid:3279,
del_spid:3278,
charm_spid:3292,
bg_tag:1,
id_tag:10000,
del_tag:20000,
charm_tag:30000,
clip_x:0,
clip_y:0,
clip_w:0,
clip_h:0,
id_x:25,
del_x:450,
charm_x:200,
id_y:12,
del_y:4,
charm_y:12,
space:8,
};

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,582 @@
/*var returnCitySN = {"cip": "171.34.213.118", "cid": "360000", "cname": "江西省"}*/
var C_Player;
var InfoSex=0;
var arrBan=[];
var RoomCode = "";
var RoomNum = -1;
var CombatCount = 0;
var CombatPage = 0;//战绩页码
var CombatPageTwoIndex = 0;//大局标号
var CombatPageThreeIndex = 0;//小局标号
var CombatInfo = [];//战绩详情
var C_PageOneBtn = [];//战绩页一按钮id
var C_PageTwoBtn = [];//战绩页二按钮id
var CombatBackHeight = 0;//战绩背景高度
var TaskInfo = [];//任务详情
var VoteTime=0;//投票倒计时秒
var GameData=GameData||{};
GameData.HallServer="";
GameData.Server="";
GameData.AjaxUrl="";
GameData.scrollmsg="";
GameData.wechat_gzh="";
GameData.wechat_kfh="";
GameData.qq = "";
GameData.tel = "";
GameData.gzhcolor1 = "";
GameData.gzhcolor2 = "";
GameData.telcolor = "";
GameData.errorMsg = null;
GameData.tcpConnect=true;
GameData.tcpConnectState = false;
GameData.TimerID=0;
GameData.TimerID_2=0;
GameData.timer=10000;
GameData.time_2=15000;
GameData.NetType=0;//是否为首次连接
GameData.Protocol_H=1;
GameData.ProtocolIndex=true;
GameData.isLoad=true;
GameData.LoadCount=0;
GameData.Timesup=false;
GameData.InteractPlayer = -1;
GameData.isCallback=false;
GameData.isBoard=true;
GameData.ConnectType=false;//1->更换服务器不需要重连
GameData.ConnectRpc="";//更换服务器成功后发包的RPC
GameData.ConnectPack={};//更换服务器成功后发包数据
GameData.Battery = 0;//电量
GameData.NetWork = 0;//网络情况1 未连接网络 2 连接wifi 3 连接2G/3G/4G
GameData.WifiLevel = 0;//WiFi强度
GameData.wechat_ewm = "";//二维码
GameData.appstate=true;//true程序前台运行false程序后台运行
GameData.OS = ConstVal.OS.other;//1->IOS 2->Android 3->wp 4->other
GameData.isLogin = false;//是否已登录
GameData.leaveTime=0;//
GameData.disType = false;
GameData.reconnectTimer=0;
GameData.isClose = false;
GameData.isCloseTimer = null;
GameData.firstConnect = true;//第一次连接
GameData.firstConnect_Succ = false;//第一次连接成功
GameData.firstConnect_Timer = null;//第一次连接定时器
GameData.loginTimer = null;
GameData.tryTimes = 0;//链接尝试次数
GameData.isReconnect = false;
GameData.isCreateEmotion = false;
GameData.ChatPage = 1;
GameData.slidEmotion = false;
GameData.communionHistory=[];//聊天历史//二维数组[[方位类型1-文字2语音内容,时长]]
GameData.createHistoryLen = 0;//以创建的精灵的长度
GameData.slideHistory = false;
GameData.TcpTimer = null;//tcp连接失败判断定时器
GameData.slideTask = false;//是否滑动任务
GameData.copyTaskTagList = [];//任务复制精灵tag列表
GameData.versionState = 0;//苹果审核结果
GameData.visitorserver = "";//游客服务器地址
GameData.isVisitor = false;
GameData.shakeID = 0;//摇一摇事件ID
GameData.isRecord = false;
GameData.LaunchMode = ConstVal.Launch_mode.from_self;
GameData.Multiple = "";
GameData.OrgArr=[];
GameData.MultiArr = [];
GameData.isFirstLogin = true;//是否是第一次登陆
GameData.payList = null;
GameData.payData = [0,0];
GameData.visitorClick = 0;
GameData.Scene = 0;
GameData.urlFail = false;
GameData.BroadcastArray = [];
GameData.isBoardcast = false;
GameData.tcpState = [0,0];
GameData.Notice ={
heigth:0,
lineSum:0,
width:0
}
GameData.marketID = 0;
GameData.getJSONState = false;//JSON获取成功状态
GameData.Config = null;//服务器配置json
GameData.AgentLoginImg = "";//代理商图片
GameData.TopUpUrl = "";//索要房卡地址
GameData.tryConnect = false;
GameData.hallConfigName = ["enablePay",
"logoffCallback",//不通知
'worldRoomList',//星星争霸是否可用
'max:',
'min',
'unit',
'shareMsg',
'autoWorldRoomList',//是否自动弹出星星争霸场
'rankList',//是否显示排行榜按钮1模拟排行2真实排行
'groupMsg',//试玩群信息
'isReSetOwnerNote',//是否替换签名
'activity',//是否显示活动如果显示则为[x,y,w,h/*,isOpen,btnUrl,url,actid*/]
'actData:',//常驻活动按钮 [imgUrl,isOpen,jumpUrl,actUrl]
'shareButton:',//是否显示分享到平台
'enableQuickEnter',//是否隐藏快速加入
'storeUrl',//商城url
'bagUrl',//背包url
'shareDesc',//平台分享描述信息
'wareHouse',//是否开启仓库功能0->不开启1->开启保险箱不开启赠送2->开启赠送不开启保险箱3->开启星星赠送(开启保险箱)4->开启房卡赠送(开启保险箱)5->开启星星房卡赠送(开启保险箱)
'betaText',//版本号后的beta显示内容
'launchImgUrl',//启动页图片地址
'shareType:',//分享朋友圈类型0->链接分享 1->图片分享
'shareImgUrl',//分享朋友圈图片链接
'launchWaitTime',//启动等待时间
'shareBgUrl',//分享背景图片
'qqLogin',//是否显示qq登录
'androidPay',//是否开启安卓支付
'channelKey',//支付key
'payCSS',//支付css
'payJS',//支付js
'openVideo'
];//是否开启视频];
GameData.hallConfig = {
enablePay:0,
logoffCallback:0,//不通知
worldRoomList:0,//星星争霸是否可用
max:100,
min:0,
unit:1,
shareMsg:"",
autoWorldRoomList:0,//是否自动弹出星星争霸场
rankList:0,//是否显示排行榜按钮1模拟排行2真实排行
groupMsg:"",//试玩群信息
isReSetOwnerNote:0,//是否替换签名
activity:0,//是否显示活动如果显示则为[x,y,w,h/*,isOpen,btnUrl,url,actid*/]
actData:0,//常驻活动按钮 [imgUrl,isOpen,jumpUrl,actUrl]
shareButton:1,//是否显示分享到平台
enableQuickEnter:1,//是否隐藏快速加入
storeUrl:"",//商城url
bagUrl:"",//背包url
shareDesc:"",//平台分享描述信息
wareHouse:0,//是否开启仓库功能0->不开启1->开启保险箱不开启赠送2->开启赠送不开启保险箱3->开启星星赠送(开启保险箱)4->开启房卡赠送(开启保险箱)5->开启星星房卡赠送(开启保险箱)
betaText:"",//版本号后的beta显示内容
launchImgUrl:"",//启动页图片地址
shareType:0,//分享朋友圈类型0->链接分享 1->图片分享
shareImgUrl:"",//分享朋友圈图片链接
launchWaitTime:10,//启动等待时间
shareBgUrl:"",//分享背景图片
qqLogin:0,//是否显示qq登录
androidPay:0,//是否开启安卓支付
channelKey:"",//支付key
payCSS:"",//支付css
payJS:"",//支付js
openVideo:0,//是否开启视频
};
GameData.starName = "星星";
GameData.roomCardName = "房卡";
GameData.gameConfig = {};
GameData.playerHeadImgState = false;//玩家主界面头像加载状态
GameData.matchhtml = "";//比赛链接地址
GameData.Validator = null;
GameData.loginBtnType = ConstVal.loginButton.type1[0];//登录按钮样式
GameData.netWorkSate = false;
GameData.heartBeatTimer = null;//心跳事件定时器ID
GameData.heartBeatStage = false;//提示框是否处于心跳提示事件
GameData.telSpid = 179;//拨打电话精灵号
GameData.matchInfo = null;//比赛场信息
GameData.agentmode = 1;//邀请码模式
GameData.infMode = 0;//是否为无限局
GameData.infClickCount = 0;//点击次数
GameData.checkType = 1;//确认面板事件类型 1->解散房间 2->退出房间 3->投降
GameData.roomList = [];//房间列表
GameData.sendLoginTimer = null;//发送重连登录包定时器
GameData.loginList = [];//
GameData.isConnected = false;
GameData.isSendLoginState = false;//是否在等待登录包
GameData.isSendLoginTimer = null;//登录包收包定时器
GameData.isTcpConnect = false;//是否在连接状态
GameData.TcpID = 0;//tcpid
GameData.websocketList=[];
GameData.pack="";
GameData.infoSeat = -1;
GameData.sendLoginTimes = 0;
GameData.backUrl = "";
GameData.playerid = "";
GameData.serverConfig = {};
GameData.userAgent = ConstVal.userAgent.uAgent_1;
GameData.getbattery = "";
GameData.getbatteryPack = {};
GameData.getnetwork = "";
GameData.getnetworkPack = {};
GameData.getVersionState = "";
GameData.getVersionStatePack = {};
GameData.getchannelName = "";
GameData.getchannelNamePack = {};
GameData.getmarketname = "";
GameData.getmarketnamePack = {};
GameData.gamepastetext = "";
GameData.gamepastetextPack = {};
GameData.worldRoomSys=[];
//玩家房间数据
GameData.worldRoomPly=[];
GameData.worldRoomSysSlide = false;
GameData.worldRoomPlySlide = false;
GameData.menuNotice = null;
GameData.advertInfo_1 = {
type:0,//是否使用默认的文字通知
imgUrl:"",//图片地址
imgAdUrl:"",//图片跳转链接地址
height:1,//图片高度
msg:"",
url:"",
};
GameData.advertInfo_2 = {
type:0,
imgUrl:"",
imgAdUrl:"",
height:1,
msg:"",
url:"",
};
GameData.advertInfo_0 = {
type:0,
imgUrl:"",
imgAdUrl:"",
height:1,
msg:"",
url:"",
};
GameData.noticePage = 0;
GameData.noticePara = [[0,0],[0,0],[0,0]];
GameData.snrOption = {
profit:0,
roomcode:"",
};
GameData.snrRoomList = {
roomlist:[],
roomtype:[],
tea:1000,
shortcode:888
};
GameData.snrRoomListSlide = false;
GameData.snrOptionLength = 0;
GameData.snrOptionRoomTag = 0;
GameData.snrOptionMode = 0;
GameData.snrOptionRoomtype = "";
GameData.snrOptionDes = "";
GameData.snrOptionProfit=0;
GameData.shortCode = "";
GameData.isShowWorldRoomList = true;
GameData.shareMsg = "";
GameData.rankList = [];
GameData.rankListTag = 0;
GameData.ranListLength = 0;
GameData.rankListSlide = false;
GameData.h5Version = 0;
//
var shareParam = {
appid: "14936872341446",
devkey: "14915485974028"
}
GameData.shareTimeline = {//朋友圈
title: "",
desc: "",
link: "",
imgUrl: ""
}
GameData.shareAppMessage = {//好友
title: "",
desc: "",
link: "",
imgUrl: ""
}
GameData.gameData = "";
GameData.fromH5GameData = {};
GameData.isJoinRoomFromH5 = false;
GameData.h5ShareImage = "";
GameData.screenShotStage = 0;
GameData.screenShotSpidList = [];
GameData.ownerNote = "";
GameData.isDebugger = 0;
GameData.returnUrl = "";
GameData.configData = "";
GameData.h5ShareUrl = "";
GameData.inputPanelData = "";
GameData.inputCallBack = null;
GameData.isShowNeighbor = true;
GameData.nameImgFrame_1 = 1;//房卡图片帧数
GameData.nameImgFrame_2 = 1;//星星图片帧数
GameData.surrendCount = 0;
GameData.htmlCode = "";
GameData.htmlId = "";
GameData.serverIndex = 0;//连接地址下标
GameData.tryReconnectTimes = 0;
GameData.isChangeServer = false;
GameData.shareFrom = 0;//0->框架分享 1->游戏分享
GameData.activityType = 0;//子游戏调用类型
GameData.activityData = null;//子游戏调用类型
GameData.shareTimes = 0;//分享次数
GameData.sharePostUrl = "http://localhost:4477/testurl";//截图分享链接
//保险箱
GameData.wareHouse = {
page:1,//当前页
safeInputType:1,//保险箱存入取出类型
safeInputCount:-1,//保险箱存入取出数量
safePassWord:-1,//保险箱存入取出密码
inputNumber:0,//输入的数字
selectType:1,//选择的当前输入框
initPassWord1:-1,//初始化密码
initPassWord2:-1,//确认初始化密码
pId:0,//赠送id
pImg:"",//赠送头像
pNickName:"",//赠送昵称
pInputType:1,//赠送类型
pInputId:-1,//输入id
pInputCount:-1,//赠送数量
pInputPassWord:-1,//赠送密码
};
GameData.openVideo = 0;//是否开启视频功能
GameData.imgAdIsSlide = false;
GameData.launchImgLoaded = false;//启动页图片是否从网络加载完成
GameData.configSuccess = false;//配置文件读取成功
GameData.launchWaitTime = 0;
GameData.adTimer = null;
GameData.sysNotice = [];//系统公告 {msg:"",read:false,line:1}
GameData.sysCreateLength = 0;
GameData.selectSysNotice = false;//是否勾选发送系统公告
GameData.sysNoticeCost = 0;
GameData.sysNoticeLimit = 0;
GameData.mainMenuAniTimer = null;
GameData.worldRoomPage = 0;
GameData.createMyRoomListLength = 0;
GameData.starCount = 0;
GameData.roomCardCount=0;
GameData.loginPlayerid = false;//登录是否带上playerid
GameData.matchId = null;
GameData.chatLine = null;
GameData.chatInfo = null;
GameData.isService = false;
GameData.submitLocation = false;
GameData.submitPhoneInfo = false;
GameData.submitAddressBook = false;
GameData.getConfigTimer = null;
GameData.clickChat = 0;
GameData.phoneInfo = null;
GameData.addressBook = null;
//GameData.sysConfigName=[];
GameData.sysConfigName=["hideEscape","charmName","hideTaskBtn","miniPro","videoConfig","ofcShortCode","ofcTips","ofcWx","ofcImg",
"managerUrl","rebateConfig","gameNoticeShow","hallNoticeShow","ofcAutoEnter","vipFlushTime","vipWx","h5PayUrl","appShareH5",
"vipRankLimit","behaviorList","deviceLogin","hideWxShare","hideRoomCard","hideSpid","cdKey","otherShare","avatarRange","avatarUrl","whiteListManager","nnLocal"];
GameData.sysConfig={
hideEscape:0,
charmName:"魅力",
hideTaskBtn:0,//是否隐藏任务按钮
miniPro:0,//是否小程序/小游戏 (隐藏更多选项、分享朋友圈、聊天按钮、录音调整)
videoConfig:null,//{type:1,profitMode:1,profit:3}
ofcShortCode:null,//官方短号
ofcImg:"",//官方按钮链接
managerUrl:"",//管理后台地址
rebateConfig:null,//抽成配置
gameNoticeShow:0,//子游戏弹窗时间间隔 0每次都弹 -1不弹
hallNoticeShow:0,//大厅弹窗时间间隔 0每次都弹 -1不弹
ofcAutoEnter:0,//是否自动进入官方短号
vipFlushTime:10000,//vip房间列表刷新间隔
vipWx:"",//成为vip联系微信
h5PayUrl:"",//h5支付地址
appShareH5:"",//app分享的h5地址
vipRankLimit:10,//vip排行显示个数
behaviorList:null,//用户行为
deviceLogin:0,//是否显示设备登录显示了设备登录就会显示手机号登录就会隐藏微信登录
hideWxShare:0,//是否隐藏微信分享
hideRoomCard:1,//隐藏主界面房卡 1 不隐藏 2隐藏
hideSpid:null,//隐藏的精灵id
cdKey:1,//是否显示CDKEY 1不显示 2显示
otherShare:1,//开启新分享 1 关闭2开启
avatarRange:[100,10000],//设备登录的头像列表
avatarUrl:"https://projectimage.tscce.cn/image_132/",
whiteListManager:2, //是否开启在游戏中管理白名单
nnLocal:2,//
};
GameData.inputCallBack2 = null;
GameData.topInfoTimer = null;
GameData.iscloseVideo = true;//是否开战关闭视频
GameData.textCallback = null;
GameData.isLocation = false;
GameData.otherLocation = false;//
GameData.otherLocationTimes = 0;
GameData.otherLocationAllTimes = 1;
GameData.hallLogin = true;
GameData.senRoomState = 0;
GameData.rebateConfig = null;
GameData.vipRoomPage = 0;
GameData.vipRoomCode = 0;
GameData.vipRoomData = [];
GameData.vipRoomTimer1 = false;
GameData.vipRoomIsOpen = false;
GameData.vipRoomShortList = [];
GameData.vipRoomJump = false;
GameData.vipRoomPageOne = {
cLength:0,
slide:false,
}
GameData.vipRoomPageTwo = {
cLength:0,
slide:false,
data:null,
}
GameData.tipTimer1 = null;
GameData.tipTimer2 = null;
GameData.initCard = 0;
GameData.initBean = 0;
GameData.brNumber=0;
GameData.isKick = false;
GameData.blackList = {
data:[],
length:0,
breakRoom:false,
selectTag:0,
slide:false,
inputId:"",
idWidth:12,
}
GameData.allCharm = 0;
GameData.vipRank = {
data:{
rankList:[],
myRank:1,
myScore:100
},
length:0,
//selectTag:0,
slide:false,
//inputId:"",
//idWidth:12,
}
GameData.rankType = false;
GameData.coinMp3Time = 0;
GameData.coinMp3Length = 3000;
GameData.brRebateUnit = 10000;
GameData.phoneCodeTime = 0;
GameData.phoneCode = "";
GameData.phoneNumber = "";
GameData.phoneType = 0;
GameData.isGetPhoneInfo = false;
GameData.isDeviceLogin = false;
GameData.begin0 = false;
GameData.vipConfig = null;
GameData.feedMode = 0;
GameData.fromMiniProData = {};
GameData.shareFriendInfo = {};
GameData.deviceAvatarList = [];
GameData.whiteList = {
data:[],
length:0,
breakRoom:false,
selectTag:0,
slide:false,
inputId:"",
inputCharm:"",
searchId:"",
idWidth:12,
delPid:"",
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,553 @@
function Player(seat){
this.openid = "";//id
this.playerid = -1;//playerid
this.nickname = "";//昵称
this.avatar = "";//头像地址
this.sex = 0;//性别
this.ip = "";//ip地址
this.province = "";//微信信息省份
this.city = "";//微信信息城市
this.roomcard = -1;//房卡数量
this.taskstate = 0;//任务状态
this.unionid = 0;//平台唯一表示
this.seat = seat; //座位号
this.score = 0;
this.state = -1;//玩家状态0->默认值 -1->申请解散 1->同意解散 2->拒绝解散
this.status = 0;//0->默认值 1->房主 2->非房主
//this.offline = 0;//玩家是否离线0->否 1->离线
this.canexit=1;//是否可以直接离开
this.onstate=0;//0:在线1:离线2:通话中
this.addr = null;
this.invitecode = "";//邀请码
this.isStart = false;//能否点击按钮开始游戏
this.bean = 0;//玩家豆子数量
this.initialBean = 0;//玩家豆子初始值
this.isprepare = 0;//玩家是否准备
this.advanced = 0;//玩家是否有高级选项
this.paycode = "";//吱口令
this.wareHouseStarCount = 0;//仓库库存星星
this.bankpower = 0;//是否有仓库权限
this.bankpwd = 0;//是否设置仓库密码
this.charm = undefined;
this.sign = "";//签名
this.tel = "";//绑定手机号
}
//玩家信息初始化
if(typeof(Player.prototype.Init) == "undefined"){
Player.prototype.Init = function(bTemp){
this.openid = "";//id
this.playerid = -1;//playerid
this.nickname = "";//昵称
this.score = 0;
this.avatar = "";//头像地址
this.sex = 0;//性别
this.ip = "";//ip地址
this.province = "";//省份
this.city = "";//城市
this.roomcard = 0;//房卡数量
this.taskstate = 0;//任务状态
this.unionid = 0;//平台唯一表示
if(bTemp)this.seat = -1; //座位号
this.state = -1;//玩家状态0->默认值 1->申请解散 2->同意解散 3->拒绝解散
this.status = 0;//0->默认值 1->房主 2->非房主
this.offline = 0;//玩家是否离线0->否 1->离线
this.canexit=1;//是否可以直接离开
this.onstate=0;//0:在线1:离线2:通话中
this.addr = null;
this.invitecode = "";//邀请码
this.isStart = false;//能否点击按钮开始游戏
this.bean = 0;//玩家豆子数量
this.initialBean = 0;//玩家豆子初始值
this.isprepare = 0;//玩家是否准备
this.advanced = 0;//玩家是否有高级选项
this.paycode = "";//吱口令
this.wareHouseStarCount = 0;//仓库库存星星
this.bankpower = 0;//是否有仓库权限
this.bankpwd = 0;//是否设置仓库密码
this.charm = undefined;
this.sign = "";//签名
this.tel = "";//绑定手机号
};
}
//玩家微信信息初始化
if(typeof(Player.prototype.SetWxInfo) == "undefined"){
Player.prototype.SetWxInfo = function(openid,headimgurl,nickname,sex,city,Province,unionid){
this.openid = openid;//id
this.nickname = nickname;//昵称
this.avatar = headimgurl;//头像地址
this.sex = sex;//性别
this.city = city;//城市
this.province = Province;//省
this.unionid=unionid;//开放平台id
//alert("设置玩家信息");
};
}
//玩家游戏信息初始化
if(typeof(Player.prototype.SetMyInfo) == "undefined"){
//Player.prototype.SetMyInfo = function(_playerid,_roomcard,_taskstate,_ip,_score,_bean,_paycode){
Player.prototype.SetMyInfo = function(object){
this.playerid = object.playerid;
this.roomcard = object.roomcard;
this.taskstate = object.taskstate;
this.ip=object.ip;
this.score = object.score;
this.bean = object.bean;
this.initialBean = object.bean;
this.bankpower = object.bankpower;
if(object.bank){
this.wareHouseStarCount = Number(object.bank);//仓库库存星星
}else{
this.wareHouseStarCount = 0;
}
if(object.bankpwd){
this.bankpwd = Number(object.bankpwd);//仓库库存星星
}else{
this.bankpwd = 0;
}
this.charm = object.charm;
this.sign = object.sign;
this.tel = object.tel;
//this.setTel();
//this.bankpwd = object.bank;//是否设置仓库密码 this.bankpwd = 0;//是否设置仓库密码
//this.paycode = _paycode;
};
}
//设置玩家位置
if(typeof(Player.prototype.SetLocationInfo) == "undefined"){
Player.prototype.SetLocationInfo = function(_locationinfo){
this.addr = _locationinfo;
set_self(200,7,C_Player.addr.province+"-"+C_Player.addr.city,0,0);
};
}
//设置玩家座位
if(typeof(Player.prototype.SetSeat) == "undefined"){
Player.prototype.SetSeat = function(seat){
this.seat = seat;
};
}
//设置玩家邀请码
if(typeof(Player.prototype.setInvitecod) == "undefined"){
Player.prototype.setInvitecod = function(_invitecode){
this.invitecode = _invitecode;
};
}
//修改房卡
if(typeof(Player.prototype.UpdateRoomcard) == "undefined"){
Player.prototype.UpdateRoomcard = function(_msg){
this.roomcard = _msg.data.roomcard;
//set_self(157,7,C_Player.roomcard,0,0);
//set_self(157,18,get_self(287,18,0,0,0)+get_self(287,20,0,0,0)/2-String(C_Player.roomcard).length*7,0,0);
GameUI.setHallRoomCard();
if(_msg.data.text){
GameUI.Openupdataroomcard(_msg.data.text);
}
};
}
//修改豆豆
if(typeof(Player.prototype.update_bean) == "undefined"){
Player.prototype.update_bean = function(_msg){
this.bean = _msg.data.bean;
GameUI.setHallStar();
//set_self(497,7,C_Player.bean,0,0);
//set_self(497,18,get_self(496,18,0,0,0)+get_self(496,20,0,0,0)/2-String(C_Player.bean).length*7,0,0);
set_self(510,7,GameData.starName+""+C_Player.bean,0,0);
GameUI.openUpdateBean(_msg.data.text);
if(C_Player.seat>-1){//在房间内
var pobj = Desk.GetPlayerBySeat(C_Player.seat);
pobj.bean = C_Player.bean;
pobj = null;
if(C_Player.seat == GameData.infoSeat){
set_self(511,7,GameData.starName+""+C_Player.bean,0,0);
}
}
};
}
//修改豆豆
if(typeof(Player.prototype.update_bean2) == "undefined"){
Player.prototype.update_bean2 = function(_bean){
this.bean = _bean;
GameUI.setHallStar();
//set_self(497,7,C_Player.bean,0,0);
//set_self(497,18,get_self(496,18,0,0,0)+get_self(496,20,0,0,0)/2-String(C_Player.bean).length*7,0,0);
set_self(510,7,GameData.starName+""+C_Player.bean,0,0);
if(C_Player.seat>-1){//在房间内
var pobj = Desk.GetPlayerBySeat(C_Player.seat);
pobj.bean = C_Player.bean;
pobj = null;
if(C_Player.seat == GameData.infoSeat){
set_self(511,7,GameData.starName+""+C_Player.bean,0,0);
}
}
};
}
//修改豆豆
if(typeof(Player.prototype.changeBean) == "undefined"){
Player.prototype.changeBean = function(_bean){
this.bean = this.initialBean + _bean;
GameUI.setHallStar();
//set_self(497,7,C_Player.bean,0,0);
//set_self(497,18,get_self(496,18,0,0,0)+get_self(496,20,0,0,0)/2-String(C_Player.bean).length*7,0,0);
set_self(510,7,GameData.starName+""+C_Player.bean,0,0);
if(C_Player.seat>-1){//在房间内
var pobj = Desk.GetPlayerBySeat(C_Player.seat);
pobj.bean = C_Player.bean;
pobj = null;
if(C_Player.seat == GameData.infoSeat){
set_self(511,7,GameData.starName+""+C_Player.bean,0,0);
}
}
};
}
//设置房卡
if(typeof(Player.prototype.setRoomcard) == "undefined"){
Player.prototype.setRoomcard = function(_roomcard){
this.roomcard = _roomcard;
GameUI.setHallRoomCard();
};
}
//设置房卡
if(typeof(Player.prototype.addRoomCard) == "undefined"){
Player.prototype.addRoomCard = function(value,text){
this.roomcard += value;
GameUI.setHallRoomCard();
if(text){
GameUI.Openupdataroomcard(text);
}
};
}
if(typeof(Player.prototype.setBean) == "undefined"){
Player.prototype.setBean = function(value){
this.bean = value;
GameUI.setHallStar();
};
}
if(typeof(Player.prototype.addBean) == "undefined"){
Player.prototype.addBean = function(value,text){
this.bean += value;
GameUI.setHallStar();
if(text){
GameUI.Openupdataroomcard(text);
}
};
}
//设置吱口令
if(typeof(Player.prototype.setPayCode) == "undefined"){
Player.prototype.setPayCode = function(_paycode){
if(_paycode){
this.paycode = _paycode;//吱口令
}else{
this.paycode = "";//吱口令
}
};
}
//绑定邀请码
if(typeof(Player.prototype.binding_invitecode) == "undefined"){
Player.prototype.binding_invitecode = function(_msg){
if(_msg.data.state == 0){
this.invitecode = _msg.data.invitecode;
}
GameUI.OpenTips(_msg.data.error,ConstVal.Tips.time);
};
}
//设置牌桌内玩家数据
if(typeof(Player.prototype.SetDeskInfo) == "undefined"){
Player.prototype.SetDeskInfo = function(_data,bTemp){
this.playerid=_data.playerid;
this.nickname=_data.nickname;
this.avatar=_data.avatar;
this.sex=_data.sex;
this.ip=_data.ip;
this.onstate=_data.onstate;
this.bean = _data.bean;
if(!bTemp){
this.initialBean = _data.bean;//玩家豆子初始值
}else{
this.initialBean = _data.initialBean;//玩家豆子初始值
}
this.isprepare = _data.isprepare;//玩家是否准备
if(_data.paycode){
this.paycode = _data.paycode;
}else{
this.paycode = "";
}
this.charm = _data.charm;
this.sign = _data.sign;
};
}
//获取牌桌内玩家数据
if(typeof(Player.prototype.getDeskInfo) == "undefined"){
Player.prototype.getDeskInfo = function(){
var rValue = {};
rValue.playerid=this.playerid;
rValue.nickname=this.nickname;
rValue.avatar=this.avatar;
rValue.sex=this.sex;
rValue.ip=this.ip;
rValue.onstate=this.onstate;
rValue.bean = this.bean;
rValue.initialBean = this.initialBean;//玩家豆子初始值
rValue.isprepare = this.isprepare;//玩家是否准备
if(this.paycode){
rValue.paycode = _data.paycode;
}else{
rValue.paycode = "";
}
rValue.charm = this.charm;
return rValue;
};
}
//房间解散
if(typeof(Player.prototype.BreakRoom) == "undefined"){
Player.prototype.BreakRoom = function(){
this.seat = -1; //座位号
this.state = -1;//玩家状态0->默认值 1->申请解散 2->同意解散 3->拒绝解散
this.status = 0;//0->默认值 1->房主 2->非房主
this.isStart = false;//能否点击按钮开始游戏
//this.paycode = "";
};
}
//申请解散房间
if(typeof(Player.prototype.ApplyBreakRoom) == "undefined"){
Player.prototype.ApplyBreakRoom = function(){
this.state = 0;//玩家状态0->默认值 1->申请解散 2->同意解散 3->拒绝解散
};
}
//同意解散房间
if(typeof(Player.prototype.AgreeBreakRoom) == "undefined"){
Player.prototype.AgreeBreakRoom = function(){
this.state = 1;//玩家状态0->默认值 1->申请解散 2->同意解散 3->拒绝解散
};
}
//拒绝解散房间
if(typeof(Player.prototype.RefuseBreakRoom) == "undefined"){
Player.prototype.RefuseBreakRoom = function(){
this.state = 2;//玩家状态0->默认值 1->申请解散 2->同意解散 3->拒绝解散
};
}
//更改玩家是否可以直接退出
if(typeof(Player.prototype.ChangeExit) == "undefined"){
Player.prototype.ChangeExit = function(v){
this.canexit = v;
switch(v){
case 1:
if(this.status == 1){
set_self(181,43,4,0,0);
}else{
set_self(181,43,3,0,0);
}
break;
case 0:
GameUI.hideExitBtn();
set_self(181,43,1,0,0);
break;
}
};
}
//更改玩家通话状态
if(typeof(Player.prototype.phonestate) == "undefined"){
Player.prototype.phonestate = function(state){
state=Number(state);
C_Player.onstate=state;
var pobj=Desk.GetPlayerBySeat(C_Player.seat);
if(!pobj){return;}
pobj.onstate=state;
GameUI.SetOnState(C_Player.seat.seat,state);
switch(state){
case 0://挂断
var data={};
data.agentid=GameData.AgentId;
data.gameid=GameData.GameId;
data.playerid=C_Player.playerid;
data.roomcode=Desk.roomcode;
Net.Send_hangup_phone(data);
break;
case 1://接起电话
var data={};
data.agentid=GameData.AgentId;
data.gameid=GameData.GameId;
data.playerid=C_Player.playerid;
data.roomcode=Desk.roomcode;
Net.Send_call_phone(data);
break;
case 2://电话进来
var data={};
data.agentid=GameData.AgentId;
data.gameid=GameData.GameId;
data.playerid=C_Player.playerid;
data.roomcode=Desk.roomcode;
Net.Send_call_phone(data);
break;
case 3://去电
var data={};
data.agentid=GameData.AgentId;
data.gameid=GameData.GameId;
data.playerid=C_Player.playerid;
data.roomcode=Desk.roomcode;
Net.Send_call_phone(data);
break;
}
};
}
//更改玩家任务提醒状态
if(typeof(Player.prototype.ChangeTaskstate) == "undefined"){
Player.prototype.ChangeTaskstate = function(v){
this.taskstate = v;
};
}
//分享回调
if(typeof(Player.prototype.sharesuccess) == "undefined"){
Player.prototype.sharesuccess = function(success,type){
if(success==2 && type == 2){//分享成功
var data={};
data.agentid=GameData.AgentId;
data.playerid=this.playerid;
data.taskid=ConstVal.ShareTaskId;
Net.Send_player_finish_task(data);
}else{
//GameUI.OpenTips("分享失败!",ConstVal.Tips.time);
}
if(success == 2 && GameData.shareFrom == 1){//截图分享成功
try{
GameData.shareTimes++;
if(isArray(GameData.hallConfig.actData)){
if(GameData.hallConfig.actData[1] == 0){//活动关闭
return;
}
switch(GameData.activityType){//
case 1://大赢家
if(GameData.shareTimes == 1){
var sendUrl = GameData.hallConfig.actData[3];
var event = 3;
Logic.sendToWeb2(sendUrl,event);
}
break;
}
}
//if(!isArray(GameData.hallConfig.activity)){//
//return;
//}else{
//if(GameData.hallConfig.activity.length>=5){
//if(GameData.hallConfig.activity[4] == 0){
//return;
//}
//}
//}
//logmessage("大赢家截图分享成功!"+GameData.shareTimes+"、"+GameData.activityType,1);
//switch(GameData.activityType){//
//case 1://大赢家
//if(GameData.shareTimes == 1){
//var sendUrl = "http://discount.0791ts.cn/api/add_game_times";
//var actId = 1;
//if(GameData.hallConfig.activity.length > 5){
//sendUrl = GameData.hallConfig.activity[6];
//actId = GameData.hallConfig.activity[7];
//}
//Logic.sendToWeb(sendUrl,actId);
//}
//break;
//}
}catch(e){
}
}
GameData.activityType = 0;
GameData.activityData = null;
};
}
//有
if(typeof(Player.prototype.player_finish_task) == "undefined"){
Player.prototype.player_finish_task = function(_msg){
if(_msg.data.state==1 && C_Player.taskstate==0){
C_Player.taskstate=1;
}
};
}
//领取任务奖励
if(typeof(Player.prototype.get_task_award) == "undefined"){
Player.prototype.get_task_award = function(_msg){
for(var i=0;i<TaskInfo.length;i++){
if(TaskInfo[i].taskid == _msg.data.taskid){
TaskInfo[i].state = 2;
}
}
this.taskstate=_msg.data.taskstate;
GameUI.CloseTask();
GameUI.OpenTask();
};
}
//设置是否已初始化密码
if(typeof(Player.prototype.setBankPwd) == "undefined"){
Player.prototype.setBankPwd = function(value){
this.bankpwd = value;
};
}
//设置库存星星数量
if(typeof(Player.prototype.setWareHouseStarCOunt) == "undefined"){
Player.prototype.setWareHouseStarCOunt = function(count){
if(count){
this.wareHouseStarCount = Number(count);
}else{
this.wareHouseStarCount = 0;
}
GameUI.setNumberImage(3033,C_Player.wareHouseStarCount,27);//仓库库存数量
};
}
//设置魅力值
if(typeof(Player.prototype.setCharm) == "undefined"){
Player.prototype.setCharm = function(count){
this.charm = count;
if(this.seat>-1){//在房间内
if(this.seat == GameData.infoSeat){
set_self(3125,7,GameData.sysConfig.charmName+""+count,0,0);
}
}
};
}
//设置魅力值
if(typeof(Player.prototype.setSign) == "undefined"){
Player.prototype.setSign = function(sign){
this.sign = sign;
GameUI.setSign(sign);
GameUI.closeTextInput();
};
}
if(typeof(Player.prototype.updateHallData) == "undefined"){
Player.prototype.updateHallData = function(data){
this.setSign(data.sign);
this.setRoomcard(data.roomcard);
this.update_bean2(data.bean);
};
}
if(typeof(Player.prototype.returnHallData) == "undefined"){
Player.prototype.returnHallData = function(data){
var obj={};
obj.sign = this.sign;
obj.roomcard = this.roomcard;
obj.bean = this.bean;
return obj;
};
}
//设置手机号
if(typeof(Player.prototype.setTel) == "undefined"){
Player.prototype.setTel = function(val){
this.tel = val;
// set_self(3256,43,2,0,0);
// play_ani(0,3256,35,255,100,0,1000,0,0,0,0,0,1);
};
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,886 @@
var Net = Net||{};
Net.tcp = {};
Net.tcp.isConnected = false;//已有连接连上
Net.tcp.tcpIDAva = 1;//用过的ID的最大值
Net.tcp.tcpIDList = [];//TCP ID列表
Net.tcp.connectCount = 3;//同时最多连接个数
Net.tcp.connectList = [];//tcp连接对象池
Net.tcp.connect = function(_id,ws){
}
Net.ws_tcp;
Net._SendData = function(_app,_route,_rpc,_data){
var _msg = {};
_msg.app = _app,
_msg.route = _route;
_msg.rpc = _rpc;
_msg.data = _data;
if(ConstVal.netType == 0){
Net.ws_tcp.send(JSON.stringify(_msg));
}else{
var putMsg='';
if(_msg.rpc == RpcList.player_login){putMsg="playerLogin"}
Func.AjaxHttp2(GameData.Server,_msg,
function(_msg,state,input_msg){
console.log(_msg,state,input_msg);
if (typeof(_msg) == 'string')
{
_msg = JSON.parse(_msg);
}
if(_msg.route==RouteList.platform||_msg.route==RouteList.agent||_msg.route==RouteList.room){
if(min_ExitsFunction(Net[_msg.rpc])){
Net[_msg.rpc](_msg);
}
}else{
Game_Modify._ReceiveData(_msg);
}
},function(_msg,state,input_msg){
if(input_msg == "playerLogin"){
GameUI.OpenTips("网络状况不好");
}
},putMsg);
}
if(Game_Config.Debugger.isDebugger){
console.log("发送数据:");
console.log(_msg);
}
}
Net.submit_error = function(_packet,_msg){
//提交错误
if(GameData.errorMsg != _msg){
GameData.errorMsg = _msg;
}else {
return;
}
var msg = {
app:"youle",
route:"agent",
rpc:"submit_error",
data:{
packet:_packet,
msg:_msg,
playerid:C_Player.playerid,
agentid:GameData.AgentId,
gameid:GameData.GameId,
}
}
try{
Net.ws_tcp.send(JSON.stringify(msg));
}catch(e){
}
}
Net.submit_log = function(_packet,_msg){
var msg = {
app:"youle",
route:"agent",
rpc:"submit_error",
data:{
packet:_packet,
msg:_msg,
playerid:C_Player.playerid,
agentid:GameData.AgentId,
gameid:GameData.GameId
}
}
console.log(_packet);
console.log(_msg);
try{
Net.ws_tcp.send(JSON.stringify(msg));
}catch(e){
}
}
//发送创建房间
Net.Send_create_room = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.create_room,_data);
}
//接收创建房间
Net.create_room = function(_msg){
//Logic.CreateRoom(_msg.data);
Desk.create_room(_msg);
GameUI.EndLoad();
Game_Modify.createRoom(_msg.data.roomtype,_msg.data.infinite);
if(Game_Modify.onCreateRoom){
Game_Modify.onCreateRoom(_msg.data);
}
}
//发送登录请求
Net.Send_login = function(_data){
//console.log(returnCitySN);
if(typeof returnCitySN != "undefined"){
_data.ip = returnCitySN.cip;
}
if(ConstVal.isGameHall){
if(!GameData.hallLogin){
return ;
}
}
_data.machineid = Logic.getMachineId();
_data.machineroom = Utl.getRoomcode();
//alert("进入Net.Send_login方法");
GameUI.StartLoad();
if(GameData.loginPlayerid){
var _playerid = Logic.readPlayerId();
if(_playerid){
_data.playerid = _playerid;
}
}
GameData.loginList.push(GameData.TcpID);
//GameData.isChangeServer = false;
//if(ConstVal.netType == 0){
GameData.isSendLoginState = true;
GameData.sendLoginTimes++;
if(!ConstVal.isGameHall){
if(GameData.sendLoginTimer == null){
GameData.isSendLoginTimer = setTimeout(function(){
GameData.ConnectType = false;
GameData.disType = true;
GameData.NetType=1;
GameUI.StartLoad();
GameData.isClose = true;
Net.ws_tcp.close();
GameData.isCloseTimer = setInterval(function(){
if(GameData.isClose){
Net.ws_tcp.close();
}
},5000);
},4000);
}
}else{
/*
if(GameData.sendLoginTimes >3){
if(GameData.isSendLoginTimer){
window.clearTimeout(GameData.isSendLoginTimer);
GameData.isSendLoginTimer = null;
}
GameUI.EndLoad();
GameUI.OpenKick("网络繁忙,请退出游戏,稍后登录!");
return;
}
if(GameData.sendLoginTimer == null){
GameData.isSendLoginTimer = setTimeout(function(){
var data={};
data.agentid = GameData.AgentId;
data.openid = C_Player.openid;
data.gameid = GameData.GameId;
data.nickname = C_Player.nickname;
data.avatar = C_Player.avatar;
data.sex = C_Player.sex;
data.province = C_Player.province;
data.unionid=C_Player.unionid;
data.city = C_Player.city;
data.version = GameData.versionCode;
data.channelid = GameData.ChannelId;
data.marketid = GameData.marketID;
},4000);
}
*/
}
//if(GameData.sendLoginTimes>=2){
//if(GameData.isSendLoginTimer){
//window.clearTimeout(GameData.isSendLoginTimer);
//GameData.isSendLoginTimer = null;
//}
//if(GameData.isClose){
//GameData.isClose = false;
//window.clearTimeout(GameData.isCloseTimer);
//}
//if(GameData.sendLoginTimer){
//window.clearTimeout(GameData.sendLoginTimer);
//GameData.sendLoginTimer = null;
//}
//if(GameData.sendLoginTimer == null){
//GameData.isSendLoginTimer = setTimeout(function(){
//GameData.ConnectType = false;
//GameData.disType = true;
//GameData.NetType=1;
//GameUI.StartLoad();
//GameData.isClose = true;
//Net.ws_tcp.close();
//GameData.isCloseTimer = setInterval(function(){
//if(GameData.isClose){
//Net.ws_tcp.close();
//}
//},5000);
//},4000);
//}
////GameUI.EndLoad();
////GameUI.OpenKick("网络繁忙,请退出游戏,稍后登录!");
//}
Net._SendData(AppList.app,RouteList.agent,RpcList.player_login,_data);
}
//接收登录
Net.player_login = function(_msg){
if(GameData.isSendLoginTimer){
window.clearTimeout(GameData.isSendLoginTimer);
GameData.isSendLoginTimer = null;
}
GameUI.EndLoad();
Desk.login(_msg);
}
//发送玩家自己进入房间请求
Net.Send_self_join_room = function(_data){
GameUI.StartLoad();
GameData.shortCode = _data.roomcode;
this._SendData(AppList.app,RouteList.agent,RpcList.self_join_room,_data);
}
//接收玩家自己进入房间请求
Net.self_join_room = function(_msg){
Desk.self_join_room(_msg);
GameUI.EndLoad();
}
//发送未开局之前房主自己解散房间
Net.Send_self_break_room = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.room,RpcList.self_break_room,_data);
}
//接收未开局之前房主自己解散房间
Net.self_break_room = function(_msg){
Desk.self_break_room(_msg);
GameUI.EndLoad();
}
//接收未开局之前他人房主解散房间
Net.other_break_room = function(_msg){
Desk.other_break_room(_msg);
}
//接收其他玩家加入房间
Net.other_join_room = function(_msg){
if(Logic.checkRoom()){
return;
}
Desk.other_join_room(_msg);
GameUI.EndLoad();
}
//发送未开局之前自己退出房间
Net.Send_self_exit_room = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.room,RpcList.self_exit_room,_data);
}
//接收未开局之前自己退出房间
Net.self_exit_room = function(_msg){
GameUI.closeCheck();
Desk.self_exit_room(_msg);
GameUI.EndLoad();
}
//接收未开局之前其他玩家退出房间
Net.other_exit_room = function(_msg){
if(Logic.checkRoom()){
return;
}
Desk.other_exit_room(_msg);
}
//发送开局之后自己申请解散房间
Net.Send_self_apply_free_room = function(_data){
//GameUI.StartLoad();
this._SendData(AppList.app,RouteList.room,RpcList.self_apply_free_room,_data);
}
//接收开局之后自己申请解散房间
Net.self_apply_free_room = function(_msg){
Desk.self_apply_free_room(_msg);
GameUI.EndLoad();
}
//接收开局之后其他玩家申请解散房间
Net.other_apply_free_room = function(_msg){
Desk.other_apply_free_room(_msg);
}
//发送自己同意解散房间
Net.Send_self_agree_free_room = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.room,RpcList.self_agree_free_room,_data);
}
//接收自己同意解散房间
Net.self_agree_free_room = function(_msg){
Desk.self_agree_free_room(_msg);
GameUI.EndLoad();
}
//接收其他玩家同意解散房间
Net.other_agree_free_room = function(_msg){
Desk.other_agree_free_room(_msg);
GameUI.EndLoad();
}
//发送自己拒绝解散房间
Net.Send_self_refuse_free_room = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.room,RpcList.self_refuse_free_room,_data);
}
//接收自己拒绝解散房间
Net.self_refuse_free_room = function(_msg){
Desk.self_refuse_free_room(_msg);
GameUI.EndLoad();
}
//接收其他玩家拒绝解散房间
Net.other_refuse_free_room = function(_msg){
Desk.other_refuse_free_room(_msg);
GameUI.EndLoad();
}
//接收解散房间
Net.free_room = function(_msg){
Desk.free_room(_msg);
GameUI.EndLoad();
}
//发送获取战绩
Net.Send_get_player_grade1 = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.get_player_grade1,_data);
}
//接收获取战绩
Net.get_player_grade1 = function(_msg){
gameCombat.get_player_grade1(_msg);
GameUI.EndLoad();
//Logic.SetCombatInfo(_msg.data);
//GameUI.OpenCombat();
}
//发送获取战绩2
Net.Send_get_player_grade2 = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.get_player_grade2,_data);
}
//接收获取战绩2
Net.get_player_grade2 = function(_msg){
gameCombat.get_player_grade2(_msg);
GameUI.EndLoad();
}
//接收修改房卡
Net.update_roomcard = function(_msg){
if(typeof _msg.data.change == "undefined"){
C_Player.UpdateRoomcard(_msg);
}
}
//接收其他玩家离线
Net.other_offline = function(_msg){
Desk.other_offline(_msg);
}
//接收其他玩家上线
Net.other_online = function(_msg){
Desk.other_online(_msg);
}
//发送发送聊天消息
Net.Send_send_text = function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.send_text,_data);
}
//接收发送聊天消息
Net.send_text = function(_msg){
Desk.send_text(_msg);
}
//发送获取任务列表
Net.Send_get_player_task = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.get_player_task,_data);
}
//接收获取任务列表
Net.get_player_task = function(_msg){
Desk.get_player_task(_msg);
//GameUI.SetTaskInfo(_msg);
GameUI.EndLoad();
}
//发送完成任务
Net.Send_player_finish_task = function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.player_finish_task,_data);
}
//接收完成任务
Net.player_finish_task = function(_msg){
C_Player.player_finish_task(_msg);
}
//发送领取任务奖励
Net.Send_get_task_award = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.get_task_award,_data);
}
//接收领取任务奖励
Net.get_task_award = function(_msg){
C_Player.get_task_award(_msg);
GameUI.EndLoad();
}
//发送有任务可领取
Net.Send_can_award = function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.refresh_task_state,_data);
}
//接收有任务可领取
Net.can_award = function(_msg){
C_Player.can_award(_msg);
}
//接收踢下线
Net.kick_offline = function(_msg){
Desk.kick_offline(_msg);
}
//发送自己打电话
Net.Send_call_phone = function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.call_phone,_data);
}
//接收自己打电话
Net.call_phone = function(_msg){
Desk.call_phone(_msg);
}
//发送自己挂断电话
Net.Send_hangup_phone = function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.hangup_phone,_data);
}
//接自己收挂断打电话
Net.hangup_phone = function(_msg){
Desk.hangup_phone(_msg);
}
//发送房主开局
Net.Send_self_makewar = function(_data){
//GameUI.StartLoad();
this._SendData(AppList.app,RouteList.room,RpcList.self_makewar,_data);
}
//接收房主开局
Net.self_makewar = function(_msg){
Desk.self_makewar(_msg);
//GameUI.EndLoad();
}
//接收房主开局
Net.other_makewar = function(_msg){
Desk.makewar(_msg);
}
//自己发送互动
Net.Send_send_gift=function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.send_gift,_data);
}
Net.send_gift=function(_msg){
Desk.send_gift(_msg);
}
//自己发送语音
Net.Send_send_voice=function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.send_voice,_data);
}
Net.send_voice=function(_msg){
Desk.send_voice(_msg);
}
//发送切换至房间服务器
Net.Send_connect_roomserver=function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.connect_roomserver,_data);
}
Net.connect_roomserver=function(_msg){
GameData.ConnectType=true;
GameData.disType =false;
GameData.ConnectPack = _msg.data;
GameData.ConnectRpc = RpcList.connect_roomserver;
GameData.Server=_msg.data.roomserver;
//Logic.Connect();
Net.ws_tcp.close();
}
//发送切换至大厅服务器
Net.Send_connect_agentserver=function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.connect_agentserver,_data);
}
Net.connect_agentserver=function(_msg){
if(_msg.data.opt == RpcList.other_break_room || _msg.data.opt == RpcList.free_room){
GameUI.StartLoad();
}
GameData.ConnectType=true;
GameData.disType =false;
GameData.ConnectRpc = RpcList.connect_agentserver;
GameData.ConnectPack = _msg.data;
GameData.Server=_msg.data.agentserver;
//Logic.Connect();
Net.ws_tcp.close();
}
Net.Send_broadcast=function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.broadcast,_data);
}
//接收即时信息
Net.broadcast=function(_msg){
//
Desk.broadcast(_msg);
}
//发送互动
Net.Send_send_phiz=function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.send_phiz,_data);
}
//接收互动
Net.send_phiz=function(_msg){
Desk.send_phiz(_msg);
}
//提交反馈
Net.Send_submit_opinion=function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.submit_opinion,_data);
}
//接收反馈
Net.submit_opinion=function(_msg){
Desk.submit_opinion(_msg);
}
//踢出玩家
Net.Send_kick_server=function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.kick_server,_data);
}
Net.kick_server=function(_msg){
Desk.kick_server(_msg);
}
//获取支付列表
Net.Send_get_paylist=function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.get_paylist,_data);
}
//接收支付列表
Net.get_paylist=function(_msg){
GameData.payList = _msg.data.paylist;
GameUI.OpenPay();
GameUI.EndLoad();
}
//支付成功后通知服务器
Net.Send_pay_succ=function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.pay_succ,_data);
}
//提交位置信息
Net.Send_submit_location=function(_data){
if(!ConstVal.isGameHall){
this._SendData(AppList.app,RouteList.agent,RpcList.submit_location,_data);
}
}
//提交位置信息
Net.submit_location=function(_msg){
Game.submit_location(_msg);
}
//发送绑定
Net.Send_binding_invitecode=function(_data){
//GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.binding_invitecode,_data);
}
//接收绑定
Net.binding_invitecode=function(_msg){
//GameUI.EndLoad();
C_Player.binding_invitecode(_msg);
}
//接收修改豆豆
Net.update_bean = function(_msg){
//C_Player.update_bean(_msg);
Desk.update_bean(_msg);
}
Net.Send_get_player_invitecode = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.get_player_invitecode,_data);
}
Net.get_player_invitecode = function(_msg){
GameUI.EndLoad();
C_Player.setInvitecod(_msg.data.invitecode);
GameUI.OpenBind();
}
Net.Send_beanroom_surrender = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.room,RpcList.beanroom_surrender,_data);
}
Net.beanroom_surrender = function(_msg){
GameUI.EndLoad();
GameUI.closeCheck();
if(_msg.data.state==0){
Game_Modify.onSurrender(_msg);
}else{//失败
if(_msg.data.showerror==1){
GameUI.OpenTips(_msg.data.error);
}
}
}
Net.Send_player_prepare = function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.player_prepare,_data);
}
Net.player_prepare = function(_msg){
Desk.player_prepare(_msg);
}
Net.Send_share_room = function(_data){
this._SendData(AppList.app,RouteList.room,RpcList.share_room,_data);
}
Net.share_room = function(_msg){
Desk.share_room(_msg);
}
Net.Send_get_share_room = function(_data){
if(!ConstVal.isGameHall){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.get_share_room,_data);
}
}
Net.get_share_room = function(_msg){
Desk.get_share_room(_msg);
GameUI.EndLoad();
}
Net.Send_quick_enter_share_room = function(_data){
console.log(_data);
this._SendData(AppList.app,RouteList.agent,RpcList.quick_enter_share_room,_data);
}
Net.show_message = function(_msg){
GameUI.EndLoad();
Desk.show_message(_msg);
}
Net.Send_advanced_roomlist = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.advanced_roomlist,_data);
}
Net.advanced_roomlist = function(_msg){
GameUI.EndLoad();
Desk.advanced_roomlist(_msg);
}
Net.Send_advanced_createroom = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.advanced_createroom,_data);
}
Net.advanced_createroom = function(_msg){
GameUI.EndLoad();
Desk.advanced_createroom(_msg);
}
Net.Send_change_room = function(_data){
//GameUI.StartLoad();
this._SendData(AppList.app,RouteList.room,RpcList.change_room,_data);
}
Net.change_seat = function(_msg){
Desk.change_seat(_msg);
}
//财富榜
Net.Send_get_treasurelist = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.get_treasurelist,_data);
}
//财富榜
Net.get_treasurelist = function(_msg){
Desk.get_treasurelist(_msg);
GameUI.EndLoad();
}
//设置仓库密码
Net.Send_set_bankpwd = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.set_bankpwd,_data);
}
Net.set_bankpwd = function(_msg){
GameUI.EndLoad();
Desk.set_bankpwd(_msg);
}
//更改仓库星星
Net.Send_change_star = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.change_star,_data);
}
Net.change_star = function(_msg){
GameUI.EndLoad();
Desk.change_star(_msg);
}
//提交手机信息
Net.Send_submit_phoneinfo = function(_data){
if(!ConstVal.isGameHall){
this._SendData(AppList.app,RouteList.agent,RpcList.submit_phoneinfo,_data);
}
}
Net.submit_phoneinfo = function(_msg){
//GameData.submitPhoneInfo = true;
}
//提交手机信息
Net.Send_update_charm = function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.update_charm,_data);
}
Net.update_charm = function(_msg){
//GameData.submitPhoneInfo = true;
Desk.update_charm(_msg);
}
Net.Send_setSign = function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.setSign,_data);
}
Net.setSign = function(_msg){
C_Player.setSign(_msg.data.sign);
//GameUI.setSign(_msg.data.sign);
}
Net.Send_switchRoomList = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.switchRoomList,_data);
}
Net.switchRoomList = function(_msg){
GameUI.EndLoad();
Desk.switchRoomList(_msg);
//GameUI.setSign(_msg.data.sign);
}
Net.Send_getInfoByShortCode = function(_data){
//GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.getInfoByShortCode,_data);
}
Net.getInfoByShortCode = function(_msg){
GameUI.EndLoad();
Desk.getInfoByShortCode(_msg);
}
Net.Send_optBanList = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.optBanList,_data);
}
Net.optBanList = function(_msg){
GameUI.EndLoad();
Desk.optBanList(_msg);
}
Net.Send_getShortCodeRankList = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.getShortCodeRankList,_data);
}
Net.getShortCodeRankList = function(_msg){
GameUI.EndLoad();
Desk.getShortCodeRankList(_msg);
}
Net.Send_setAllCharm = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.setAllCharm,_data);
}
Net.setAllCharm = function(_msg){
GameUI.EndLoad();
Desk.setAllCharm(_msg);
}
Net.Send_getVipRankList = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.getVipRankList,_data);
}
Net.getVipRankList = function(_msg){
GameUI.EndLoad();
Desk.getVipRankList(_msg);
}
Net.Send_playerBehavior = function(tag){
//GameUI.StartLoad();
/*
var _data={};
_data.agentid = GameData.AgentId;
_data.gameid = GameData.GameId;
_data.playerid = C_Player.playerid;
_data.tag = tag;
this._SendData(AppList.app,RouteList.agent,RpcList.playerBehavior,_data);
*/
var url = "http://test3.1888day.com/api/gamedo/gamedo";
var cfg = {};
cfg.url = url;
cfg.type = "GET";
cfg.data = "agentid="+GameData.AgentId+"&gameid="+GameData.GameId+"&playerid="+C_Player.playerid+"&tag="+tag;
cfg.success = playerBehavior_Succ;
cfg.error = playerBehavior_Fail;
min_http(cfg);
}
var playerBehavior_Succ = function(_msg,state,input_msg){
console.log("Succ");
console.log(_msg,state,input_msg);
}
var playerBehavior_Fail = function(_msg,state,input_msg){
console.log("Fail");
console.log(_msg,state,input_msg);
}
Net.playerBehavior = function(_msg){
//GameUI.EndLoad();
Desk.playerBehavior(_msg);
}
Net.Send_binding_phone = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.binding_phone,_data);
}
Net.binding_phone = function(_msg){
GameUI.EndLoad();
Desk.binding_phone(_msg);
}
Net.Send_send_phone_checkcode = function(_data){
//GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.send_phone_checkcode,_data);
}
Net.send_phone_checkcode = function(_msg){
//GameUI.EndLoad();
Desk.send_phone_checkcode(_msg);
}
Net.Send_send_phone_code_wechat = function(_data){
//GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.send_phone_code_wechat,_data);
}
Net.send_phone_code_wechat = function(_msg){
//GameUI.EndLoad();
Desk.send_phone_code_wechat(_msg);
}
Net.Send_setVipForbidSelect = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.setVipForbidSelect,_data);
}
Net.setVipForbidSelect = function(_msg){
GameUI.EndLoad();
Desk.setVipForbidSelect(_msg);
}
Net.Send_topup_card = function(_data){
console.log(_data);
this._SendData(AppList.app,RouteList.agent,RpcList.topup_card,_data);
}
Net.topup_card = function(_msg){
Desk.topup_card(_msg);
}
Net.Send_query_player2 = function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.query_player2,_data);
}
Net.query_player2 = function(_msg){
Desk.query_player2(_msg);
}
Net.Send_giveCoin = function(_data){
this._SendData(AppList.app,RouteList.agent,RpcList.giveCoin,_data);
}
Net.giveCoin = function(_msg){
Desk.giveCoin(_msg);
}
Net.Send_getPlayerWhiteList = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.getPlayerWhiteList,_data);
}
Net.getPlayerWhiteList = function(_msg){
GameUI.EndLoad();
Desk.getPlayerWhiteList(_msg);
}
Net.Send_optWhiteList = function(_data){
GameUI.StartLoad();
this._SendData(AppList.app,RouteList.agent,RpcList.optWhiteList,_data);
}
Net.optWhiteList = function(_msg){
GameUI.EndLoad();
Desk.optWhiteList(_msg);
}

View File

@@ -0,0 +1,610 @@
var Game=Game||{};
Game.submit_location = function(_msg){
GameData.submitLocation = true;
if(_msg.data.wechat_gzh){
GameData.wechat_gzh = _msg.data.wechat_gzh;
set_self(340,41,0,0,0);
set_self(340,7,GameData.wechat_gzh,0,0);
set_self(339,20,GameData.wechat_gzh.gblen()*13,0,0);
set_self(340,18,get_self(16,18,0,0,0)+get_self(16,20,0,0,0)/2-GameData.wechat_gzh.gblen()*6.5,0,0);
set_self(339,18,get_self(16,18,0,0,0)+get_self(16,20,0,0,0)/2-GameData.wechat_gzh.gblen()*6.5,0,0);
}
if(_msg.data.wechat_ewm){
GameData.wechat_ewm=_msg.data.wechat_ewm;
}
if(_msg.data.wechat_kfh){
GameData.wechat_kfh=_msg.data.wechat_kfh;
set_self(179,7,GameData.wechat_kfh,0,0);
}
if(_msg.data.qq){
GameData.qq=_msg.data.qq;
set_self(682,7,GameData.qq,0,0);
}
if(_msg.data.tel){
GameData.tel=_msg.data.tel;
set_self(GameData.telSpid,20,String(GameData.tel).gblen()*14,0,0);
set_self(GameData.telSpid,7,GameData.tel,0,0);
}
if(_msg.data.invitecode){
C_Player.setInvitecod(_msg.data.invitecode);
GameUI.CloseBind();
}
}
//游戏其他信息
//Game.mainSceneInfo = {};
var recorderManager;
var innerAudioContext1;
/**
* ?????????? mdata ??????
* openId,avatarUrl,nickName, gender, city, province, unionId
*/
function getwxuserinfo(mdata) {
sharelogin(mdata.openId,mdata.avatarUrl,mdata.nickName,mdata.gender,mdata.city,mdata.province,mdata.unionId)
}
/**
* ????????
*/
function wxgameshow(mdata) {
appservice(1);
}
/**
* ????????
*/
function wxgamehide(mdata) {
appservice(2);
}
/**
* ?????? state ???? 1 ?? 2 ??
*/
function sharegameinfo(state) {
//if (state == 1) {
//}
//if (state == 2) {
//}
state = Number(state);
//type = Number(type);
C_Player.sharesuccess(state,1);
}
//Recorderload();
/**
* ???????
*/
function Recorderload(){
if(!innerAudioContext1){
innerAudioContext1 = wx.createInnerAudioContext();
}
var that = this;
recorderManager=wx.getRecorderManager()
recorderManager.onError(function(){
console.log("????!");
});
recorderManager.onStop(function(res){
console.log(res.tempFilePath );
console.log("????!");
//playRecord(res.tempFilePath);
getaudiourl(res.tempFilePath,5);
});
//innerAudioContext1.onError((res) => {
//console.log("??????!");
//})
//innerAudioContext1.onEnded((res) => {
//console.log("??????!");
//})
innerAudioContext1.onError(function(res){
console.log("??????!");
})
innerAudioContext1.onEnded(function(res){
console.log("??????!");
})
}
/**
* ??????????
*/
function isxiaowxgame(){
var iswxgame;
try{
var recorderManager = wx.getRecorderManager();
iswxgame=true;
}catch(e){
iswxgame=false;
}
return iswxgame;
}
function wxauthorize(){
}
/**
* ????
*/
function startRecordAac (){
console.log("开始录音");
recorderManager.start({
format: 'aac'
});
// wx.authorize({
// scope: 'scope.record',
// fail: function (res) {
// // iOS ? Android ????????? errMsg ????,?????????
// console.log("????");
// console.log(res);
// if (res.errMsg.indexOf('auth deny') > -1 || res.errMsg.indexOf('fail') > -1 || res.errMsg.indexOf('auth denied') > -1 ) {
// // ???????????
// console.log("????");
// wx.showModal({
// title: '??',
// content: '??????????????????->??(?????)->?????->??',
// showCancel:false,
// success: function (res) {
// if (res.confirm) {
// console.log('??????')
// } else if (res.cancel) {
// console.log('??????')
// }
// }
// })
// }
// },
// success:function (res) {
// console.log("????");
// recorderManager.start({
// format: 'aac'
// });
// }
// })
}
/**
* ????
*/
function stopRecord (){
console.log("结束录音");
// wx.authorize({
// scope: 'scope.record',
// fail: function (res) {
// console.log("fail????");
// },
// success:function (res) {
// console.log("stop????");
// }
// })
recorderManager.stop()
}
/***
* ????
*/
function playRecord (src) {
if(!innerAudioContext1){
innerAudioContext1 = wx.createInnerAudioContext();
}
//var that = this;
// var src = this.data.src;
if (src == '') {
console.log("????!");
return;
}
innerAudioContext1.src = src;
innerAudioContext1.play()
}
var Wxloginbutton;
/**
* ?????
*/
function initwxgame() {
gameshow();
gamehide();
}
//initwxgame();
/**
* ???????
*/
//function gameshow() {
//wx.onShow(data => {
//console.log("******" + data)
//console.log(data)
//wxgameshow(data);
//});
//}
function gameshow() {
wx.onShow(function(data){
console.log("******" + data)
console.log(data)
wxgameshow(data);
});
}
/**
* ???????
*/
//function gamehide() {
//wx.onHide(data => {
//wxgamehide(data)
//});
//}
function gamehide() {
wx.onHide(function(data){
wxgamehide(data)
});
}
/*
* ?????????
* wxgamew ?????? wxgameh ?????? imagex ???????? imagey ???????? imagew???? imageh ???? btnimageurl ????
*/
function WXgameloginbuttonshow(wxgamew, wxgameh, imagex, imagey, imagew, imageh, btnimageurl) {
var winh, winw;
try {
wx.getSystemInfo({
success: function (res) {
console.log(res.model)
console.log(res.pixelRatio)
console.log(res.windowWidth)
console.log(res.windowHeight)
winh = res.windowHeight;
winw = res.windowWidth;
}
})
var sh = winh / wxgameh;
var sw = winw / wxgamew;
console.log("sw=" + sw + "sh=" + sh);
imagew = parseInt(imagew * sw);
imageh = parseInt(imageh * sh);
imagex = parseInt(imagex * sw);
imagey = parseInt(imagey * sh);;
if (wx.createUserInfoButton) {
if (Wxloginbutton) {
console.log("??button");
Wxloginbutton.show();
Wxloginbutton.offTap();//????????
} else {
console.log("????button");
// console.log(document.title);
Wxloginbutton = wx.createUserInfoButton({
type: 'image',
image: btnimageurl,
style: {
left: imagex,
top: imagey,
width: imagew,
height: imageh
}
})
}
//Wxloginbutton.onTap((res) => {
//console.log(res)
//if (res.errMsg.indexOf('auth deny') > -1 || res.errMsg.indexOf('auth denied') > -1 || res.errMsg.indexOf('fail') > -1 ) {
//wx.showModal({
//title: '??',
//content: '??????????????????->??(?????)->?????->??',
//showCancel: false,
//success: function (res) {
//if (res.confirm) {
//console.log('??????')
//} else if (res.cancel) {
//console.log('??????')
//}
//}
//})
//} else {
//WXgameLogin(res);
//}
//})
Wxloginbutton.onTap(function(res){
console.log(res)
if (res.errMsg.indexOf('auth deny') > -1 || res.errMsg.indexOf('auth denied') > -1 || res.errMsg.indexOf('fail') > -1 ) {
wx.showModal({
title: '??',
content: '??????????????????->??(?????)->?????->??',
showCancel: false,
success: function (res) {
if (res.confirm) {
console.log('??????')
} else if (res.cancel) {
console.log('??????')
}
}
})
} else {
WXgameLogin(res);
}
})
} else {
// ???????????????????????,???????
console.log("????????");
wx.showModal({
title: '??',
content: '????????,???????,??????????????',
showCancel:false,
success: function (res) {
if (res.confirm) {
console.log('??????')
} else if (res.cancel) {
console.log('??????')
}
}
})
}
} catch (e) {
}
}
/**
* ????????
*/
function WXgameloginbuttonhide() {
if (Wxloginbutton) {
Wxloginbutton.hide();
}
}
function Decrypt(key, iv, word) {
// var openDataContext = wx.getOpenDataContext()
// openDataContext.postMessage({
// text: 'hello',
// year: (new Date()).getFullYear()
// })
var murl = "https://games.tscce.cn/wechatsmallgame/encrypt.php";
var date = {};
date.key = encodeURIComponent(key);
date.type = "decrypt";
date.iv = encodeURIComponent(iv);
date.data = encodeURIComponent(word);
wx.request({
url: murl,
data: date,
method: 'POST',
header: {
"Content-Type": "application/x-www-form-urlencoded"
},
success: function (res) {
if (res.statusCode == 200) {
if (res.data) {
var mdata = decodeURIComponent(res.data);
console.log('??------' + mdata)
mdata = JSON.parse(mdata);
try {
console.log("??");
Wxloginbutton.hide();
console.log("Wxloginbutton??");
getwxuserinfo(mdata);
} catch (e) {
}
// sharelogin(mdata.openId, mdata.avatarUrl, mdata.nickName, mdata.gender, mdata.city, mdata.province, mdata.unionId);
}
} else {
console.log('??!res.statusCode' + res.statusCode)
}
},
fail: function (res) {
console.log('??!')
}
});
}
function WXgameLogin(uesrdata) {
// ??
wx.login({
//success: res => {
//if (res.code) {
//var murl = "https://games.tscce.cn/wechatsmallgame/code2accessToken.php?appid=wxaeeca8ffffa94105" +"&secret=639a292164680d4cd87a024edae21f41"+"&js_code="+res.code;
//console.log("????res.code=" + res.code);
//wx.request({
//url: murl,
//method: 'GET',
//header: {
//'content-type': 'application/json'
//},
//success: function (res) {
//console.log('??' + JSON.stringify(res));
//console.log('res.statusCode' + res.statusCode);
//if (res.statusCode == 200) {
//var openid = res.data.openid;
//var unionid = res.data.unionid;
//var session_key = res.data.session_key;
//Decrypt(session_key, uesrdata.iv, uesrdata.encryptedData);
//} else {
//console.log('??!res.statusCode' + res.statusCode)
//}
//},
//fail: function (res) {
//console.log('??!')
//}
//});
//}
//}
success: function(res){
if (res.code) {
var murl = "https://games.tscce.cn/wechatsmallgame/code2accessToken.php?appid=wxaeeca8ffffa94105" +"&secret=639a292164680d4cd87a024edae21f41"+"&js_code="+res.code;
console.log("????res.code=" + res.code);
wx.request({
url: murl,
method: 'GET',
header: {
'content-type': 'application/json'
},
success: function (res) {
console.log('??' + JSON.stringify(res));
console.log('res.statusCode' + res.statusCode);
if (res.statusCode == 200) {
var openid = res.data.openid;
var unionid = res.data.unionid;
var session_key = res.data.session_key;
Decrypt(session_key, uesrdata.iv, uesrdata.encryptedData);
} else {
console.log('??!res.statusCode' + res.statusCode)
}
},
fail: function (res) {
console.log('??!')
}
});
}
}
});
}
/**
* ?????????
*/
function initgameshareinfo(sharetitle, shareimageurl) {
wx.showShareMenu({ withShareTicket: true });
//wx.onShareAppMessage(data => {
//return {
//title: sharetitle,
//imageUrl: shareimageurl,
//query: '',
//success: function (res) {
//console.log(res);
//console.log('??????');
//sharegameinfo(1);
//},
//fail: function (res) {
//console.log('??????');
//console.log(res);
//sharegameinfo(2);
//}
//}
//})
wx.onShareAppMessage(function(data){
return {
title: sharetitle,
imageUrl: shareimageurl,
query: '',
success: function (res) {
console.log(res);
console.log('??????');
sharegameinfo(1);
},
fail: function (res) {
console.log('??????');
console.log(res);
sharegameinfo(2);
}
}
})
}
/**
* ?????????
*/
function hidegameshareinfo(sharetitle, shareimageurl) {
wx.hideShareMenu();
}
/**
* ??????
*/
function Pullupgameshare(sharetitle, shareimageurl) {
wx.shareAppMessage({
title: sharetitle,
imageUrl: shareimageurl,
query: "",
success: function (res) {
console.log(res);
console.log('??????');
sharegameinfo(1);
},
fail: function (res) {
console.log('??????');
console.log(res);
sharegameinfo(2);
}
});
}
/**
* ???????
*/
function createGameClubButtonimage(mleft, mtop, mwidth, mheight) {
var button = wx.createGameClubButton({
type: 'image',
icon: 'green',
style: {
left: mleft,
top: mtop,
width: mwidth,
height: mheight
}
})
}
// var button = wx.createGameClubButton({
// type: 'text',
// icon: 'green',
// style: {
// left: 10,
// top: 76,
// width: 40,
// height: 40
// }
// })

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,181 @@
var Game_Config = Game_Config||{};//相关配置
Game_Config.Debugger={//调试配置
isDebugger : false,// debugger模式下会将所有收发的包输出到控制台(正式发布改为false)
AutoLogin : true,//debugger模式下是否需要记住登录状态自动登录(正式发布改为true)
isSubmitError : true,//是否需要服务器收集错误信息调试时可根据需要正式发布改为true
visitorLogin : true,//隐藏式游客登录
visiblePay:true,//审核通过后是否显示支付按钮
serverType:0,//0->正式服务器 1->测试服务器 2->本地服务器
//gameserver:"http://ou9ocm96z.bkt.clouddn.com/74update_json.txt"
//gameserver:"http://ovw4mqeln.bkt.clouddn.com/update_json/74update_json.txt"+"?"+ifast_random(100000)
gameserver:"https://tsgames.daoqi88.cn/config/update_jsonv2.txt"+"?"+ifast_random(100000)
//gameserver:"http://ylyxservice1.0791ts.cn/config/update_json.txt"
//gameserver:"http://120.25.60.74:1089/index.html"//"http://ylyxservice1.0791ts.cn:1089/index.html"//gameserver:"http://112.35.8.77:3089/index.html"http://120.26.52.206:8080
//gameserver:"http://127.0.0.1:1089/index.html"
};
Game_Config.Max = {
SumOfRoomtype:13,//创建时房间类型roomtype数组长度
ShowChat:2000,//聊天停留时间
PlayerCnt:4,//房间最大人数
group:500,//游戏最大群组号
showtime:10,//加载等待最少时间
reconnecttime:30000,//唤醒游戏间隔(超过间隔断线重连)
Mainnickname:20,//主界面玩家昵称显示长度(字符长度)
Infonickname:16//个人信息显示长度(字符长度)
};
Game_Config.Combat = {
height:80,//战绩页单行高度高度
up_y:190,//战绩页裁剪y坐标
bannerheight:60,//战绩横幅高度
bannery:80,//战绩横幅Y左边相对48精灵
btnbg:50
};
Game_Config.Info = {
Mainnickname:8,//游戏主界面玩家信息显示最大长度(字符)
textwidth_1:12.5,//聊天显示文字的宽度(未改动聊天显示文字大小无需改动无需修改)
textwidth_2:12.5,//聊天显示文字的宽度(未改动聊天显示文字大小无需改动无需修改)
otherPositionDefault:true,//其他主界面玩家信息(昵称、积分)是否采用默认对齐方式对齐居中点为头像中点
myPositionDefault:true,//其他主界面玩家信息(昵称、积分)是否采用默认对齐方式对齐居中点为头像中点
myPosition:43,//自己信息对齐点(根据游戏界面自行修改)
position:[1193+43-10,980+43,43+10,43+10],//其他主界面玩家信息昵称、积分居中对齐的x坐标 注意是其他玩家不包括自己从下家开始
TextContent:["不要吵了不要吵了,专心玩游戏吧。","不要走,决战到天亮!","大家好,很高兴见到各位。","各位真是不好意思,我要离开一会儿。","快点吧,我等的花儿都谢了!","再见了,我会想念大家的。","怎么又断线了,网络怎么这么差啊!"],//常用语内容
TextContentMp3:["","","","","","",""],
};
Game_Config.Share={//分享参数
appdownload:"http://www.tsysjw.com/game_dz.apk",//下载链接(无需配置,从服务器获取)
title:"吉水三缺一",//(分享标题)
description:"每天可领取免费房卡约麻将",//分享描述
gameTitle:"每天可领取免费房卡约麻将",//游戏中的分享标题模板工程会自动将游戏名字分享出去、不必写在这个变量里
gameDescription:"每天可领取免费房卡约麻将"//游戏中分享描述
};
Game_Config.Chat={//游戏内聊天配置信息
LimitLength:40,//聊天最大长度(字节长度)
textwidth:12.5,//聊天显示文字的宽度(未改动聊天显示文字大小无需改动无需修改)
ChatDis:[30,12],//聊天气泡与内容的间隔0位置左右间隔(最好不要低于30)1位置上下间隔
isLeft:[1,0,0,1,0],//聊天气泡是否为以左边为基准线
//ChatLoc:[[35,517],[1100,315],[1100,105],[175,105],[175,315]]//聊天气泡的基准点位置(注意是基准点位置!)
ChatLoc:[[21,418],[1090+127,175],[899+127,1],[23,167],[1034+127,302]]
};
Game_Config.Voice={//游戏内聊天配置信息
VoiceTime:600,//播放语音动画的时间一般情况无需无需修改
VoiceDis:[30,12],//语音气泡与内容的间隔0位置左右间隔(最好不要低于30)1位置上下间隔
isLeft:[1,0,0,1,0],//气泡是否为以左边为基准线
VoiceLoc:[[21,418],[1090+127,175],[899+127,1],[23,167],[1034+127,302]]//气泡的基准点位置(注意是基准点位置!)
};
Game_Config.Setting={
Ads1:"本游戏仅为娱乐休\n闲使用房卡所有\n友乐游戏通用\n\n游戏问题请联系微\n 信公众号:\n",
//Ads2:"\n 或客服号:\n",
board:"",//从后台获取设置无效
//info:[" 客服信息","QQ:","手机:","微信:"],//客服QQ提醒
info:["客服信息","QQ:","",""],//客服QQ提醒
board_blength:24,//通知页面一行最大字节数(无需设置)
charge:"关注友乐微信公众号充值",//充值提示
//BtnLoc : [751,833]//音效设置界面两个按钮的x坐标点
};
Game_Config.Protocol={
x:270,//协议图片初始x坐标
y:100,//协议图片初始y坐标
h:560,//协议图片显示高度
w:729//协议图片显示宽度
};
Game_Config.Help={//帮助
x:216,//帮助图片初始x坐标
y:164,//帮助图片初始y坐标
w:850,//帮助图片显示高度
h:450//帮助图片显示宽度
};
Game_Config.Notice={//滚动公告
x1:0,//无需设置
x2:0,//无需设置
y:0,//无需设置
h:0,//无需设置
//以上参数用来截取滚动公告的显示,截取位置是与滚动公告底大小位置一致
speed:0.1,//滚动公告的滚动速度
width:15//滚动公告的内容字体的字节长度(汉字是两个字节)
};
Game_Config.Feedback = {//反馈配置
maxLen:250 //反馈内容最大长度
};
Game_Config.shakeList ={//摇一摇事件的回调ID、需要添加时在此处添加回调事件写在Utl_Input.js中的Utl.shakeEvent()中
nil:0,
startwar:1
};
Game_Config.soundList ={//声音资源名
MenuSceneMusic:"00171.mp3",//大厅界面背景音
MainSceneMusic:"00177.mp3"//游戏主界面背景音
//Button:""//按钮音效
};
Game_Config.ClickButton = {//需要设置点击音效的按钮(只有有弹窗的按钮设置此音效有效、按钮已经设置好、子游戏不允许修改)
src_1:"00170.mp3",//点击时播放的声音资源文件( 不需要播放则不填,下同)
src_2:""//弹窗时播放的音效
}
Game_Config.MenuScene = {//主菜单界面
};
Game_Config.loginButton = {//登录按钮信息
x1:450,//非审核版本微信登录按钮x
x2:113,//审核版本微信登录按钮x
x3:488,//审核版本游客登录按钮x
};
Game_Config.sysConfig = {
mainMenuButton:false,//是否进入主菜单界面隐藏四个按钮
mainScenePlayerInfo:false,//是否隐藏主界面玩家信息
mainSceneButton:false,//是否隐藏主界面按钮
shareRoom:false,//接收到星星场是否屏蔽平台框架显示
changeSeat:false,//是否屏蔽平台自动刷新换座后界面
hideNotice:false,//隐藏公告栏
vipInfinite:false,//vip房是否默认开启无限局
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,35 @@
min_loadJsFile("js/mem/mem_ini.js", function(){
min_loadJsFile("js/flow/flow.js", function(){
min_loadJsFile("js/export/export.js", function(){
});});});

View File

@@ -0,0 +1,670 @@
/*
默认动画:
放大缩小 zoom 参数:目标倍数,时间(不是秒,是一个值,自己调一调)
旋转 rotate 参数:目标倍数,时间(不是秒,是一个值,自己调一调)
定向移动 move 参数:方向,距离,时间(不是秒,是一个值,自己调一调)
定点移动 moveTo 参数:目标位置[100,100],时间(不是秒,是一个值,自己调一调)
是否正在播放
if (!AM.is_play(5)) {
同时播放:边放大,边旋转
放大到200
AM.add(5).bfunc(function(){
该链式动画开始之前执行
}).zoom(200,35).func(function(){
该链式动画完成时执行此时不能再次执行同一ID的动画
}).start();
同时旋转30度
AM.new(5).bfunc(function(){
该链式动画开始之前执行
}).rotate(get_self(5,34)+30,30).func(function(){
该链式动画完成时执行此时不能再次执行同一ID的动画
}).start();
}
是否正在播放
if (!AM.is_play(5)) {
逐步播放先放大到200然后旋转30度
先放大到200然后旋转30度
AM.add(5).bfunc(function(){
该链式动画开始之前执行
}).zoom(200,35).rotate(get_self(5,34)+30,30).func(function(){
该链式动画完成时执行此时不能再次执行同一ID的动画
}).start();
};
清除所有动画
AM.clear() 一个参数:
默认为false,会直接变为理想状态
true :回到未执行完的动画的初始状态。
AM.remove() 两个参数:
id:清除某ID的动画
默认为false,会直接变为理想状态
true :回到未执行完的动画的初始状态。
*/
function HAnimation(desc) {
this.desc = desc || "";
var item = [];//动画序列
var playID = [];//l
var deploy = 0;//延迟
var id = 0,
duration = 0;
var king = {};
var currentPlay = null;
var currentP = [];
var pos = [];
var opos = [];
var self = this;
self.isPlaying = 0;
var toO = false;
var toend = false;
var repp = false;
var func = function () {
};
var bfunc = function () {
};
var result = {}
//var one_by_one={
//id:0,
//item:[],
//currentPlay:null,
//isPlaying:0,
//pos:[],
//opos:[],
//toO:false,
//repp:false,
//func:function(){},
//}
this.register = function (obj) {
if (self.isPlaying == 1) {
//console.log("该动画已经在运行了");
return king;
}
id = obj;
pos = [];
opos = [];
currentPlay = null;
currentP = [];
self.isPlaying = 0;
pos = [get_self(id, 18, 0, 0), get_self(id, 19, 0, 0)];
opos = [get_self(id, 18, 0, 0), get_self(id, 19, 0, 0)];
return king;
};
king.bfunc = function (funcc) {
bfunc = funcc || bfunc;
return king;
};
king.func = function (funcc) {
func = funcc || func;
return king;
};
king.repeat = function (self) {
if (self == 0) {
stop();
}
repp = true;
return king;
};
this.set_end = function (end) {
toend = end;
}
this.set_toO = function (O) {
toO = O;
};
king.set_end = function (end) {
toend = end;
};
king.set_toO = function (O) {
toO = O;
};
//预设动画:左移,右移,上移,下移,定向移动
king.wait = function (time, func) {
var tim = time || 0;
var func = func || function () {
};
var otime = tim;
var piecea = function (otime) {
if (time == 0) {
time = otime;
func();
return 2;
}
time = time - 1;
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: piecea, pos: pos}
return king;
}
king.path = function (mpos, time, func) {
result[18] = mpos[0]
result[19] = mpos[1]
var pp = Math.abs(pos[1] - mpos[1]) / time;
console.log(pos[1], mpos[1], time, pp)
var path = function (mpos) {
var A = new Point(pos[0], pos[1]);
var B = new Point(mpos[0], mpos[1]);
if (get_self(id, 18) < mpos[0]) {
set_self(id, 18, pp, 1, 0);
} else if (get_self(id, 18) > mpos[0]) {
set_self(id, 18, pp, 2, 0);
}
var y;
if (B.x == A.x) {
var y = B.y;
} else {
y = func(A, B, get_self(id, 18));
}
set_self(id, 19, y, 0, 0);
// get_self(id, 18, 0, 0)==mpos[0]&&get_self(id, 19, 0, 0)==mpos[1]
if (Math.abs(get_self(id, 18, 0, 0) - mpos[0]) < 10 && Math.abs(get_self(id, 19, 0, 0) - mpos[1]) < 10) {
set_self(id, 18, mpos[0], 0, 0);
set_self(id, 19, mpos[1], 0, 0);
return 2;
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: path, pos: pos}
return king;
}
king.moveTo = function (mpos, time) {
var pp;
if (pos[0] != mpos[0]) {
pp = Math.abs(pos[0] - mpos[0]) / time;
} else {
pp = Math.abs(pos[1] - mpos[1]) / time;
}
result[18] = mpos[0]
result[19] = mpos[1]
var moveTo = function (mpos) {
var A = new Point(pos[0], pos[1]);
var B = new Point(mpos[0], mpos[1]);
if ((B.y - A.y) == 0 && (B.x - A.x) == 0) {
return 2;
}
if (get_self(id, 18) < mpos[0]) {
set_self(id, 18, pp, 1, 0);
} else if (get_self(id, 18) > mpos[0]) {
set_self(id, 18, pp, 2, 0);
}
var y;
if (B.x == A.x) {
var y = B.y;
} else {
y = (B.y - A.y) / (B.x - A.x) * (get_self(id, 18, 0, 0) - A.x) + A.y;
}
set_self(id, 19, y, 0, 0);
//if (get_self(id,19)<mpos[1]) {
////console.log("MOVETO"+get_self(id,19));
//set_self(id, 19,1, 1, 0);
//}else if (get_self(id,19)>mpos[1]){
////console.log("MOVETO"+get_self(id,19));
//set_self(id, 19,1, 2, 0);
//}
if (Math.abs(get_self(id, 18, 0, 0) - mpos[0]) < 10 && Math.abs(get_self(id, 19, 0, 0) - mpos[1]) < 10) {
//console.log("MOVETO",mpos[0],mpos[1]);
set_self(id, 18, mpos[0], 0, 0);
set_self(id, 19, mpos[1], 0, 0);
return 2;
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: moveTo, pos: pos}
return king;
}
king.move = function (type, mile, time) {
if (type == 'right') {
result[18] = pos[0] + mile
} else if (type == 'left') {
result[18] = pos[0] - mile
} else if (type == 'up') {
result[19] = pos[1] - mile
} else if (type == 'down') {
result[19] = pos[1] + mile
}
var pp = mile / time;
var moveGo = function (type, mile) {
////console.log(type);
if (type == 'right') {
set_self(id, 18, pp, 1, 0);
if ((get_self(id, 18, 0, 0) - pos[0]) >= mile) {
pos[0] = pos[0] + mile;//-get_self(id, 20, 0, 0);
set_self(id, 18, pos[0], 0, 0);
//console.log('right'+id);
return 2;
}
} else if (type == 'left') {
set_self(id, 18, pp, 2, 0);
if ((pos[0] - get_self(id, 18, 0, 0)) >= mile) {
pos[0] = pos[0] - mile;
//console.log('left'+id);
set_self(id, 18, pos[0], 0, 0);
return 2;
}
} else if (type == 'up') {
set_self(id, 19, pp, 2, 0);
if ((pos[1] - get_self(id, 19, 0, 0)) >= mile) {
pos[1] = pos[1] - mile;
set_self(id, 19, pos[1], 0, 0);
//console.log('up'+id);
return 2;
}
} else if (type == 'down') {
set_self(id, 19, pp, 1, 0);
if ((get_self(id, 19, 0, 0) - pos[1]) >= mile) {
pos[1] = pos[1] + mile;
set_self(id, 19, pos[1], 0, 0);
//console.log('down'+id);
return 2;
}
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: moveGo, pos: pos}
return king;
}
king.zoom = function (beishu, time) {
//console.log("zoomBB");
var pp;
console.log(beishu)
if (beishu < 0) {
pp = -beishu / time;
} else {
pp = beishu / time;
}
result[33] = beishu
var zoom = function (beishu) {
//console.log(beishu);
if (beishu >= get_self(id, 33, 0, 0)) {
set_self(id, 33, pp, 1, 0);
if (get_self(id, 33, 0, 0) >= beishu) {
//console.log("zoomBB");
set_self(id, 33, beishu, 0, 0);
return 2;
}
} else {
set_self(id, 33, pp, 2, 0);
if (get_self(id, 33, 0, 0) <= beishu) {
//console.log("zoomSS");
set_self(id, 33, beishu, 0, 0);
return 2;
}
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: zoom, pos: pos}
return king;
}
king.rotate = function (beishu, time) {
//console.log("rotateAA");
var pp;
if (beishu < 0) {
pp = -beishu / time;
} else if (beishu > 0) {
pp = beishu / time;
} else {
pp = (0 - get_self(id, 34, 0, 0)) / time;
}
result[34] = beishu
var rotate = function (beishu) {
if (beishu >= get_self(id, 34, 0, 0)) {
set_self(id, 34, pp, 1, 0);
if (get_self(id, 34, 0, 0) >= beishu) {
//console.log("rotateAA");
set_self(id, 34, beishu, 0, 0);
return 2;
}
} else {
set_self(id, 34, pp, 2, 0);
if (Math.abs(get_self(id, 34, 0, 0)) >= Math.abs(beishu)) {
//console.log("rotateBB",get_self(id,34,0,0),beishu);
set_self(id, 34, beishu, 0, 0);
return 2;
}
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: rotate, pos: pos}
return king;
}
king.alpha = function (beishu, time) {
//console.log("rotateAA");
var pp;
var last = result[35] || 255
if (result[35] != undefined && result[35] == 0) {
last = 0;
}
pp = Math.abs(last - beishu) / time;
console.log("pppp", last)
result[35] = beishu
var alpha = function (beishu) {
if (beishu >= get_self(id, 35, 0, 0)) {
set_self(id, 35, pp, 1, 0);
if (get_self(id, 35, 0, 0) >= beishu) {
//console.log("rotateAA");
set_self(id, 35, beishu, 0, 0);
return 2;
}
} else {
set_self(id, 35, pp, 2, 0);
if (get_self(id, 35, 0, 0) <= beishu) {
//console.log("rotateBB",get_self(id,34,0,0),beishu);
set_self(id, 35, beishu, 0, 0);
return 2;
}
}
return 1;
}
item[item.length] = {id: item.length, state: 0, argu: arguments, func: alpha, pos: pos}
return king;
}
king.start = function (open) {
if (item.length == 0) {
return
}
//set_self(id,18,opos[0],0,0);
//set_self(id,19,opos[1],0,0);
//set_self(id,34,0,0,0);
//set_self(id,33,100,0,0);
currentPlay = null;
self.isPlaying = 1;
bfunc();
set_self(id, 57, 1, 0, 0);//开启定时器
}
this.start = function (open) {
if (item.length == 0) {
return
}
//set_self(id,18,opos[0],0,0);
//set_self(id,19,opos[1],0,0);
//set_self(id,34,0,0,0);
//set_self(id,33,100,0,0);
currentPlay = null;
self.isPlaying = 1;
bfunc();
set_self(id, 57, 1, 0, 0);//开启定时器
}
var stop = function () {
if (toO) {
set_self(id, 18, opos[0], 0, 0);
set_self(id, 19, opos[1], 0, 0);
set_self(id, 34, 0, 0, 0);
set_self(id, 33, 100, 0, 0);
}
currentPlay = null;
self.isPlaying = 0;
item = [];
}
this.show = function () {
//console.log(item);
}
this.end = function (O) {
toO = O;
if (O == undefined) {
toO = false;
}
for (var key in result) {
set_self(id, parseInt(key), parseInt(result[key]), 0, 0);
//console.log("id=="+id+" key:"+key+",desc:"+result[key]);
}
stop();
func();
}
this.ontimer = function (gameid, spid) {
if (spid != id) {
return;
}
if (toend) {
if (toO) {
} else {
if (item.length != 0) {
for (var key in result) {
set_self(id, parseInt(key), parseInt(result[key]), 0, 0);
//console.log("id=="+id+" key:"+key+",desc:"+result[key]);
}
//console.log(result)
}
}
stop();
func();
}
if (item.length == 0) {
return;
}
if (currentPlay == null) {
currentPlay = item[0];
currentPlay.state = 1;
}
if (currentPlay.state == 2) {//播放结束
if (currentPlay.id < item.length - 1) {
currentPlay = item[currentPlay.id + 1];
currentPlay.state = 1;
} else {
if (repp == false) {
////console.log(item);
//console.log("执行结果:");
stop();
func();
return;
} else {
if (toO) {
set_self(id, 18, opos[0], 0, 0);
set_self(id, 19, opos[1], 0, 0);
set_self(id, 34, 0, 0, 0);
set_self(id, 33, 100, 0, 0);
}
pos = [opos[0], opos[1]];
currentPlay = item[0];
currentPlay.state = 1;
}
}
}
////console.log(spid);
if (spid == id) {
if (currentPlay.state == 1) {
var state = currentPlay.func.apply(null, currentPlay.argu);//Array.prototype.slice.call(arguments, 0));
currentPlay.state = state;
}
}
};
};
/*
*/
//var HA=app.register("Animation1",new HAnimation("1"));
//var HAn=app.register("Animation2",new HAnimation("2"));
//HA.item=[];
//HA.add=function(desc){
//HA.item.push(new HAnimation(desc))
//}
//HA.get=function(pos){
//if (!HA.item[pos]) {
//HA.item[pos]=new HAnimation("")
//}
//return HA.item[pos]
//}
function AManager() {
var self = this;
this.animantions = {};
var king = {};
this.add = function (id) {
var animation;
if (!self.animantions[id]) {
self.animantions[id] = [];
animation = new HAnimation("")
//console.log(animation)
self.animantions[id].push(animation)
}
animation = self.animantions[id][self.animantions[id].length - 1]
return animation.register(id)
}
this.new = function (id) {
animation = new HAnimation("")
self.animantions[id].push(animation)
return animation.register(id)
}
this.action = function (id) {
if (self.animantions[id]) {
animation = self.animantions[id]
for (var i = 0; i < animation.length; i++) {
animation[i].start();
}
}
}
this.get = function (id) {
if (self.animantions[id]) {
return self.animantions[id]
}
return;
//throw "该 id=="+id+" 不存在或者没有动画列表"
}
this.is_play = function (id) {
//this.get(id)
animation = this.get(id);
if (animation == undefined) {
return false;
}
for (var i = 0; i < animation.length; i++) {
if (animation[i].isPlaying == 1) {
return true;
}
}
return false;
}
this.cls_id = function (id) {
if (self.animantions[id]) {
set_self(id, 57, 0, 0, 0);
delete self.animantions[id];
}
}
this.remove = function (id, end) {
if (self.animantions[id]) {
animation = self.animantions[id];
for (var i = 0; i < animation.length; i++) {
animation[i].end(end);
}
delete self.animantions[id];
}
}
this.mremove = function (id) {
delete self.animantions[id];
}
this.clear = function (end) {
if (end == undefined) {
end = false
}
for (var anim in self.animantions) {
animation = self.animantions[anim];
for (var i = 0; i < animation.length; i++) {
animation[i].end(end);
}
}
self.animantions = {};
}
this.clear_exrepp = function (end) {
if (end == undefined) {
end = false
}
for (var anim in self.animantions) {
animation = self.animantions[anim];
not = 0;
for (var i = 0; i < animation.length; i++) {
if (animation[i].get_repeat() == true) {
not = animation;
break;
}
}
console.log(not);
if (not == 0) {
for (var i = 0; i < animation.length; i++) {
animation[i].end(end);
}
delete self.animantions[anim];
}
}
}
this.ontimer = function (gameid, spid) {
if (self.animantions[spid] == undefined) {
//if (spid!=800&&spid!=801&&spid!=802&&spid!=803&&spid!=804&&spid!=805) {
//set_self(spid, 57, 0, 0, 0);
//}
// set_self(spid, 57, 0, 0, 0);
//console.log(spid);
return;
}
animation = self.animantions[spid];
for (var i = 0; i < animation.length; i++) {
if (animation[i].isPlaying == 1) {
return;
}
}
delete self.animantions[spid];
set_self(spid, 57, 0, 0, 0);
}
this.ex = function () {
var alist = []
for (var anim in self.animantions) {
animation = self.animantions[anim];
for (var i = 0; i < animation.length; i++) {
alist.push(animation[i]);
}
}
return alist
}
}
AM = app.register_manager("AManager", new AManager());
//var AManager={
//animantions:{},
//add:function(id){
//if (!this.animantions[id]) {
//animation=new HAnimation("")
//this.animantions[id]=animation
//}else{
//this.animantions[id]
//}
//return animation
//}
//}

View File

@@ -0,0 +1,80 @@
(function(wnd) {
function Point(x,y){
this.x=x||0;
this.y=y||0;
}
window.Point=Point;
})(window);
var app=(function(){
var item={};
var manager={};
var register=function(name,KJ) {
item[name]=KJ;
return KJ;
};
var register_manager=function(name,KJ) {
manager[name]=KJ;
return KJ;
};
var remove=function (name) {
if (item[name]) {
delete item[name];
}
};
var get=function(name){
if (item[name]) {
return item[name];
}else{
return 0;
}
}
var have=function(name){
if (item[name]) {
return true;
}else{
return false;
}
}
var show=function(){
for (var key in item) {
console.log("key:"+key+",desc:"+item[key]['desc']);
}
}
var runmouse=function(func){
for (var key in item) {
if (item[key][func]) {
item[key][func].apply(item[key],Array.prototype.slice.call(arguments, 1));
}
}
for (var key in manager) {
if (manager[key]) {
if (manager[key][func]) {
manager[key][func].apply(manager[key],Array.prototype.slice.call(arguments, 1));
}
var list=manager[key].ex()
for (var i = 0; i < list.length; i++) {
if (list[i][func]) {
list[i][func].apply(list[i],Array.prototype.slice.call(arguments, 1));
}
}
}
}
//if (item[name][func]) {,name
//console.table(item[name].clickable)
//item[name][func].apply(item[name],Array.prototype.slice.call(arguments, 2));
//}
}
return {
manager:manager,
item:item,
register:register,
register_manager:register_manager,
remove:remove,
runmouse:runmouse,
get:get,
have:have,
show:show,
}
})();

View File

@@ -0,0 +1,80 @@
var Func=Func||{};
Func.set_text_adjust=function (textid,text) {
var w=String(text).length;
set_self(textid,20,30*w,0,0);
set_self(textid,7,text,0,0);
};
Func.bindFather=function(child,father,type,offset) {
var offset=offset||0;
if (type === 'bottom-mid') {
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X+width/2-child_width/2;
set_self(child,18,startpos+offset,0,0)
}else if(type === 'left-mid'){
var height=get_self(father,21,0,0);//获取父控件高度
var Y= get_self(father,19,0,0);//获取父控件Y
var child_height=get_self(child,21,0,0);
var startpos=Y+height/2-child_height/2;
set_self(child,19,startpos+offset,0,0)
}else if(type === 'right'){
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X+width-child_width;
set_self(child,18,startpos+offset,0,0)
}else if(type === 'next_right'){
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X+width;
set_self(child,18,startpos+offset,0,0)
}else if(type === 'left'){
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X;
set_self(child,18,startpos+offset,0,0)
}else if(type === 'next_left'){
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var startpos=X-child_width;
set_self(child,18,startpos-offset,0,0)
}else if (type === 'mid') {
var X= get_self(father,18,0,0);//获取父控件X
var width=get_self(father,20,0,0);//获取父控件宽度
var child_width=get_self(child,20,0,0);
var height=get_self(father,21,0,0);//获取父控件高度
var Y= get_self(father,19,0,0);//获取父控件Y
var child_height=get_self(child,21,0,0);
set_self(child,18,X+width/2-child_width/2+offset,0,0)
set_self(child,19,Y+height/2-child_height/2+offset,0,0)
}
};
//-------------------------------------------------------------//
//获取一个控件的位置属性
//-------------------------------------------------------------//
function GS(spid){
var result={};
result.width=get_self(spid,20,0,0);
result.height=get_self(spid,21,0,0);
result.startX=get_self(spid,18,0,0);
result.endX=get_self(spid,18,0,0)+get_self(spid,20,0,0);
result.startY=get_self(spid,19,0,0);
result.endY=get_self(spid,19,0,0)+get_self(spid,21,0,0);
result.text=get_self(spid,7,0,0);
result.can_click=get_self(spid,41,0,0);
result.is_show=get_self(spid,37,0,0);
return result;
}

View File

@@ -0,0 +1,285 @@
//滑动
//-------------------------------------------------------------//
var SlideBar=function(desc){
this.desc=desc||"";
var btn=0,
bar=0,
text=0;
var data=[];
var oneFunc,
lastFunc;
var aline=false;
var frontValue=0;
var behindVlue=0;
this.currentValue=0;
this.currentValue_index=0;
var next_id=0;
var before_id=0;
var canclick=true;
this.init=function(obj){
btn=obj.btnId||0;
bar=obj.barId||0;
text=obj.textId||0;
next_id=obj.nextId||0;
before_id=obj.beforeId||0;
aline=obj.aline||false;
data=obj.data||[0,0];
oneFunc=obj.oneFunc||function(){return 0;};
frontValue=obj.frontValue||0;
behindVlue=obj.behindVlue||data.length-1;
var btnWidth=get_self(btn,20,0,0);
var barWidth=get_self(bar,20,0,0);
var btnHeight=get_self(btn,21,0,0);
var barHeight=get_self(bar,21,0,0);
var btnX=get_self(btn,18,0,0);
var btnY=get_self(btn,19,0,0);
var barX=get_self(bar,18,0,0);
var barY=get_self(bar,19,0,0);
var y= barY+barHeight/2-btnHeight/2;
var x= barX-btnWidth/2;
set_self(btn,18,x,0,0);
set_self(btn,19,y,0,0);
this.set_text(data[0]);
if (aline) {
//textWidth(get_self(text,7,0,0),text);
Func.bindFather(text,btn,"mid");
}
if (behindVlue>=frontValue) {
this.set_value(frontValue);
}
};
this.set_data=function(o_data){
data=o_data;
frontValue=0;
behindVlue=data.length-1;
this.set_value(this.currentValue_index);
this.currentValue=data[this.currentValue_index];
//textWidth(get_self(text,7,0,0),text);
};
this.set_text=function(ta){
var w=String(ta).length;
set_self(text,20,30*w,0,0);
set_self(text,7,ta,0,0);
}
this.get_data=function(){
return data;
}
this.hide_btn=function(){
set_self(btn,37,0,0,0);
this.can_click(false);
}
this.show_btn=function(){
if (get_self(bar,37,0,0)==1) {
set_self(btn,37,1,0,0);
}
this.can_click(true);
}
this.hide_text=function(){
set_self(text,37,0,0,0);
}
this.show_text=function(){
set_self(text,37,1,0,0);
}
this.can_click=function(click){
canclick=click;
}
this.set_limit=function(limit){
frontValue=limit.left||0;
behindVlue=limit.right||data.length-1;
if (behindVlue>=frontValue) {
this.set_value(frontValue);
//currentValue=data[frontValue];
}
}
this.set_value=function(item){
var rate=get_self(bar,20,0,0)/((data.length-1)*2);//一份的长度
var length=item*rate*2+get_self(bar,18,0,0);
set_self(btn,18,length-get_self(btn,20,0,0)/2,0,0);
oneFunc(data[item],data);
this.set_text(data[item]);
//textWidth(get_self(text,7,0,0),text);
this.currentValue=data[item];
this.currentValue_index=item;
}
this.mouseup=function(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2){
if (spid_up===spid_down && spid_up===next_id&&canclick) {
var item=this.currentValue_index;
item+=1;
if (item<frontValue) {
item=frontValue;
}else if (item>behindVlue) {//data.length-1
item=behindVlue;
}
this.set_value(item);
}
if (spid_up===spid_down && spid_up===before_id&&canclick) {
var item=this.currentValue_index;
item-=1;
if (item<frontValue) {
item=frontValue;
}else if (item>behindVlue) {//data.length-1
item=behindVlue;
}
this.set_value(item);
}
if (spid_up===spid_down && spid_up===bar&&canclick) {
var ux=upx-get_self(bar,18,0,0);
var rate=get_self(bar,20,0,0)/((data.length-1)*2);//一份的长度
var item=Math.round(parseInt(ux/rate)/2);//](get_self(btn,18,0,0)+get_self(btn,20,0,0)/2)
if (item<frontValue) {
item=frontValue;
}else if (item>behindVlue) {//data.length-1
item=behindVlue;
}
var length=item*rate*2+get_self(bar,18,0,0);
oneFunc(data[item],data)
this.currentValue=data[item];
this.currentValue_index=item;
this.set_text(data[item]);
set_self(btn,18,length-get_self(btn,20,0,0)/2,0,0);
//oneFunc(data[item]);
if (aline) {
//textWidth(get_self(text,7,0,0),text);
Func.bindFather(text,btn,"mid");
}
}
}
this.mousemove=function(gameid, spid, downx, downy, movex,movey ,timelong,offmovex, offmovey, no1){
if ( spid===btn&&canclick) {
var rate=get_self(bar,20,0,0)/((data.length-1)*2);//一份的长度
var item=parseInt((movex-get_self(bar,18,0,0))/rate);//](get_self(btn,18,0,0)+get_self(btn,20,0,0)/2)
item=Math.round(item/2);//ceil
if (item<frontValue) {
item=frontValue;
}else if (item>behindVlue) {
item=behindVlue;
}
var length=item*rate*2+get_self(bar,18,0,0);
oneFunc(data[item],data);
this.currentValue=data[item];
this.currentValue_index=item;
this.set_text(data[item]);
set_self(spid,18,length-get_self(btn,20,0,0)/2,0,0);
//oneFunc(data[item]);
if (aline) {
//textWidth(get_self(text,7,0,0),text);
Func.bindFather(text,btn,"mid");
}
//这里是滑动 ---------
//var length=offmovex;
//if ((get_self(btn,18,0,0)+get_self(btn,20,0,0)/2+offmovex)<get_self(bar,18,0,0)){
//length=-get_self(btn,18,0,0)-get_self(btn,20,0,0)/2+get_self(bar,18,0,0);
//}
//if ((get_self(btn,18,0,0)+get_self(btn,20,0,0)/2+offmovex)>(get_self(bar,18,0,0)+get_self(bar,20,0,0))){
//length= -get_self(btn,18,0,0)-get_self(btn,20,0,0)/2+(get_self(bar,18,0,0)+get_self(bar,20,0,0));
//}
//var rate=(get_self(btn,18,0,0)+get_self(btn,20,0,0)/2-get_self(bar,18,0,0))/get_self(bar,20,0,0);//多少分
//oneFunc(parseInt(rate*100));
//set_self(spid,18,length,1,0);
//set_self(text,7,parseInt(rate*100),0,0);
//这里是滑动---------
}
}
};
SB=app.register("TopValue",new SlideBar(""));
SB2=app.register("TopValue2",new SlideBar(""));
SB3=app.register("TopValue3",new SlideBar(""));
//===============================
var Input=function(desc){
this.desc=desc;
this.doorid=[];
this.valueid=-1;
this.limite=[0,99999];
this.current=-1;
this.lableid=-1;
this.title='';
this.realtitle='';
this.warning='',
this.success=function(){}
this.failed=function(){}
this.init=function(obj){
this.doorid=obj.door||this.doorid;
this.valueid=obj.value||this.valueid;
this.lableid=obj.lable||this.lableid;
this.realtitle=obj.title||'';
this.warning=obj.warning||'';
this.limite=obj.limite||this.limite;
this.current=this.limite[0];
this.success=obj.success||function(){}
this.failed=obj.failed||function(){}
if (this.valueid>0) {
Func.set_text_adjust(this.valueid,this.current);
this.success(this.current);
}
this.title=this.realtitle+'('+this.limite[0]+','+this.limite[1]+')';
if (this.lableid>0) {
set_self(this.lableid,7,this.title);
}
}
}
Input.prototype.setValue=function(type){
if (this.valueid<=0) {
return;
}
switch (type){
case 0:
this.current=this.limite[0];
Func.set_text_adjust(this.valueid,this.current);
this.success(this.current);
break;
case 1:
this.current=this.limite[1];
Func.set_text_adjust(this.valueid,this.current);
this.success(this.current);
break;
}
}
Input.prototype.updateLimted=function(value){
if (this.lableid<=0||this.valueid<=0) {
return;
}
this.limite=value||this.limite;
this.title=this.realtitle+'('+this.limite[0]+','+this.limite[1]+')';
set_self(this.lableid,7,this.title);
if (this.current<this.limite[0]||this.current>this.limite[1]) {
this.current=this.limite[0];
Func.set_text_adjust(this.valueid,this.current);
}
}
Input.prototype.mouseup=function(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2){
if (this.doorid.indexOf(spid_up)!=-1) {
this.openInput();
}
}
Input.prototype.openInput=function(){
var that=this;
Utl.openInputPanel(that.title,function (value) {
if (value>=that.limite[0]&&value<=that.limite[1]) {
that.current=value;
Func.set_text_adjust(that.valueid,value);
that.success(value);
Utl.closeInputPanel();
}else{
that.failed(value);
Utl.openTips(that.warning,2000)
}
})
}
sb1=app.register("In1",new Input(""));
sb2=app.register("In2",new Input(""));
sb3=app.register("In3",new Input(""));

View File

@@ -0,0 +1,434 @@
var RoomConfig = {
roomcode: 100000,
roomtype: [],
room_name_type: {},
turns: 0,
people: 2,
}
/*房间号,局数,游戏玩法,人数*/
function RoomInit(roomtype) {
RoomConfig.roomcode = Desk.roomcode || 100000;
if (Desk.roomtype && Desk.roomtype.length > 0) {
RoomConfig.roomtype = Desk.roomtype;
} else if (roomtype && roomtype.length > 0) {
RoomConfig.roomtype = roomtype;
} else {
RoomConfig.roomtype = [];
}
(function (roomtype) {
RoomConfig.turns = roomtype[1] * 8 || 0;
var peoples = [4, 4, 3, 2]
RoomConfig.people = (peoples[roomtype[6]]) || 4;
RoomConfig.room_name_type.jushu = roomtype[1];//局数
RoomConfig.room_name_type.buy_horse = roomtype[2];//买马
RoomConfig.room_name_type.limit = roomtype[3];//精分
RoomConfig.room_name_type.horse = roomtype[5];//几匹马
RoomConfig.room_name_type.top_limit = roomtype[6];//封顶 人数
RoomConfig.room_name_type.host2 = roomtype[7];//庄家翻倍
RoomConfig.room_name_type.base_score = roomtype[8];//底分
RoomConfig.room_name_type.piao = roomtype[9];//底分
RoomConfig.room_name_type.jia = roomtype[10];//底分
RoomConfig.room_name_type.start_hu = roomtype[11];//底分
RoomConfig.room_name_type.start_hu_arr = roomtype[12];//底分
RoomConfig.room_name_type.star = roomtype[13];//底分
RoomConfig.room_name_type.qiangganghu = roomtype[15];//底分
})(RoomConfig.roomtype);
}
//房间接口
var RoomFunc = {};
//房间变量池
var RoomPool={};
//可能会执行很多次
//点击,永远可用
RoomFunc.c_click = function (spid_up, upx, upy, downx, downy, spid_down) {
if(spid_up == 2998){
d.show_xiao_settle(1);
d.show_timeready(1);
}
if (spid_up != 2999 && get_self(1247,37)) {//听牌显示
set_group(237, 37, 0, 0, 0);
}
if (spid_up == 2233 ) {//托管
RoomFunc.tuoguan();
}
if (d.replay==0 && (spid_up == 2231 || spid_up == 2232 || (spid_up >= 1013 && spid_up <= 1018) || (spid_up >= 791 && spid_up <= 799) || (spid_up >= 1131 && spid_up <= 1139))) {//取消托管
d.OverTime=0;
d.jishi_chu=0;
set_group(221, 37, 0, 0, 0);
set_self(2233,43,1,0,0);
d.show_my13card();
d.show_14card();
}
if (spid_up == 2999) {//听牌显示
if (!get_self(1247,37)) {
d.show_hu_card(d.Ting_ui);
} else {
set_group(237, 37, 0, 0, 0);
}
}
if (spid_up == 2509) {//小局2
d.horse_time=0;
d.compare_jing_time3=0;
if (get_self(1598, 37) == 1) {
d.a.show_history3_1();
} else {
d.show_xiao1_settle(1);
}
}
if (spid_up == 2510) {//小局2
set_group(260,37,0,0,0);
}
if (spid_up == 2656) {//精牌详情
d.horse_time=0;
d.compare_jing_time3=0;
set_self(2656,37,0);
d.show_xiao2_settle(1);
set_group(214,41,0,0,0);
set_self(2657,41,1);
set_self(2787,41,1);
//if (get_self(1598,37) == 1) {
//d.a.show_history3_2();
//}else {
//d.show_xiao2_settle(1);
//}
}
if ((spid_up == 2787 || spid_up == 2657) && Desk.roomtype[19] != 1) {//关闭精牌详情
set_self(2656,37,1);
set_group(214,37,0,0,0);
}
if (spid_up == 233) {//结算
d.compare_jing_time3=0;
}
//console.log("roomfunc 点击,永远可用");
}
//点击,游戏开始之后可用
RoomFunc.g_click = function (spid_up, upx, upy, downx, downy, spid_down) {
//console.log("roomfunc 点击,游戏开始之后可用");
}
//开战,是否发牌
RoomFunc.make_war = function (_msg) {
console.log("roomfunc RoomConfig一进去就开战");
return true;
}
//重连重绘之前,游戏开始后收到包就执行
RoomFunc.running_before = function (_msg) {
console.log("roomfunc RoomConfig重连重绘之前游戏开始后收到包就执行");
}
//重连重绘
RoomFunc.re_connect = function () {
console.log("roomfunc RoomConfig重连重绘")
}
//重连重绘之后,游戏开始后收到包就执行
RoomFunc.running_after = function (_msg) {
console.log("roomfunc RoomConfig重连重绘之后游戏开始后收到包就执行")
}
//点击牌的判断
RoomFunc.clickpai_before = function (spid) {
//console.log("roomfunc RoomConfig点击牌的判断");console.log(spid);
if (Desk.roomtype[19] || d.replay!=0) {
return false;
}
if(get_self(1965, 37) == 1 || d.baoting[0] == 1 || d.baoting[1] == 1 || d.baoting[2] == 1 || d.baoting[3] == 1 || (d.baoting[C_Player.seat] == 2 && spid < 949&&(!d.baoting[4]||(d.baoting[4]&&!d.baoting[4].length))))
{
return false;
}
else
{
if(d.baoting[0] == 0 && d.baoting[1] == 0 && d.baoting[2] == 0 && d.baoting[3] == 0){
return true;
}
if (d.baoting[4]&&d.baoting[4].length&&d.identity[4]==C_Player.seat&&d.baoting[C_Player.seat]==2) {
var pos=d.baoting[4].indexOf(get_self(spid,43) );
if (pos!=-1) {
return true;
}
}else {
if (d.final_hu[0] == -1) {
return true;
}else {
return false;
}
}
return false;
}
}
//点击操作按钮,显示出操作图案之后
RoomFunc.operate_before = function (spid, num) {
if(num == 4){
num = 1;
}
if (num == 8 || num == 7) {
//return;
num = 4;
}
if (num == 20) {
// num = 8;
return ;
}
if(num == 6 || num == 5){
num = 3;
}
if(num == 11){
num = 5;
}
if (!AM.is_play(spid)) {
AM.remove(spid, false)
//var dh_bz = [0, 0, 634, 633, 630, 633, 633, 631, 631, 632, 632, 9];//1吃,3杠,5胡,7碰,9听,
//var a=1;
AM.add(spid).bfunc(function () {
set_self(spid, 1, 630, 0, 0);
set_self(spid, 37, 1, 0, 0);
set_self(spid, 33, 100, 0, 0);
set_self(spid, 43, (num*2)-1, 0, 0);
}).zoom(150, 2).zoom(50,3).wait(35,function(){
set_self(spid,37,0,0,0);
AM.cls_id(spid);
}).start();
}
//var dh_bz2 = [0, 0, 634, 633, 630, 633, 633, 631, 631, 632, 632, 9];//1吃,3杠,5胡,7碰,9听,
if (!AM.is_play(spid + 61)) {
AM.add(spid + 61).wait(6, function () {
set_self(spid + 61, 1, 630, 0, 0);
set_self(spid + 61, 18, get_self(spid, 18), 0, 0);
set_self(spid + 61, 19, get_self(spid, 19), 0, 0);
set_self(spid + 61, 37, 1, 0, 0);
set_self(spid + 61, 43, num*2, 0, 0);
set_self(spid + 61, 35, 255, 0, 0);
set_self(spid + 61, 33, 0, 0, 0);
}).alpha(200, 3).zoom(200, 7).wait(2, function () {
//set_self(spid+61,43,4,0,0);
set_self(spid + 61, 37, 0, 0, 0);
//set_self(spid, 37, 0, 0, 0);
//AM.cls_id(spid);
AM.cls_id(spid + 61);
}).start();
}
if (!AM.is_play(spid + 663)) {
AM.add(spid + 663).wait(10,function () {
set_self(spid + 663, 37, 1, 0, 0);
set_self(spid + 663, 1, 640, 0, 0);
set_self(spid + 663, 18, get_self(spid,18)+50, 0, 0);
set_self(spid + 663, 19, get_self(spid,19)+60, 0, 0);
set_self(spid + 663, 33, 50, 0, 0);
set_self(spid + 663, 35, 255, 0, 0);
}).zoom(200, 15).alpha(0, 15).wait(1, function () {
set_self(spid + 663,37,0,0,0);
AM.cls_id(spid + 663);
}).start();
}
if((d.last_operate[0] == 2|| d.last_operate[0] == 4) && d.final_hu[0]==-1){
//加杠动画 明杠动画
if (!AM.is_play(2394)) {
AM.add(2394).bfunc(function(){
set_self(2394,37,1,0,0);
set_self(2394,43,2,0,0);
}).wait(3,function(){
set_self(2394,43,3,0,0);
Utl.playSound("00302.mp3");
}).wait(3,function(){
set_self(2394,43,4,0,0);
}).wait(3,function(){
set_self(2394,43,5,0,0);
}).wait(3,function(){
set_self(2394,43,6,0,0);
}).wait(3,function(){
set_self(2394,43,2,0,0);
}).wait(3,function(){
set_self(2394,43,3,0,0);
}).wait(3,function(){
set_self(2394,43,4,0,0);
}).wait(3,function(){
set_self(2394,43,5,0,0);
}).wait(3,function(){
set_self(2394,43,6,0,0);
}).wait(3,function(){
}).func(function() {
set_self(2394,37,0,0,0);
set_self(2394,43,2,0,0);
AM.cls_id(2394);
}).start();
}
}
if (d.last_operate[0] == 5 && d.final_hu[0] == -1) {
//暗杠动画
if (!AM.is_play(2674)) {
AM.add(2674).bfunc(function () {
set_self(2674, 37, 1, 0, 0);
set_self(2674, 43, 1, 0, 0);
Utl.playSound("00" + 303 + ".mp3");
}).wait(3, function () {
set_self(2674, 43, 2, 0, 0);
Utl.playSound("00303.mp3");
}).wait(3, function () {
set_self(2674, 43, 3, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 4, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 5, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 6, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 1, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 2, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 3, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 4, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 5, 0, 0);
}).wait(3, function () {
set_self(2674, 43, 6, 0, 0);
}).wait(3, function () {
}).func(function () {
set_self(2674, 37, 0, 0, 0);
set_self(2674, 43, 1, 0, 0);
AM.cls_id(2674);
}).start();
}
}
}
//点击操作按钮
RoomFunc.operate_click = function (spid_up) {
if(get_self(1965, 37) == 1)
{return false;}
else
{return true;}
}
//战局开始,牌显示之前
RoomFunc.showcard_before = function () {
//一般执行14次
//console.log("roomfunc RoomConfig战局开始牌显示之前");
if (Utl.getIsInfinite() == 1||Desk.roomtype[14]==3||Desk.roomtype[14]==4){
for(var i=0;i<4;i++){
if(d.sieves[2] == 0 && d.sieves[3] == -1 && d.sieves[4] == 0 && d.robot[i] ==1 && i == d.identity[4] && d.click_sieves == 0){
for(var j=0;j<4;j++){
if(d.robot[j]==-1 && !Desk.PlayerList[j].onstate){
if (C_Player.seat == j) {
d.click_sieves = 1;//庄家掷骰子选人选牌蹲专用
d.click(1363);
}
}
}
}
}
}
if(d.sieves[2] == 0 && d.sieves[3] == -1 && d.sieves[4] == 0 && d.click_sieves == 0 && d.status!=3)
{
d.click_sieves = 1;//庄家掷骰子选人选牌蹲专用
if (d.replay == 0){
//set_self(1363, 37, 1, 0, 0);
d.click(1363);
}
}
return d.showcard_before;
}
//战局开始,牌显示之后
RoomFunc.showcard_after = function () {
//执行一次
console.log("roomfunc RoomConfig战局开始牌显示之后");
}
//自己有摸牌,且是自己的控制權
RoomFunc.mopai_before = function (first_card, seat) {
//最新的牌
console.log("roomfunc RoomConfig自己有摸牌且是自己的控制權", first_card, seat);
}
//自己沒摸牌,且是自己的控制權
RoomFunc.nomopai_before = function (seat) {
console.log("roomfunc RoomConfig自己沒摸牌", seat);
}
//要不要顯示战绩,服务器判断要不要买马动画
RoomFunc.zhanji_before = function () {
console.log("roomfunc RoomConfig要不要顯示战绩");
if(get_self(2377, 37) == 0 && Desk.roomtype[19]!=1)
{set_self(2377, 37, 1);}
if (!Desk.roomtype[19]) {
d.compare_jing_time3=1;
}else {
d.show_xiao_settle(1);
d.show_timeready();
}
return false;
}
//一小局的结束,显示了牌之后,还没有显示动画
RoomFunc.turn_over = function () {
for (var i = 936; i <= 954; i++) {
set_self(i, 1, 503, 0, 0);
}
}
//游戲中战绩显示,在其他数据全部显示之后
RoomFunc.game_show_settle = function (turn, identity, names, avatar, playerids, hand, turn_point, buyHorse, winHorse, Horse_vic_def, final_hu, hu_note, hu_note_gang, roomtype, many_hu, start_hu, piao, sea_hua, peng_chi_num, hu_note_gang_jing, putJing, jing, jing_reduce) {
}
//大厅战绩显示,在其他数据全部显示之后,与上面的
RoomFunc.game_out_show_settle = function (js, js1) {
}
//绘制接口
RoomFunc.draw = function(spid){
}
//超时自动出牌
RoomFunc.Overtime_chupai = function(){
var Overtime_chupai = Desk.roomtype[18];
if (Overtime_chupai==2) {//快版
return true;
}
return false;
}
//托管
RoomFunc.tuoguan = function(mode){
mode=mode || 0;
if (get_self(2233,43)==1 && mode==0) {
set_self(2233,43,2,0,0)
d.show_tuoguan();
}else if(mode==0 || mode==1){
set_self(2233,43,1,0,0)
d.OverTime=0;
set_group(221, 37, 0, 0, 0);
d.jishi_chu = 0;
}
}

View File

@@ -0,0 +1,514 @@
//防作弊
d.send_ip = function (leave) {
if (C_Player.seat == -1) {
return;
}
if (leave == undefined)
{leave=-1;}
d.set_png_pos(C_Player.seat);
var ipids = [1770, 1771, 1772, 1773];
var ips = [];
var seat = C_Player.seat;//lon1经度lat1纬度lon2经度lat2纬度
var msg = -1;
if (gameabc_face.ip) {
d.ip[seat] = gameabc_face.ip;
msg = d.ip[seat];
}
// if(C_Player.ip)
// {d.ip[seat]=C_Player.ip;
// msg=d.ip[seat];
// }
else {
d.ip = [];
for (var i = 0; i < 4; i++) {
set_self(ipids[d.pos[i]], 37, 0, 0, 0);
ips[i] = ["127.0.0.1" + String(4 - 1), i];
}
return;
}
//d.addr[seat]=[28.62354,115.900333];
//msg=d.addr[seat];
if (leave != undefined && leave != C_Player.seat) {
// set_self(ipids[d.pos[leave]], 37, 0, 0, 0);
ips[leave] = ["127.0.0.1", leave];
d.ip[leave] = [];
//return;
}
if (d.replay == 0) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "ip",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"ip": msg,
"leave":leave
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
}
d.show_ip = function (leave) {
if (C_Player.seat == -1) {
return;
}
d.set_png_pos(C_Player.seat);
var ipids = [1770, 1771, 1772, 1773];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if(person==2)
{ipids = [1770, 1772, 1772, 1772];}
var ips = [];
for (var i = 0; i < 4; i++) {
// if(Desk.PlayerList[i].ip!=undefined && Desk.PlayerList[i].ip.length>0)
// {set_self(ipids[d.pos[i]],37,1,0,0);
// set_self(ipids[d.pos[i]],43,3,0,0);
// ips[i]=[Desk.PlayerList[i].ip,i];
// }
if (d.ip[i] != undefined && d.ip[i].length > 0 && get_self(376 + d.pos[i], 37, 0, 0, 0) == 1) {
//set_self(ipids[d.pos[i]], 37, 1, 0, 0);
//set_self(ipids[d.pos[i]], 43, 3, 0, 0);
ips[i] = [d.ip[i], i];
//Desk.PlayerList[i].ip=d.ip[i];
}
else {
//set_self(ipids[d.pos[i]], 37, 0, 0, 0);
ips[i] = ["z127.0.0.1", i];
}
}
if (leave != undefined) {
//set_self(ipids[d.pos[leave]], 37, 0, 0, 0);
ips[leave] = ["z127.0.0.1", leave];
}
ips.sort(function (a, b) {
return a[0].localeCompare(b[0])
});
var n = [0];
var f = 2;
for (var i = 1; i < 4; i++) {
if (ips[0][0] === ips[i][0] && ips[0][0] != "z127.0.0.1") {
var pos = ips[0][1];
//set_self(ipids[d.pos[pos]], 43, f, 0, 0);
var pos = ips[i][1];
//set_self(ipids[d.pos[pos]], 43, f, 0, 0);
n[n.length] = i;
}
}
if (n.length >= 4) {
return;
}
if (n.length > 1) {
f = 1;
}
for (var i = 2; i < 4; i++) {
var ban = 0;
for (var j = 0; j < n.length; j++) {
if (i == n[j]) {
ban = 1;
break;
}
}
if (ban == 0 && ips[1][0] === ips[i][0] && ips[1][0] != "z127.0.0.1") {
var pos = ips[1][1];
//set_self(ipids[d.pos[pos]], 43, f, 0, 0);
var pos = ips[i][1];
//set_self(ipids[d.pos[pos]], 43, f, 0, 0);
n[n.length] = i;
}
}
if (n.length > 1) {
f = 1;
}
for (var i = 3; i < 4; i++) {
var ban = 0;
for (var j = 0; j < n.length; j++) {
if (i == n[j]) {
ban = 1;
break;
}
}
if (ban == 0 && ips[2][0] === ips[i][0] && ips[2][0] != "z127.0.0.1") {
var pos = ips[2][1];
//set_self(ipids[d.pos[pos]], 43, f, 0, 0);
var pos = ips[i][1];
//set_self(ipids[d.pos[pos]], 43, f, 0, 0);
}
}
}
d.send_distance = function (leave) {
if (C_Player.seat == -1) {
return;
}
if (leave == undefined)
{leave=-1;}
d.set_png_pos(C_Player.seat);
var Jids = [1482, 1489, 1496, 1503];
var Mids = [1762, 1763, 1764, 1765];
var Ms = [1766, 1767, 1768, 1769];
var ips = [];
var seat = C_Player.seat;//lon1经度lat1纬度lon2经度lat2纬度
var msg = -1;
//gameabc_face.locationinfo={};
//gameabc_face.locationinfo.latitude=28.62354;gameabc_face.locationinfo.longitude=115.900333;
if (gameabc_face.locationinfo) {
if (gameabc_face.locationinfo.latitude && gameabc_face.locationinfo.longitude) {
var lon1 = gameabc_face.locationinfo.longitude;
var lat1 = gameabc_face.locationinfo.latitude;
d.addr[seat] = [lon1, lat1];
msg = d.addr[seat];
}
}
// if(C_Player.addr)
// {var lon1=C_Player.addr.longitude;
// var lat1=C_Player.addr.latitude;
// d.addr[seat]=[lon1,lat1];
// msg=d.addr[seat];
// }
else {
d.addr = [];
// for (var i = 0; i < 4; i++) {
// set_self(Jids[d.pos[i]], 37, 0, 0, 0);
// set_self(Mids[d.pos[i]], 37, 0, 0, 0);
// set_self(Ms[d.pos[i]], 37, 0, 0, 0);
// }
//return;
}
if (leave != undefined && leave !=-1 && leave != C_Player.seat) {
// set_self(Jids[d.pos[leave]], 37, 0, 0, 0);
// set_self(Mids[d.pos[leave]], 37, 0, 0, 0);
// set_self(Ms[d.pos[leave]], 37, 0, 0, 0);
d.addr[leave] = [];
}
if (d.replay == 0) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "addr",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"addr": msg,
"leave":leave
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
}
d.show_distance = function (leave) {
return;
if (C_Player.seat == -1) {
return;
}
d.set_png_pos(C_Player.seat);
var Jids = [1482, 1489, 1496, 1503];
var Mids = [1762, 1763, 1764, 1765];
var Ms = [1766, 1767, 1768, 1769];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if(person==2)
{Jids = [1482, 1496, 1496, 1496];
Mids = [1762, 1764, 1764, 1764];
Ms = [1766, 1768, 1768, 1768];
}
var ips = [];
if (leave != undefined && leave < 4) {
//set_self(Jids[d.pos[leave]], 37, 0, 0, 0);
//set_self(Mids[d.pos[leave]], 37, 0, 0, 0);
//set_self(Ms[d.pos[leave]], 37, 0, 0, 0);
d.addr[leave] = [];
}
var seat = C_Player.seat;//lon1经度lat1纬度lon2经度lat2纬度
// if(C_Player.addr)
// {var lon1=C_Player.addr.longitude;
// var lat1=C_Player.addr.latitude;
// d.addr[seat]=[lon1,lat1];
// }
if (d.addr[seat] && d.addr[seat].length > 0) {
var lon1 = d.addr[seat][0];
var lat1 = d.addr[seat][1];
d.addr[seat] = [lon1, lat1];
}
else {
d.addr = [];
for (var i = 0; i < 4; i++) {
set_self(Jids[d.pos[i]], 37, 0, 0, 0);
set_self(Mids[d.pos[i]], 37, 0, 0, 0);
set_self(Ms[d.pos[i]], 37, 0, 0, 0);
}
return;
}
//var addr=[[28.62354,115.900333],[28.62354,116.900333],[28.62354,118.900333],[24.62354,100.900333]];
//var lon1=addr[seat][0];
//var lat1=addr[seat][1];
for (var i = 0; i < 4; i++) {
// Desk.PlayerList[i].addr={};
// Desk.PlayerList[i].addr.longitude=addr[i][0];
// Desk.PlayerList[i].addr.latitude=addr[i][1];
//if(i!=seat && Desk.PlayerList[i].addr && Desk.PlayerList[i].addr.longitude)
if (i != seat && d.addr[i] && d.addr[i].length > 0 && get_self(376 + d.pos[i], 37, 0, 0, 0) == 1) {//var lon2=Desk.PlayerList[i].addr.longitude;
//var lat2=Desk.PlayerList[i].addr.latitude;
//var lon2=d.addr[i].longitude;
//var lat2=d.addr[i].latitude;
var lon2 = d.addr[i][0];
var lat2 = d.addr[i][1];
var Distance = d.GetDistance(lon1, lat1, lon2, lat2);
var l = String(Distance[0]).length;
set_self(1766 + d.pos[i], 37, 1, 0, 0);
set_self(1766 + d.pos[i], 7, Distance[0]);
set_self(1766 + d.pos[i], 20, l * 12, 0, 0);
set_self(Jids[d.pos[i]], 43, Distance[2], 0, 0)
if (Distance[2] == 1) {
set_self(1766 + d.pos[i], 18, get_self(Jids[d.pos[i]], 18, 0, 0, 0) + get_self(Jids[d.pos[i]], 21, 0, 0, 0), 0, 0);
}
else {
set_self(1766 + d.pos[i], 18, get_self(Jids[d.pos[i]], 18, 0, 0, 0) + get_self(Jids[d.pos[i]], 20, 0, 0, 0), 0, 0);
}
set_self(1766 + d.pos[i], 19, get_self(Jids[d.pos[i]], 19, 0, 0, 0) + 3, 0, 0);
set_self(1762 + d.pos[i], 37, 1, 0, 0);
set_self(1762 + d.pos[i], 43, Distance[1], 0, 0);
set_self(1762 + d.pos[i], 18, get_self(1766 + d.pos[i], 18, 0, 0, 0) + l * 12, 0, 0);
set_self(1762 + d.pos[i], 19, get_self(Jids[d.pos[i]], 19, 0, 0, 0), 0, 0);
set_self(Jids[d.pos[i]], 37, 1, 0, 0);
}
else {
set_self(1766 + d.pos[i], 37, 0, 0, 0);
set_self(1762 + d.pos[i], 37, 0, 0, 0);
set_self(Jids[d.pos[i]], 37, 0, 0, 0);
}
}
//var msg="";
//var msg1=["东家","南家","西家","北家"];
// for(var j=0;j<4;j++)
// {
// if(j!=seat)
// {var lon1=d.addr[j][0];
// var lat1=d.addr[j][1];
// for(var i=0;i<4;i++)
// {
//if(notice[j]==0 || notice[i]==0)
//{
// if(i!=j && i!=seat && d.addr[i] && d.addr[i].length>0)
// {var lon2=d.addr[i][0];
// var lat2=d.addr[i][1];
// var Distance=d.GetDistance(lon1,lat1,lon2,lat2);
// var l=String(Distance[0]).length;
//if(Distance[0]<=100 && Distance[1]==1)
//{msg=mag+msg1[j]+"和"+msg1[i]+"距离小于100米 ";}
////{msg=mag+Desk.PlayerList[j].nickname+"和"+Desk.PlayerList[i].nickname+"距离<100m ";}
// }
//}
// }
// }
// }
// if(msg.length>0)
// {GameUI.OpenTips(msg,3);}
}
d.show_distance_1=function(spid_up)
{
return;
d.set_png_pos_un(C_Player.seat);
var seat=d.pos_un[spid_up-376];
for(var i=0;i<4;i++)
{set_self(806+i,37,0,0,0);}
for(var i=0;i<4;i++)
{set_self(806+i,41,0,0,0);}
if(spid_up!=376 && d.addr && d.addr.length>1 && d.addr[seat] && d.addr[seat][0])
{set_self(806,37,1,0,0);
var msg="";
var msg0=["","<"];
var msg1=["m","km"];
var n=0;
var lon1=d.addr[seat][0];
var lat1=d.addr[seat][1];
for(var i=0;i<4;i++)
{console.log("1111");
if(i!=seat && d.addr[i] && d.addr[i].length>0 && Desk.PlayerList[i] && Desk.PlayerList[i].nickname)
{var lon2=d.addr[i][0];
var lat2=d.addr[i][1];
var Distance=d.GetDistance(lon1,lat1,lon2,lat2);
var name=d.getLen(Desk.PlayerList[i].nickname);
if(i==C_Player.seat)
{name="你";}
msg="他/她与"+name+"\n相距:"+msg0[Distance[2]-1]+Distance[0]+msg1[Distance[1]-1];
set_self(807+n,7,msg);
set_self(807+n,37,1,0,0);
n+=1;console.log("2222");
}
}
}
}
//lon1经度lat1纬度lon2经度lat2纬度
d.GetDistance = function (lon1, lat1, lon2, lat2) {
return;
lon1=Number(lon1);
lat1=Number(lat1);
lon2=Number(lon2);
lat2=Number(lat2);
var EARTH_RADIUS = 6378137;
var radLat1 = lat1 * Math.PI / 180.0;
var radLat2 = lat2 * Math.PI / 180.0;
var a = radLat1 - radLat2;
var b = lon1 * Math.PI / 180.0 - lon2 * Math.PI / 180.0;
var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
s = s * EARTH_RADIUS;
s = Math.round(s * 10000) / 10000;
s = parseInt(s);
var s1 = 1;
if (s >= 1000) {
s = Math.round(s / 1000);
s1 = 2;
}
var s2 = 1;
if (s1 == 1) {
if (s < 100) {
s = 100;
s2 = 2;
}
else {
s = Math.round(s / 100) * 100;
}
}
var r = [s, s1, s2];
return r;
}
//ln1经度、纬度ln2经度、纬度
d.GetDistance_xin = function (ln1, ln2) {
var lon1=Number(ln1[0]);
var lat1=Number(ln1[1]);
var lon2=Number(ln2[0]);
var lat2=Number(ln2[1]);
var EARTH_RADIUS = 6378137;
var radLat1 = lat1 * Math.PI / 180.0;
var radLat2 = lat2 * Math.PI / 180.0;
var a = radLat1 - radLat2;
var b = lon1 * Math.PI / 180.0 - lon2 * Math.PI / 180.0;
var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
s = s * EARTH_RADIUS;
s = Math.round(s * 10000) / 10000;
s = parseInt(s);
var s2 = parseInt(s);
var s3 = 1;
if (s >= 1000) {
s = Math.round(s / 1000);
s2 = parseInt(s);
s3 = 2;
}
var s1 = 1;
if (s3 == 1) {
if (s2 < 100) {
s2 = 100;
s1 = 2;
}
else {
s2 = Math.round(s / 100) * 100;
}
}
else if(s3 == 2){
if(s2<=999){
if (s2 < s) {
s1 = 2;
}
else if (s2 == s) {
s1 = 1;
}
else if (s2 > s) {
s1 = 3;
}
}
else if(s2>999){
s1=3;
s2=999;
}
}
var r = [s1, s2, s3];
return r;
}
//定位Gps
d.show_distance_xin=function()
{
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if(d.addr && d.addr.length>1 && d.addr[C_Player.seat] && d.addr[C_Player.seat][0])
{
set_self(701,37,1,0,0);
set_self(702,37,1,0,0);
var head_id = [376, 377, 378, 379];
var m=0;
if(person==2) {
set_self(703, 1, get_self(376,1), 0, 0);
set_self(703, 37, get_self(376,37), 0, 0);
if(get_self(377,37)){
set_self(705, 1, get_self(377,1), 0, 0);
set_self(705, 37, get_self(377,37), 0, 0);
}else if(get_self(379,37)){
set_self(705, 1, get_self(379,1), 0, 0);
set_self(705, 37, get_self(379,37), 0, 0);
}
}else {
for (var i = 0; i < 4; i++) {
if(d.pos_un[i]<person){
set_self(703 + m, 1, get_self(head_id[i],1), 0, 0);
set_self(703 + m, 37, get_self(head_id[i],37), 0, 0);
}
m++;
}
}
var addr=[];
for(var i=0;i<4;i++){
if(d.pos_un[i]<person){
addr[addr.length]=d.addr[d.pos_un[i]];
}
else {
addr[addr.length]=[];
}
}
var n=0;
if(person!=2){
for(var i=0;i<3;i++)
{
for(var j=3;j>i;j--)
// if(i!=seat && d.addr[i] && d.addr[i].length>0 && Desk.PlayerList[i] && Desk.PlayerList[i].nickname)
{
if(addr[i].length && addr[j].length)
{
var Distance=d.GetDistance_xin(addr[i],addr[j]);
set_self(711+3*n,43,Distance[0]);
set_self(712+3*n,7,Distance[1]);
set_self(713+3*n,43,Distance[2]);
set_self(711+3*n,37,1);
set_self(712+3*n,37,1);
set_self(713+3*n,37,1);
set_self(729+n,37,1);
}
n++;
}
}
}else if(person==2){
if(addr[0].length && addr[1].length) {
Distance=d.GetDistance_xin(addr[0],addr[1]);
set_self(714,43,Distance[0]);
set_self(715,7,Distance[1]);
set_self(716,43,Distance[2]);
set_self(714,37,1);
set_self(715,37,1);
set_self(716,37,1);
set_self(730,37,1);
}
}
}
}

View File

@@ -0,0 +1,254 @@
//显示上次出牌提示
d.show_ponit_out=function()
{
if (Desk.roomtype[19]) {
return ;
}
if(Desk.stage!=0 && d.user_ctrl[4+C_Player.seat]==0)
{
if(d.last_operate[0]==0)
{set_self(1022,37,1,0,0);
set_self(1022,51,0,0,0);
var sea_seat=d.last_operate[2];
var lastid=d.get_sea_lastid(sea_seat);
if(d.last_operate[1] && d.last_operate[1]>=50)
{lastid=d.get_sea_hua_lastid(sea_seat);}
var x=get_self(lastid,18,0,0,0)+ifast_div(get_self(lastid,20,0,0,0),2)-17;
set_self(1022,18,x,0,0);
set_self(1022,19,get_self(lastid,19,0,0,0)-33,0,0);
//play_ani123(1,1022,19,get_self(lastid,19,0,0,0)-33,get_self(lastid,19,0,0,0)-33+5,500,0,0,1);
if(get_self(lastid,19,0,0,0)<39)
{set_self(1022,19,get_self(lastid,19,0,0,0)-33+36+39,0,0);
set_self(1022,51,1,0,0);
//play_ani123(1,1022,19,get_self(lastid,19,0,0,0)-33+36+39,get_self(lastid,19,0,0,0)-33+36+39-5,500,0,0,1);
}
}
else if(d.last_operate[0]==1 || d.last_operate[0]==2 || d.last_operate[0]==4 || d.last_operate[0]==5)
{set_self(1022,37,1,0,0);
set_self(1022,51,0,0,0);
var seat=d.last_operate[2];
var ids=[953,971,989,1007];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[d.roomtype[6]] || 4;
if(person==2)
{ids=[953,989,989,989];
}
var id=ids[d.pos[seat]];
var f=d.last_operate[1];
var n=0;
var lastid=0;
for(var i=0;i<19;i++)
{
if(get_self(id-i,37,0,0,0)==1)
{
if(d.last_operate[0]!=1 && get_self(id-i,43,0,0,0)==60)
{
if(get_self(id-i-1,37,0,0,0)==1 && get_self(id-i-1,43,0,0,0)==f)
{n=2;
lastid=id-i-1;
}
else if(get_self(id-i-1,37,0,0,0)==1 && d.an_gang_num[seat]>0)
{n=2;
lastid=id-i-1;
}
}
else if(get_self(id-i,43,0,0,0)==f)
{n+=1;
lastid=id-i;
}
if(n==2)
{var x=get_self(lastid,18,0,0,0)+ifast_div(get_self(lastid,20,0,0,0),2)-17;
set_self(1022,18,x,0,0);
set_self(1022,19,get_self(lastid,19,0,0,0)-33,0,0);
//play_ani123(1,1022,19,get_self(lastid,19,0,0,0)-33,get_self(lastid,19,0,0,0)-33+5,500,0,0,1);
if(get_self(lastid,19,0,0,0)<39)
{set_self(1022,19,get_self(lastid,19,0,0,0)-33+36+39,0,0);
set_self(1022,51,1,0,0);
//play_ani123(1,1022,19,get_self(lastid,19,0,0,0)-33+36+39,get_self(lastid,19,0,0,0)-33+36+39-5,500,0,0,1);
}
break;
}
}
}
}
else if(d.last_operate[0]==3)
{set_self(1022,37,1,0,0);
set_self(1022,51,0,0,0);
var seat=d.last_operate[2];
var ids=[953,971,989,1007];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[d.roomtype[6]] || 4;
if(person==2)
{ids=[953,989,989,989];
}
var id=ids[d.pos[seat]];
var f=d.last_operate[1];
var n=0;
var lastid=0;
for(var i=0;i<19;i++)
{
if(get_self(id-i,37,0,0,0)==1)
{
if(get_self(id-i,43,0,0,0)==f)
{lastid=id-i;
var x=get_self(lastid,18,0,0,0)+ifast_div(get_self(lastid,20,0,0,0),2)-17;
set_self(1022,18,x,0,0);
set_self(1022,19,get_self(lastid,19,0,0,0)-33,0,0);
//play_ani123(1,1022,19,get_self(lastid,19,0,0,0)-33,get_self(lastid,19,0,0,0)-33+5,500,0,0,1);
if(get_self(lastid,19,0,0,0)<39)
{set_self(1022,19,get_self(lastid,19,0,0,0)-33+36+39,0,0);
set_self(1022,51,1,0,0);
//play_ani123(1,1022,19,get_self(lastid,19,0,0,0)-33+36+39,get_self(lastid,19,0,0,0)-33+36+39-5,500,0,0,1);
}
break;
}
}
}
}
if(get_self(1475,37,0,0,0)==1)
{set_self(1022,37,1,0,0);
set_self(1022,51,0,0,0);
var lastid=1475;
var x=get_self(lastid,18,0,0,0)+ifast_div(get_self(lastid,20,0,0,0),2)-17;
set_self(1022,18,x,0,0);
set_self(1022,19,get_self(lastid,19,0,0,0)-33,0,0);
//play_ani123(1,1022,19,get_self(lastid,19,0,0,0)-33,get_self(lastid,19,0,0,0)-33+5,500,0,0,1);
if(get_self(1475,19,0,0,0)<39)
{set_self(1022,19,get_self(lastid,19,0,0,0)-33+36+39,0,0);
set_self(1022,51,1,0,0);
//play_ani123(1,1022,19,get_self(lastid,19,0,0,0)-33+36+39,get_self(lastid,19,0,0,0)-33+36+39-5,500,0,0,1);
}
}
}
}
//是否顺子
d.straight3=function (arr1,card)
{
var arr2=[[card-2,card-1,card],[card-1,card,card+1],[card,card+1,card+2]];
//吃风牌
if(card>=30 && card<40)
{var card0=[];
for(var i=0;i<4;i++)
{
if(31+i!=card)
{card0[card0.length]=31+i;
}
}
arr2=[[card,card0[0],card0[1]],[card,card0[0],card0[2]],[card,card0[1],card0[2]]];
d.ord(arr2[0]);d.ord(arr2[1]);d.ord(arr2[2]);
}
var ban=[0,0,0]
for(var i=0;i<3;i++)
{
for(var j=0;j<3;j++)
{
if(arr2[i][j]!=card && arr1.indexOf(arr2[i][j])==-1)
{ban[i]=1;
break;
}
}
}
var r=[];
for(var i=0;i<3;i++)
{
if(ban[i]==0)
{r[r.length]=d.c(arr2[i]);
}
}
return r;
}
//是否刻子
d.same=function (arr1,card)
{var n=0;
var arr2=d.c(arr1);
for(var i=0;i<3;i++)
{var pos=arr2.indexOf(card);
if(pos!=-1)
{arr2.splice(pos,1);
n+=1;
}
}
return n;
}
//可吃的牌型
d.eat=function (arr,card)
{var arr0=d.straight3(arr,card);
return arr0;
}
//可碰的牌型
d.bump=function (arr,card)
{var exist=d.same(arr,card);
var arr0=[];
if(exist>=2)
{arr0=[card,card,card];}
// else if(exist==4)
// {arr0=[card,card,card,card];}
return arr0;
}
//可杠的牌型
d.bar=function (arr,card)
{var exist=d.same(arr,card);
var arr0=[];
if(exist==3)
{arr0=[card,card,card,card];}
return arr0;
}
d.get_handpos_byid=function (seat,cards)
{var pos_r=[];
for(var i=0;i<cards.length;i++)
{var pos=d.hand[seat][0].indexOf(cards[i]);
if(pos!=-1)
{pos_r[pos_r.length]=pos;
}
}
return pos_r;
}
//数组判断
d.isArray=function (obj){
return Object.prototype.toString.call(obj) === '[object Array]';
}
//截取昵称长度
d.getLen=function(str) {
// if (str == null) return 0;
// if (typeof str != "string"){
// str += "";
// }
// return str.replace(/[^\x00-\xff]/g,"01").length;
var l0=str.length;
var len = 0;
var l=0;
for (var i=0; i<str.length; i++) {
var c = str.charCodeAt(i);
if (len<=10-1 && (c >= 0 && c <= 128)) {
len++;l++;
}
else if(len<=10-2){
len+=2;l++;
}
else
{break;
}
}
str=str.slice(0,l);
if(l<l0)
{str=str+".."}
return str;
}
//得到长度
d.getLen1=function(str) {
var len = 0;
for (var i=0; i<str.length; i++){
var c = str.charCodeAt(i);
if ( c >= 0 && c <= 128){
len++;}
else{ len+=2;}
}
return len;
}

View File

@@ -0,0 +1,465 @@
d.ob = new d.object();
//花牌判断
d.get_hua=function(spid)
{
if(Desk.stage!=0)
{
for(var i=0;i<19;i++)
{
if(get_self(936+i,37,0,0,0)==1 && get_self(936+i,43,0,0,0)>=50 && get_self(936+i,43,0,0,0)<60)
{return 1;
}
}
}
return 0;
}
//自动出花牌
d.auto_poker_hua=function()
{
if(Desk.stage!=0)
{
for(var i=0;i<19;i++)
{
if(get_self(936+i,37,0,0,0)==1 && get_self(936+i,43,0,0,0)>=50 && get_self(936+i,43,0,0,0)<60 && d.hand[C_Player.seat][0][i]>=50)
{set_self(936+i,19,565,0,0);
d.click_chu(936+i);
break;
}
}
}
}
//起手胡扎鸟的分数
d.show_start_hu_bird=function(host,buyHorse,winHorse,roomtype,start_hu,seat)
{var base=roomtype[8] || 0;
var base_score=[1,5,10,20,30,50,100];
base=base_score[base];
var person=roomtype[13] || 4;
var start_point=0;
var hu_s=[0,0,0,0];//4家起手胡
for(var i=0;i<4;i++)
{
for(var h=0;h<7;h++)
{var num=start_hu[i][h];
if(num>0)
{hu_s[i]=hu_s[i]+num;
}
}
}
var bird_s=[0,0,0,0];//4家中鸟
for(var k=0;k<6;k++)
{var i=host;
if(buyHorse[i][k]>0)
{var n=winHorse[i][k];
bird_s[n]+=1;
}
}
//seat胡
for(var i=0;i<person;i++)
{
if(i!=seat)
{
if(roomtype[2]==1)
{var hu_point=hu_s[seat];
if(seat==host || i==host)
{hu_point=hu_s[seat]*2;}
start_point=start_point+hu_point;
start_point=start_point+hu_point*bird_s[seat];
start_point=start_point+hu_point*bird_s[i];
}
if(roomtype[2]==2)
{var hu_point=hu_s[seat];
if(seat==host || i==host)
{hu_point=hu_s[seat]+1*base;}
start_point=start_point+hu_point;
start_point=start_point+bird_s[seat];
start_point=start_point+bird_s[i];
}
}
}
//seat输
for(var i=0;i<person;i++)
{
if(i!=seat)
{
if(roomtype[2]==1)
{var hu_point=hu_s[i];
if(seat==host || i==host)
{hu_point=hu_s[i]*2;}
start_point=start_point-hu_point;
start_point=start_point-hu_point*bird_s[seat];
start_point=start_point-hu_point*bird_s[i];
}
if(roomtype[2]==2)
{var hu_point=hu_s[i];
if(seat==host || i==host)
{hu_point=hu_s[i]+1*base;}
start_point=start_point-hu_point;
start_point=start_point-bird_s[seat];
start_point=start_point-bird_s[i];
}
}
}
return start_point*base;
}
d.c = function(marr){
if(!d.isArray(marr))
{return marr;}
var arr=[];
arr=[].concat(marr);
for(var i=0;i<marr.length;i++)
{
if(d.isArray(marr[i]))
{arr[i]=[].concat(marr[i]);
for(var i1=0;i1<marr[i].length;i1++)
{
if(d.isArray(marr[i][i1]))
{arr[i][i1]=[].concat(marr[i][i1]);
for(var i2=0;i2<marr[i][i1].length;i2++)
{
if(d.isArray(marr[i][i1][i2]))
{arr[i][i1][i2]=[].concat(marr[i][i1][i2]);
for(var i3=0;i3<marr[i][i1][i2].length;i3++)
{
if(d.isArray(marr[i][i1][i2][i3]))
{arr[i][i1][i2][i3]=[].concat(marr[i][i1][i2][i3]);
}
}
}
}
}
}
}
}
return arr;
};
//同意解散
d.a.agree_disband=function()
{
return;
var n=0;
var persons=[4,4,3,2];
var person=persons[d.roomtype[6]] || 4;
for(var i=0;i<person;i++)
{
if(d.agree[i]==i)
{n+=1;}
}
var agr=d.c(d.agree);
if(n>=person-1 && d.agree[C_Player.seat]==C_Player.seat)
{var data={};
data.agentid=GameData.AgentId;
data.gameid=GameData.GameId;
data.playerid=C_Player.playerid;
data.roomcode=Desk.roomcode;
Net.Send_self_agree_free_room(data);
}
set_self(369,7,"全部同意达成解散");
//投票通过
var ban=0;
for(var i=0;i<4;i++){
if(d.agree[i]==i)
{
for(var j=0;j<3;j++)
{
if(get_self(264+j,7)=="【"+Desk.PlayerList[i].nickname+"】")
{set_self(166+j,7,"同意",0,0);
break;
}
}
if(C_Player.seat==i)
{set_self(201,37,0,0,0);
set_self(202,37,0,0,0);
}
ban=1;
}
}
}
//退出
d.a.exit=function()
{
if(C_Player.status == 1){
GameData.checkType = 2;
GameUI.OpenCheckFree("房间仍存在,是否退出?");
}else{
var data={};
data.agentid=GameData.AgentId;
data.gameid=GameData.GameId;
data.playerid=C_Player.playerid;
data.roomcode=Desk.roomcode;
Net.Send_self_exit_room(data);
setTimeout(GameUI.OpenTips,0,"你被房主拒绝",1500);
}
}
//牌中是否有癞子
d.a.have_jing=function(arrs,jing,jing_reduce,hu_note,card)
{var jing_num=0;
var jing1=jing[1];
for(var i=0;i<arrs.length;i++)
{
if(arrs[i]==jing1)
{jing_num+=1;
}
}
if(hu_note[0]==0 && card==jing1)
{jing_num+=1;}
jing_num-=jing_reduce;
return jing_num;
}
//暂无意义
d.get_free_hu=function(seat)
{
var ids=[[1240,1241,1242,1243,1244,1245,1246,1268,1269,1270,1271,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941],
[1247,1248,1249,1250,1251,1252,1253,1272,1273,1274,1275,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955],
[1254,1255,1256,1257,1258,1259,1260,1276,1277,1278,1279,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969],
[1261,1262,1263,1264,1265,1266,1267,1280,1281,1282,1283,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983]
];
var id=0;
for(var i=0;i<11;i++)
{
if(get_self(ids[seat][i],37,0,0,0)==0)
{id=ids[seat][i];
break;
}
}
return id;
}
//暂无意义
d.get_free_point=function(seat)
{
var idsym=[];
var idnum=[];
for(var j=0;j<4;j++)
{idsym[j]=[];
idnum[j]=[];
for(var i=0;i<10;i++)
{idsym[j][i]=1774+j*20+i*2;
idnum[j][i]=1775+j*20+i*2;
}
for(var i=0;i<10;i++)
{idsym[j][i+10]=1984+j*20+i*2;
idnum[j][i+10]=1985+j*20+i*2;
}
}
var id=[];
for(var i=0;i<10;i++)
{
if(get_self(idsym[seat][i],37,0,0,0)==0 && get_self(idnum[seat][i],37,0,0,0)==0)
{id[0]=idsym[seat][i];
id[1]=idnum[seat][i];
break;
}
}
return id;
}
//胡的人数
d.get_hu_num=function(seat,final_hu,many_hu)
{var hu_num=[0,0,0];
if(final_hu[0]==seat)
{
if(final_hu[1][0]>0)
{hu_num[0]+=1;}
if(final_hu[1][1]>0)
{hu_num[0]+=1;}
}
else if(many_hu[0][0]==seat)
{
if(many_hu[0][1][0]>0)
{hu_num[0]+=1;}
if(many_hu[0][1][1]>0)
{hu_num[0]+=1;}
}
else if(many_hu[1][0]==seat)
{
if(many_hu[1][1][0]>0)
{hu_num[0]+=1;}
if(many_hu[1][1][1]>0)
{hu_num[0]+=1;}
}
if(final_hu[0]>-1)
{
if(final_hu[1][0]>0)
{hu_num[1]+=1;}
if(final_hu[1][1]>0)
{hu_num[1]+=1;}
}
if(many_hu[0][0]>-1)
{
if(many_hu[0][1][0]>0)
{hu_num[1]+=1;}
if(many_hu[0][1][1]>0)
{hu_num[1]+=1;}
}
if(many_hu[1][0]>-1)
{
if(many_hu[1][1][0]>0)
{hu_num[1]+=1;}
if(many_hu[1][1][1]>0)
{hu_num[1]+=1;}
}
return hu_num;
}
//是否参与胡与输
d.get_partake=function(seat,hu_note)
{var partake=0;
if(hu_note[0]==0)
{partake=1;}
else if(hu_note[0]>0 && hu_note[0]-1==seat)
{partake=1;}
return partake;
}
//是否是包3家
d.get_bao_pai=function(seat,hu_note,roomtype,peng_chi_num)
{var base=roomtype[8] || 0;
var base_score=[1,5,10,20,30,50,100];
base=base_score[base];
//d.peng_chi_num
var bao_pai=[];
for(var i=0;i<4;i++)
{
if(i!=seat && peng_chi_num[seat][i]>=3)
{bao_pai[bao_pai.length]=i;}
}
bao_pai[0]=1;
if(hu_note[10]>-1 && bao_pai.indexof(hu_note[0]-1)==-1)
{bao_pai[bao_pai.length]=hu_note[0]-1;}//无番抢杠包
if(hu_note[0]>0 && hu_note[9]>-1 && bao_pai.indexof(hu_note[0]-1)==-1)
{bao_pai[bao_pai.length]=hu_note[0]-1;}//剩15张点炮全包
return bao_pai;
}
//多个胡家分数的显示
d.get_many_hu_point=function(final_hu,many_hu,hu_note,host,seat,roomtype)
{var base=roomtype[8] || 0;
var base_score=[1,5,10,20,30,50,100];
base=base_score[base];
var host2=d.get_host2(hu_note,host,roomtype,final_hu,many_hu,seat);//庄家翻倍
//不是流局
if(final_hu[0]>=0 && final_hu[0]<4)
{
var final_hu_point=final_hu[2].point*3;
if(hu_note[0]>0)
{
if(host2==1 && hu_note[7][final_hu[0]]>-1)//不考虑地胡
{
if(final_hu[0]!=host)
{var point2=point2 || 0;
final_hu_point=final_hu[2].point*3+final_hu[2].point;
}
else if(final_hu[0]==host)
{final_hu_point=final_hu[2].point*3*2;}
}
else
{final_hu_point=final_hu[2].point;}
if(hu_note[2]>0)//地胡
{final_hu_point=final_hu_point+20*base;}
if(host==final_hu[0] && host2==1 && hu_note[7][final_hu[0]]==-1)//考虑地胡
{final_hu_point=final_hu_point*2;}
}
}
var many_hu_point=[0,0];
if(many_hu[0][0]>=0 && many_hu[0][0]<4)
{
if(hu_note[0]>0)
{
if(host2==1 && hu_note[7][many_hu[0][0]]>-1)//不考虑地胡
{
if(many_hu[0][0]!=host)
{var point2=point2 || 0;
many_hu_point[0]=many_hu[0][2].point*3+many_hu[0][2].point;
}
else if(many_hu[0][0]==host)
{many_hu_point[0]=many_hu[0][2].point*3*2;}
}
else
{many_hu_point[0]=many_hu[0][2].point;}
if(hu_note[2]>0)//地胡
{many_hu_point[0]=many_hu_point[0]+20*base;}
if(host==many_hu[0][0] && host2==1 && hu_note[7][many_hu[0][0]]==-1)//庄家翻倍(考虑地胡)
{many_hu_point[0]=many_hu_point[0]*2;}
}
}
if(many_hu[1][0]>=0 && many_hu[1][0]<4)
{
if(hu_note[0]>0)
{
if(host2==1 && hu_note[7][many_hu[1][0]]>-1)//不考虑地胡
{
if(many_hu[1][0]!=host)
{var point2=point2 || 0;
many_hu_point[0]=many_hu[1][2].point*3+many_hu[1][2].point;
}
else if(many_hu[1][0]==host)
{many_hu_point[0]=many_hu[1][2].point*3*2;}
}
else
{many_hu_point[1]=many_hu[1][2].point;}
if(hu_note[2]>0)//地胡
{many_hu_point[1]=many_hu_point[1]+20*base;}
if(host==many_hu[1][0] && host2==1 && hu_note[7][many_hu[1][0]]==-1)//庄家翻倍(考虑地胡)
{many_hu_point[0]=many_hu_point[0]*2;}
}
}
var many_points=[0,0,0,0];
many_points[final_hu[0]]=final_hu_point;
many_points[many_hu[0][0]]=many_hu_point[0];
many_points[many_hu[1][0]]=many_hu_point[1];
if(hu_note[0]==0 && host!=final_hu[0] && host!=many_hu[0][0] && host!=many_hu[1][0] && host2==1)//庄家翻倍
{
for(var i=0;i<4;i++)
{many_points[i]=many_points[i]*2;}
}
return many_points;
}
//是否是庄家,是否翻倍
d.get_host2=function(hu_note,host,roomtype,final_hu,many_hu,seat)
{var r=0;
if(roomtype[7] && roomtype[7]==2)//庄家翻倍
{
if(hu_note[0]==0)
{r=1;}
else if(hu_note[0]>0)
{
if(host==hu_note[0]-1)
{
if(seat==hu_note[0]-1 || seat==final_hu[0] || seat==many_hu[0][0] || seat==many_hu[1][0])
{r=1;}
}
else if(host==final_hu[0])
{
if(seat==hu_note[0]-1 || seat==final_hu[0])
{r=1;}
}
else if(host==many_hu[0][0])
{
if(seat==hu_note[0]-1 || seat==many_hu[0][0])
{r=1;}
}
else if(host==many_hu[1][0])
{
if(seat==hu_note[0]-1 || seat==many_hu[1][0])
{r=1;}
}
}
}
return r;
}
d.a.get_last_Storage=function(){
var last_Storage=0;
if(window.localStorage) {
last_Storage= 1024 * 1024 * 5 - unescape(encodeURIComponent(JSON.stringify(localStorage))).length;
}
return last_Storage;
}

View File

@@ -0,0 +1,216 @@
d.a.share = function (roomtype) {
if(roomtype){
Desk.roomtype=roomtype;
}
if(Desk.roomtype.length==0){
return;
}
Desk.count = d.gameConfig.asetcount[Desk.roomtype[1]-1] || Desk.count;
Game_Config.Share.gameTitle = "\n房号:" + Desk.roomcode;
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
var bawang = Desk.roomtype[2] || 1;
var zuidi = Desk.roomtype[17] || 0;
var paichi = Desk.roomtype[7] || 1;
var msg10 = ["","牌池精算分 ","牌池精不算分 "];
if (person==4) {zuidi=0;}
var msg9 = [" ","(最低8分) ","(最低16分) ","(最低32分) "];
var msg2 = [" ","霸王X2 ", "霸王X4 ", "霸王+10 "];//2霸王 1霸王X2,2霸王X4,3霸王+10
var deduct_card = Desk.roomtype[4] || 1;
var msg3 = ["","房主付卡 ", "AA付卡 ", "大赢家付卡 "]; //4扣卡方法 1房主付卡,2AA付卡,3大赢家付卡
var way = Desk.roomtype[5] || 0;
var msg4 = ["","上下翻 ", "埋雷 ", "同一首歌 ","无限发电","固定发电 "];//5玩法 0上翻正常玩法1上下翻2埋雷3同一首歌,4无限发电5固定发电
var huitou=Desk.roomtype[10] || 0;
var msg5 = ["","回头一笑 ","回头两笑 "];//10回头一笑 0无回头一笑1一笑2两笑
var buda=Desk.roomtype[19] || 0;
var msg6 = ["",""];
var ip = Desk.roomtype[9] || 0;
var msg12 = ["","同ip不能进 "];
var gps = Desk.roomtype[11] || 0;
var msg13 = ["","开启定位 "];
var leave = Desk.roomtype[15] || 0;
var msg15 = ["","离线托管 "];
var exit = Desk.roomtype[24] || 0;
var msg16 = ["","不准备踢人 "];
if (Desk.roomtype[5]==4) {
msg6 = [" ","(不打牌) "];
}
var beilv = Desk.roomtype[21] || 0;
var msg7 = [""];
if(Desk.roomtype[21]!=0){
deduct_card = 0;
msg7 = [beilv+"倍 "];
}
var msg8 = [""];
if(Desk.roomtype[16][1]!=0){
msg8 = [Desk.roomtype[16][1]+"倍 "];
}
var help= Desk.count + "局 ";
if (Utl.getIsInfinite() == 0 && Desk.stage != 0 && d.status!=0) {
if (d.turn[1] < Desk.count) {
help= help + "(" + (d.turn[1] + 1) + "/" + Desk.count + ") ";
}
else if (d.turn[1] == Desk.count) {
help = help + "(" + (d.turn[1]) + "/" + Desk.count + ") ";
}
}
if(Utl.getIsInfinite()==1)
{
help="";
Game_Config.Share.gameDescription ="玩法:" + help + person +"人"+ msg9[zuidi] + msg2[bawang] + msg4[way] +msg6[buda] + msg5[huitou] + msg8[0]+msg10[paichi];
help= help + person +"人"+ msg9[zuidi] + msg2[bawang] + msg4[way] +msg6[buda]+ msg5[huitou] + msg8[0]+msg10[paichi];
}
else{
Game_Config.Share.gameDescription ="玩法:" + help + person +"人"+ msg9[zuidi] + msg3[deduct_card] + msg7[0] + msg2[bawang] + msg4[way]+msg6[buda] + msg5[huitou]+msg10[paichi]+msg12[ip]+msg13[gps]+msg15[leave]+msg16[exit];
help= help + person +"人"+ msg9[zuidi] + msg3[deduct_card] + msg7[0] + msg2[bawang] + msg4[way] +msg6[buda] + msg5[huitou]+msg10[paichi]+msg12[ip]+msg13[gps]+msg15[leave]+msg16[exit];
}
var msg_1 = "\n每天可领取免费房卡约麻将";
var show = "";
if(Utl.getIsInfinite()==1){
show ="玩法:" + "" + person +"人"+ msg9[zuidi] + msg2[bawang] + msg4[way] +msg6[buda]+ msg5[huitou] + msg8[0]+msg10[paichi];
}else{
if (d.turn[1] < Desk.count) {
help= Desk.count + "局 " + "(" + (d.turn[1] + 1) + "/" + Desk.count + ") ";
}
else if (d.turn[1] == Desk.count) {
help = Desk.count + "局 " + "(" + (d.turn[1]) + "/" + Desk.count + ") ";
}
show ="玩法:" + person +"人"+ msg9[zuidi] + msg3[deduct_card] + msg7[0] + msg2[bawang] + msg4[way] +msg6[buda] + msg5[huitou]+msg10[paichi];
}
var l = d.getLen1(show);
set_self(2239, 7, show);
set_self(2239, 18, parseInt((1280 - l * 14) / 2), 0, 0);
d.a.help_txt();
}
d.a.help_re = function (roomtype) {
if (roomtype) {
Desk.roomtype = [].concat(roomtype);
}
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
var bawang = Desk.roomtype[2] || 1;
var msg2 = ["","霸王X2 ", "霸王X4 ", "霸王+10"];//2霸王 1霸王X2,2霸王X4,3霸王+10
var deduct_card = Desk.roomtype[4] || 1;
var msg3 = ["","房主付卡 ", "AA付卡 ", "大赢家付卡 "]; //4扣卡方法 1房主付卡,2AA付卡,3大赢家付卡
var way = Desk.roomtype[5] || 0;
var msg4 = ["","上下翻 ", "埋雷 ", "同一首歌 ","无限发电 ","固定发电 "];//5玩法 0上翻正常玩法1上下翻2埋雷3同一首歌,4无限发电5固定发电
var huitou=Desk.roomtype[10] || 0;
var msg5 = ["","回头一笑 ","回头两笑 "];//10回头一笑 0无回头一笑1一笑2两笑
var beilv = Desk.roomtype[21] || 0;
var msg7 = [""];
var zuidi = Desk.roomtype[17] || 0;
var msg9 = [" ","(最低8分) ","(最低16分) ","(最低32分) "];
var msg6 = ["",""];
var msg8 = [""];
var ip = Desk.roomtype[9] || 0;
var msg12 = ["","同ip不能进 "];
var gps = Desk.roomtype[11] || 0;
var msg13 = ["","开启定位 "];
var leave = Desk.roomtype[15] || 0;
var msg15 = ["","离线托管 "];
var exit = Desk.roomtype[24] || 0;
var msg16 = ["","不准备踢人 "];
if(Desk.roomtype[16][1]!=0){
msg8 = [Desk.roomtype[16][1]+"倍 "];
}
var buda=Desk.roomtype[19] || 0;
if (Desk.roomtype[5]==4) {
msg6 = [" ","(不打牌) "];
}
var paichi = Desk.roomtype[7] || 1;
var msg10 = ["","牌池精算分 ","牌池精不算分 "];
if(Desk.roomtype[21]!=0){
deduct_card = 0;
msg7 = [beilv+"倍 "];
}
var help= Desk.count + "局 ";
if(Utl.getIsInfinite()==1)
{
help="";
help= "玩法:" + help + person +"人 " + msg2[bawang] + msg4[way] + msg5[huitou];
}else{
help= "玩法:" + help + person +"人 " + msg3[deduct_card] + msg7[0] + msg2[bawang] + msg4[way] + msg5[huitou]+msg12[ip]+msg13[gps]+msg15[leave]+msg16[exit];
}
var show = "";
if(Utl.getIsInfinite()==1){
show ="玩法:" + "" + person +"人"+ msg9[zuidi] + msg2[bawang] + msg4[way] +msg6[buda]+ msg5[huitou] + msg8[0]+msg10[paichi];
}else{
if (d.turn[1] < Desk.count) {
help= Desk.count + "局 " + "(" + (d.turn[1] + 1) + "/" + Desk.count + ") ";
}
else if (d.turn[1] == Desk.count) {
help = Desk.count + "局 " + "(" + (d.turn[1]) + "/" + Desk.count + ") ";
}
show ="玩法:" + person +"人"+ msg9[zuidi] + msg3[deduct_card] + msg7[0] + msg2[bawang] + msg4[way] +msg6[buda] + msg5[huitou]+msg10[paichi];
}
var l = d.getLen1(show);
set_self(2239, 7, show);
set_self(2239, 18, parseInt((1280 - l * 14) / 2), 0, 0);
}
d.a.help_txt = function (tou) {
tou = tou || "";
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
var bawang = Desk.roomtype[2] || 1;
var msg2 = ["","霸王X2 ", "霸王X4 ", "霸王+10"];//2霸王 1霸王X2,2霸王X4,3霸王+10
var deduct_card = Desk.roomtype[4] || 1;
var msg3 = ["","房主付卡 ", "AA付卡 ", "大赢家付卡 "]; //4扣卡方法 1房主付卡,2AA付卡,3大赢家付卡
var way = Desk.roomtype[5] || 0;
var msg4 = ["","上下翻 ", "埋雷 ", "同一首歌 ","无限发电 ","固定发电 "];//5玩法 0上翻正常玩法1上下翻2埋雷3同一首歌,4无限发电5固定发电
var huitou=Desk.roomtype[10] || 0;
var msg5 = ["","回头一笑 ","回头两笑 "];//10回头一笑 0无回头一笑1一笑2两笑
var beilv = Desk.roomtype[21] || 0;
var msg7 = [""];
var ip = Desk.roomtype[9] || 0;
var msg12 = ["","同ip不能进 "];
var gps = Desk.roomtype[11] || 0;
var msg13 = ["","开启定位 "];
var leave = Desk.roomtype[15] || 0;
var msg15 = ["","离线托管 "];
var exit = Desk.roomtype[24] || 0;
var msg16 = ["","不准备踢人 "];
if(Desk.roomtype[21]!=0){
deduct_card = 0;
msg7 = [beilv+"倍 "];
}
var maaa="";
maaa = tou + "玩法:\n\n" + " 局数:" + Desk.count + "局\n\n" + " 人数:" + person +"人\n\n" + " 玩法:" + msg4[way] + msg5[huitou] + msg2[bawang] + msg3[deduct_card] + msg7[0]+msg12[ip]+msg13[gps]+msg15[leave]+msg16[exit];
txt =tou +maaa;
//set_self(2159, 7, txt);
}
d.a.help_txt1 = function (tou) {
tou = tou || "";
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
txt = tou + "玩法:\n\n " + "局数:" + Game_Modify.numOfgame * 8 + "局\n\n ";
//set_self(2159, 7, txt);
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,19 @@
//显示抄庄流局
d.set_chao_host=function (f)
{
if (Desk.roomtype[19]) {
return;
}
set_self(1676,37,1,0,0);
//set_self(1676,43,f,0,0);//3抄庄,4烂庄
if(f==3)
{d.act_chao_host[1]=10;
set_self(1676,43,2,0,0);//3抄庄,4烂庄
}//抄庄&烂庄计时器
else if(f==4)
{d.act_chao_host[1]=18;
set_self(1676,43,1,0,0);//3抄庄,4烂庄
}//抄庄&烂庄计时器
}

View File

@@ -0,0 +1,515 @@
//显示买马动画
d.show_horse_flash = function (spid) {
if (get_self(149,37)==1 && d.recon != 1 && d.backstage != 1 && spid == 803 && d.horse_time > 0) {
d.horse_time += 1;
if (d.horse_time >= 10) {
d.horse_time = -1;
if (RoomFunc.zhanji_before()) {
d.show_xiao_settle(1);d.show_timeready(); //显示准备时间
}
if(Utl.getIsInfinite()==1)
{
for(var i=0;i<4;i++)
{
if(get_self(1403,37)==0 && get_self(1408,37)==0 && i==C_Player.seat)
{Utl.setDeskStage(0);GameUI.SetIsprepare(i,0);C_Player.ChangeExit(1);Utl.setPlayerPrepare(i, 0);}
else if(i!=C_Player.seat)
{GameUI.SetIsprepare(i,0);
C_Player.ChangeExit(1);
}
}
}
}
if (d.horse_time == 7) {
if (d.final_hu[0] == 4 || d.roomtype[2] == 0)//流局 不买马
{
}
else {
d.show_dark_horse();
}
}
if (d.horse_time == 8) {
if (d.final_hu[0] == 4 || d.roomtype[2] == 0)//流局 不买马
{
d.horse_time = -1;
if (RoomFunc.zhanji_before()) {
d.show_xiao_settle(1);d.show_timeready(); //显示准备时间
}
if(Utl.getIsInfinite()==1)
{
for(var i=0;i<4;i++)
{
if(get_self(1403,37)==0 && get_self(1408,37)==0 && i==C_Player.seat)
{Utl.setDeskStage(0);GameUI.SetIsprepare(i,0);C_Player.ChangeExit(1);Utl.setPlayerPrepare(i, 0);}
else if(i!=C_Player.seat)
{GameUI.SetIsprepare(i,0);
C_Player.ChangeExit(1);
}
}
}
}
else {
d.show_light_horse();
}
}
}
if (Desk.stage != 0 && spid == 801) {
for (var i = 1311; i <= 1326; i++) {
if (get_self(i, 37, 0, 0, 0) == 1 && get_self(i, 1, 0, 0, 0) == 347) {
set_self(i, 43, 1, 1, 0)
if (get_self(i, 43, 0, 0, 0) > 8) {
set_self(i, 43, 1, 0, 0)
}
}
}
}
if (spid == 801) {
for (var i = 1862; i <= 1877; i++) {
if (get_self(i, 37, 0, 0, 0) == 1 && get_self(i, 1, 0, 0, 0) == 347) {
set_self(i, 43, 1, 1, 0)
if (get_self(i, 43, 0, 0, 0) > 8) {
set_self(i, 43, 1, 0, 0)
}
}
}
}
//胡牌框特效
if (spid == 801 && get_self(2290, 37)==1) {
set_self(2290, 43, 1, 1, 0)
if (get_self(2290, 43, 0, 0, 0) > 8) {
set_self(2290, 43, 1, 0, 0)
}
}
//眨眼睛特效
if (spid == 804 && get_self(812, 37) ==1) {
if (d.eyes>=10 && d.eyes<=19) {
set_self(851, 37, 1, 0, 0);
if (d.eyes==13) {
set_self(851, 43, 2, 0, 0);
}
if (d.eyes==16) {
set_self(851, 43, 1, 0, 0);
}
if (d.eyes==19) {
set_self(851, 37, 0, 0, 0);
}
}
if (d.eyes>=40 && d.eyes<=60) {
set_self(851, 37, 1, 0, 0);
if (d.eyes==43) {
set_self(851, 43, 2, 0, 0);
}
if (d.eyes==57) {
set_self(851, 43, 1, 0, 0);
}
if (d.eyes==60) {
set_self(851, 37, 0, 0, 0);
}
}
if(d.eyes>0 && d.eyes<=30){
set_self(852,34,1,1,0);
set_self(853,34,2,1,0);
set_self(812,19,2,1,0);
set_self(851,19,2,1,0);
set_self(852,20,1,2,0);
set_self(853,20,2,2,0);
set_self(852,21,2,1,0);
set_self(853,21,4,1,0);
}
if(d.eyes>30 && d.eyes<=60){
set_self(852,34,1,2,0);
set_self(853,34,2,2,0);
set_self(812,19,2,2,0);
set_self(851,19,2,2,0);
set_self(852,20,1,1,0);
set_self(853,20,2,1,0);
set_self(852,21,2,2,0);
set_self(853,21,4,2,0);
}
if(d.eyes==60){
d.eyes=0;
}
d.eyes++;
}
}
//跳过动画直接显示买马结果
d.show_horse = function () {
if (Desk.stage != 0 && d.horse_time > 0) {
d.show_dark_horse();
d.show_light_horse();
d.horse_time = -1;
}
}
//准备显示买马
d.show_dark_horse = function () {
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
//d.buyHorse=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]];//各家买马
//d.winHorse=[[-1,-1,-1,-1],[-1,-1,-1,-1],[-1,-1,-1,-1],[-1,-1,-1,-1]];//各家买马
var ban = 0;
var horse_num = 0;
for (var i = 0; i < person; i++) {
if (d.buyHorse[i][0] > 0 && get_self(1368, 37, 0, 0, 0) == 0) {
ban = 1;
for (var j = 0; j < 6; j++) {
if (d.buyHorse[i][j] > 0) {
horse_num += 1;
}
}
break;
}
}
if (ban == 1) {
set_group(228, 37, 1, 0, 0);
for (var i = 0; i < 10; i++) {
for (var j = 0; j < 4; j++) {
set_self(1966+j*10+i, 37, 0, 0, 0);
}
}
//set_self(1283,33,20,0,0);
set_self(1283, 19, 19, 0, 0);
set_self(1283, 43, 1, 0, 0);
//play_ani123(1,1283,33,10,100,240,1);
//play_ani123(1,1283,19,220,70,240,1);
//play_ani123(1,1283,43,1,4,240,1);
for (var i = 0; i < 4; i++) {
set_self(1333 + d.pos[i], 37, 0, 0, 0);
set_self(1726 + d.pos[i], 37, 0, 0, 0);
set_self(1333 + d.pos[i], 37, 0, 0, 0);
}
for (var i = 0; i < person; i++) {
if(Desk.PlayerList[i].nickname!=undefined)
{set_self(1726 + d.pos[i], 7, d.getLen(Desk.PlayerList[i].nickname));
set_self(1726 + d.pos[i], 37, 1, 0, 0);
set_self(1333 + d.pos[i], 37, 1, 0, 0);
}
}
//LOL(马牌隐藏)
for (var i = 0; i < 4; i++) {
set_self(1342 + i, 37, 0, 0, 0);
}
for (var i = 0; i < 6; i++) {
set_self(1544 + i, 37, 0, 0, 0);
}
for (var i = 0; i < 4; i++) {
//set_self(150 + i, 37, 0, 0, 0);
}
for (var i = 0; i < 6; i++) {//应该改为8个
//动画隐藏
var eid = 1241 + i;
var Horse_id = 1538 + i;
set_self(eid, 37, 0, 0, 0);
set_self(Horse_id, 37, 0, 0, 0);
}
//LOL
var seat = d.final_hu[0];
var show_spids = [1378, 1388, 1393, 1398];
for (var i = 0; i < 4; i++) {
//set_self(1706 + i, 7, get_self(406 + i, 7));
set_self(show_spids[i], 37, 0, 0, 0);
}
set_self(show_spids[d.pos[seat]], 37, 1, 0, 0);
//1炮多响
for (var i = 0; i < 2; i++) {
if (d.many_hu[i][0] > -1) {
var seat = d.many_hu[i][0];
if (seat != 4) {
set_self(show_spids[d.pos[seat]], 37, 1, 0, 0);
}
}
}
//LOL
return;
var Horse_id = 1538;
var n = 0;
for (var i = 0; i < 6; i++) {
var x0 = parseInt((1280 - 62 * horse_num) / 2) + 62 * i;
if (d.buyHorse[0][i] > 0) {
var id = Horse_id + n;
set_self(id, 43, 60, 0, 0);
set_self(id, 35, 255, 0, 0);
set_self(id, 37, 1, 0, 0);
set_self(id, 18, x0 + n * 62, 0, 0);
n += 1;
}
if (d.buyHorse[1][i] > 0) {
var id = Horse_id + n;
set_self(id, 43, 60, 0, 0);
set_self(id, 35, 255, 0, 0);
set_self(id, 37, 1, 0, 0);
set_self(id, 18, x0 + n * 62, 0, 0);
n += 1;
}
if (d.buyHorse[2][i] > 0) {
var id = Horse_id + n;
set_self(id, 43, 60, 0, 0);
set_self(id, 35, 255, 0, 0);
set_self(id, 37, 1, 0, 0);
set_self(id, 18, x0 + n * 62, 0, 0);
n += 1;
}
if (d.buyHorse[3][i] > 0) {
var id = Horse_id + n;
set_self(id, 43, 60, 0, 0);
set_self(id, 35, 255, 0, 0);
set_self(id, 37, 1, 0, 0);
set_self(id, 18, x0 + n * 62, 0, 0);
n += 1;
}
}
}
}
//显示买马
d.show_light_horse = function () {
if (get_self(1368, 37, 0, 0, 0) == 1) {
//d.buyHorse=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]];//各家买马
//d.winHorse=[[-1,-1,-1,-1],[-1,-1,-1,-1],[-1,-1,-1,-1],[-1,-1,-1,-1]];//各家买马
var seat = d.final_hu[0];
var Horse_id = 1538, bird_id = 1241;
var n = 0;
var rotate = [180, 90 + 10, 0, 270 - 10];
//var eft_xy=[[418,526],[1035,217],[418,-37],[-61,217]];
var eft_xy = [[-61, 375], [1035, 221], [928, -70], [-61, 114]];
//set_self(1283,37,0,0,0);
var room_seat=[];
var persons = [4, 4, 3, 2];
var person = persons[d.roomtype[6]] || 4;
var li=C_Player.seat;
for (var i=0;i<4;i++){
if (li>person-1){
room_seat.push(-1);
}else {
room_seat.push(li);
}
li++;
if (li>=4){
li=0;
}
}
for (var i = 0; i < 10; i++) {
for (var j = 0; j < room_seat.length; j++) {
set_self(1966+j*10+i, 37, 0, 0, 0);
// set_self(1538, 37, 0, 0, 0);
}
}
for (var i = 0; i < 10; i++) {
for (var j = 0; j < room_seat.length; j++) {
if (room_seat[j]<0){
continue;
}
if (d.buyHorse[room_seat[j]][i]&&d.buyHorse[room_seat[j]][i]>0){
set_self(1966+j*10+i, 43, d.buyHorse[room_seat[j]][i], 0, 0);
set_self(1966+j*10+i, 37, 1, 0, 0);
}
}
}
return;
//LOL
for (var i = 0; i < 6; i++) {
if (d.buyHorse[0][i] > 0) {
var id = Horse_id + n;
set_self(id, 43, d.buyHorse[0][i], 0, 0);
var eid = bird_id + n;
if (d.roomtype[14] == 3) {
set_self(eid, 37, 1, 0, 0);
set_self(eid, 43, 1, 0, 0);
set_self(eid, 18, eft_xy[d.pos[d.winHorse[0][i]]][0]);
set_self(eid, 19, eft_xy[d.pos[d.winHorse[0][i]]][1]);
var t_id = 1333 + d.pos[d.winHorse[0][i]];
//set_self(eid,34,rotate[d.pos[d.winHorse[0][i]]],0,0);
var x1 = get_self(t_id, 18, 0, 0, 0) - 20;
if (x1 > 1164) {
x1 = 1164;
}
else if (x1 < -7) {
x1 = -7;
}
//play_ani123(1,eid,18,get_self(id,18,0,0,0),x1,200,1);
var y1 = get_self(t_id, 19, 0, 0, 0) - 20;
if (y1 > 573) {
y1 = 573;
}
else if (y1 < -29) {
y1 = -29;
}
//play_ani123(1,eid,19,get_self(id,19,0,0,0),y1,200,1);
if (t_id == 1333) {
set_self(eid, 51, 0, 0, 0);
}
else if (t_id == 1334) {
set_self(eid, 51, 2, 0, 0);
}
else if (t_id == 1335) {
set_self(eid, 51, 1, 0, 0);
}
else if (t_id == 1336) {
set_self(eid, 51, 0, 0, 0);
}
}
n += 1;
}
if (d.buyHorse[1][i] > 0) {
var id = Horse_id + n;
set_self(id, 43, d.buyHorse[1][i], 0, 0);
var eid = bird_id + n;
if (d.roomtype[14] == 3) {
set_self(eid, 37, 1, 0, 0);
set_self(eid, 43, 1, 0, 0);
set_self(eid, 18, eft_xy[d.pos[d.winHorse[1][i]]][0]);
set_self(eid, 19, eft_xy[d.pos[d.winHorse[1][i]]][1]);
var t_id = 1333 + d.pos[d.winHorse[1][i]];
//set_self(eid,34,rotate[d.pos[d.winHorse[0][i]]],0,0);
var x1 = get_self(t_id, 18, 0, 0, 0) - 20;
if (x1 > 1164) {
x1 = 1164;
}
else if (x1 < -7) {
x1 = -7;
}
//play_ani123(1,eid,18,get_self(id,18,0,0,0),x1,200,1);
var y1 = get_self(t_id, 19, 0, 0, 0) - 20;
if (y1 > 573) {
y1 = 573;
}
else if (y1 < -29) {
y1 = -29;
}
//play_ani123(1,eid,19,get_self(id,19,0,0,0),y1,200,1);
if (t_id == 1333) {
set_self(eid, 51, 0, 0, 0);
}
else if (t_id == 1334) {
set_self(eid, 51, 2, 0, 0);
}
else if (t_id == 1335) {
set_self(eid, 51, 1, 0, 0);
}
else if (t_id == 1336) {
set_self(eid, 51, 0, 0, 0);
}
}
n += 1;
}
if (d.buyHorse[2][i] > 0) {
var id = Horse_id + n;
set_self(id, 43, d.buyHorse[2][i], 0, 0);
var eid = bird_id + n;
if (d.roomtype[14] == 3) {
set_self(eid, 37, 1, 0, 0);
set_self(eid, 43, 1, 0, 0);
set_self(eid, 18, eft_xy[d.pos[d.winHorse[2][i]]][0]);
set_self(eid, 19, eft_xy[d.pos[d.winHorse[2][i]]][1]);
var t_id = 1333 + d.pos[d.winHorse[2][i]];
//set_self(eid,34,rotate[d.pos[d.winHorse[0][i]]],0,0);
var x1 = get_self(t_id, 18, 0, 0, 0) - 20;
if (x1 > 1164) {
x1 = 1164;
}
else if (x1 < -7) {
x1 = -7;
}
//play_ani123(1,eid,18,get_self(id,18,0,0,0),x1,200,1);
var y1 = get_self(t_id, 19, 0, 0, 0) - 20;
if (y1 > 573) {
y1 = 573;
}
else if (y1 < -29) {
y1 = -29;
}
//play_ani123(1,eid,19,get_self(id,19,0,0,0),y1,200,1);
if (t_id == 1333) {
set_self(eid, 51, 0, 0, 0);
}
else if (t_id == 1334) {
set_self(eid, 51, 2, 0, 0);
}
else if (t_id == 1335) {
set_self(eid, 51, 1, 0, 0);
}
else if (t_id == 1336) {
set_self(eid, 51, 0, 0, 0);
}
}
n += 1;
}
if (d.buyHorse[3][i] > 0) {
var id = Horse_id + n;
set_self(id, 43, d.buyHorse[3][i], 0, 0);
var eid = bird_id + n;
if (d.roomtype[14] == 3) {
set_self(eid, 37, 1, 0, 0);
set_self(eid, 43, 1, 0, 0);
set_self(eid, 18, eft_xy[d.pos[d.winHorse[3][i]]][0]);
set_self(eid, 19, eft_xy[d.pos[d.winHorse[3][i]]][1]);
var t_id = 1333 + d.pos[d.winHorse[3][i]];
//set_self(eid,34,rotate[d.pos[d.winHorse[0][i]]],0,0);
var x1 = get_self(t_id, 18, 0, 0, 0) - 20;
if (x1 > 1164) {
x1 = 1164;
}
else if (x1 < -7) {
x1 = -7;
}
//play_ani123(1,eid,18,get_self(id,18,0,0,0),x1,200,1);
var y1 = get_self(t_id, 19, 0, 0, 0) - 20;
if (y1 > 573) {
y1 = 573;
}
else if (y1 < -29) {
y1 = -29;
}
//play_ani123(1,eid,19,get_self(id,19,0,0,0),y1,200,1);
if (t_id == 1333) {
set_self(eid, 51, 0, 0, 0);
}
else if (t_id == 1334) {
set_self(eid, 51, 2, 0, 0);
}
else if (t_id == 1335) {
set_self(eid, 51, 1, 0, 0);
}
else if (t_id == 1336) {
set_self(eid, 51, 0, 0, 0);
}
}
n += 1;
}
}
}
}
//显示买马后相关动画结束时
d.show_light_horse_doend = function (id, sx, allend) {
if (id > 0 && Desk.stage != 0 && d.recon != 1 && d.backstage != 1) {
if (id >= 1311 && id <= 1326 && sx == 33 && allend == 1) {
set_self(id, 33, 100, 0, 0);
set_self(id, 1, 347, 0, 0);
}
//if(id==1283 && sx==33 && allend==1)
//{play_ani123(1,id,33,100,33,200,1);
//}
// if(id>=1241 && id<=1241+5 && sx==19 && allend==1)
// {set_self(id,1,518,0,0);set_self(id,20,151,0,0);set_self(id,21,115,0,0);
// }
// if(id>=1241 && id<=1241+5 && sx==18 && allend==1)
// {set_self(id,1,518,0,0);set_self(id,20,151,0,0);set_self(id,21,115,0,0);
// }
}
}

View File

@@ -0,0 +1,460 @@
//显示大局结算界面
d.a.show_turnpoint=function (mode)
{Func.exitRoom();var ban=0;
mode=mode || 0;
d.put_card=0;
d.p_card=0;
d.wos=0;
if(d.turn[1]==0 && d.final_hu[0]==-1)
{
for(var i=0;i<4;i++)
{
if(d.user_point[i]!=0)
{ban=1;}
}
if(ban==0)
{
for(var i=0;i<4;i++)
{
if(d.turn_point[d.turn[1]] != undefined && d.turn_point[d.turn[1]][i] != undefined && d.turn_point[d.turn[1]][i]!=0)
{
d.user_point[i]+=d.turn_point[d.turn[1]][i];
ban=1;
}
}
}
}
else
{ban=1;}
// for(var i=0;i<d.turn[2];i++)
// {
// if(d.turn_point[i]!=undefined)
// {ban=1;
// break;
// }
// }
if(ban==0 || Utl.getIsInfinite()==1)
{d.ini_start();
Utl.Exit();
return;
}
//if(get_self(1348,37,0,0,0)==1)//大背景
//{return;}
d.replay_write();
for(var i=0;i<=Game_Config.Max.group;i++){
set_group(i,37,0,0,0);
}
set_group(247,37,0,0,0);
set_self(149,37,1,0,0);//桌面背景
set_group(222,37,1,0,0); //1426-1310
set_group(223,37,0,0,0);//数字
set_self(1348,41,1,0,0);//大背景
set_self(1414,41,1,0,0);//分享
set_self(2253,7,d.makewartime);//开战时间
set_self(1435,41,1,0,0);//关闭
var y=get_self(1354,19,0,0,0);
set_group(223,19,317-y,1,0);
for(var i=0;i<4;i++)
{set_self(150+i,37,0,0,0);
set_self(1453+i,37,1,0,0);
set_self(2300+i,37,1,0,0);
set_self(1436+i,37,0,0,0);
set_self(1445+i,37,0,0,0);
set_self(1449+i,37,0,0,0);
}
for(var i=0;i<4;i++)//头像ID等
{set_self(1431+i,37,0,0,0);
if(Desk.PlayerList[i].nickname==undefined || String(Desk.PlayerList[i].nickname).length==0)
{set_self(1349+i,37,0,0,0);
set_self(2304+i,37,0,0,0);
set_self(1427+i,37,0,0,0);
set_self(1441+i,37,0,0,0);
set_self(1307+i,37,0,0,0);
set_self(1337+i,37,0,0,0);
set_self(1453+i,37,0,0,0);
set_self(2300+i,37,0,0,0);
set_self(1416+i,37,0,0,0);
set_self(1460+i,37,0,0,0);
set_self(1421+i,37,0,0,0);
}
}
// for(var i=0;i<d.turn[2];i++)//每局分数
// {
// if(d.turn_point[i] && d.turn_point[i].length>0)
// {
// for(var j=0;j<4;j++)
// {var point=0;
// if(i<12)
// {point=1354+i*5+j;}
// else if(i>=12)
// {point=2130+i-12+j*6;}
// if(Desk.PlayerList[j].nickname && d.turn_point[i].length>0 && d.turn_point[i][j]!=undefined && String(d.turn_point[i][j]).length>0)
// {set_self(point,7,"第"+String(i+1)+"局:"+d.turn_point[i][j]);}//
// else
// {set_self(point,37,0,0,0);}
// }
// }
// else
// {
// for(var j=0;j<4;j++)
// {
// if(i<12)
// {point=1354+i*5+j;}
// else if(i>=12)
// {point=2130+i-12+j*6;}
// set_self(point,37,0,0,0);
// }
// }
// }
var statis_name=["自摸","打胡","加杠","暗杠","明杠","加杠"];
for(var i=0;i<5;i++)//每局分数
{
for(var j=0;j<4;j++)
{var point=1932+j*5+i;
if(Desk.PlayerList[j].nickname && d.statis[j][i]!=undefined)
{
if (i==2) {
set_self(1934+j*5,7,statis_name[5]+"次数 "+d.statis[j][5]);
}else{
set_self(point,7,statis_name[i]+"次数 "+d.statis[j][i]);
}
}
else
{set_self(point,37,0,0,0);}
}
}
for(var i=0;i<4;i++)//昵称ID头像
{
d.point=d.c(d.user_point);
if(Desk.PlayerList[i].nickname!=undefined && String(Desk.PlayerList[i].nickname).length>0)
{
var nickname=d.getLen(Desk.PlayerList[i].nickname);
//var l=nickname.gblen()*15;
var l=d.getLen1(nickname)*15;
set_self(1427+i,7,nickname);
//set_self(1427+i,18,get_self(1441+i,18,0,0,0)+parseInt((180-l)/2),0,0);
set_self(1427+i,18,get_self(1349+i,18,0,0,0)+90,0,0); //1427-1430 昵称
set_self(1337+i,7,"ID:"+Desk.PlayerList[i].playerid);
set_self(1337+i,18,get_self(1349+i,18,0,0,0)+90,0,0); //1337-1340 ID
//set_self(1337+i,20,String(Desk.PlayerList[i].playerid).length*17,0,0);
//if(Desk.PlayerList[i].avatar)
//{
//显示头像
var head_id=[116,117,118,119];
var head=head_id[d.pos[i]];
set_self(1349+i,1,head,0,0);
//}
// else
// {set_self(1349+i,1,131,0,0);
// }
var x=get_self(1436+i,18,0,0,0); //获取总积分x坐标
var w=String(ifast_abs(d.user_point[i])).length;
set_self(1445+i,37,1,0,0);
// set_self(1445+i,7,ifast_abs(d.user_point[i]));//大赢家
set_self(1445+i,7,d.user_point[i]);
// set_self(1445+i,20,37*w,0,0);
set_self(1445+i,18,x+140-parseInt(w*7/2),0,0); //移动总积分分数位置
if(d.user_point[i]<0)
{set_self(1449+i,37,1,0,0);//符号
w=w+1;
// set_self(1449+i,18,x+85-parseInt(w*37/2),0,0); //移动总积分分数符号位置
set_self(1445+i,18,x+140-parseInt(w*7/2),0,0); //移动总积分分数位置
// set_self(1445+i,1,521,0,0);
}
// else 总积分 正号也显示
// {set_self(1449+i,37,0,0,0);
// set_self(1445+i,1,520,0,0);
// }
var k=GameUI.getMultiple() || 1;
// set_self(1416+i,7,"计算后:"+d.user_point[i]*k);
// set_self(1416+i,18,x+85-(parseInt(String(get_self(1416+i,7)).length+2)*18/2));
var w=String(ifast_abs(d.user_point[i]*k)).length;
set_self(1421+i,7,ifast_abs(d.user_point[i]*k));
set_self(1421+i,20,30*w,0,0);
//var x0=x+85-(parseInt(w*30/2)+38);
// set_self(1421+i,18,x0+76,0,0);
x0=x+50+36-w*30/2;
set_self(1421+i,18,x0,0,0);
set_self(1460+i,18,x0-24,0,0);
if(d.user_point[i]<0)
{set_self(1460+i,37,1,0,0);
//set_self(1421+i,1,521,0,0);
}
else
{set_self(1460+i,37,0,0,0);
//set_self(1421+i,1,520,0,0);
}
// set_self(1416+i,18,x0,0,0);
//if(k==1)
//{set_self(1416+i,37,0,0,0);
//set_self(1421+i,37,0,0,0);
//set_self(1460+i,37,0,0,0);
//}
set_self(1436+i,37,1,0,0);
if(d.user_point[i]>=0)
{
var max=Math.max.apply(null,d.user_point);
if(d.user_point[i]==max)
{set_self(1431+i,37,1,0,0);
}
set_self(1460+i,37,0,0,0);//计算后
}
else{
//set_self(1427+i,37,1,0,0);//昵称
//set_self(1416+i,37,0,0,0);//计算后
//set_self(1421+i,37,0,0,0);//计算后
//set_self(1460+i,37,1,0,0);//计算后
set_self(1431+i,37,0,0,0);//大赢家
//set_self(1449+i,37,0,0,0);//总分符号
//set_self(1311+i,37,0,0,0);//分数背景
//set_self(1337+i,37,0,0,0);//ID
//set_self(1307+i,37,0,0,0);//ID
}
}
}
//var text="";
//var info="昵称+id+总分第1局昵称+id+总分+分数"
//Func.gameCopytext(text);
GameUI.showCalBtn();
d.ini_start();
}
//大结算页面移动
d.move_hu=function(spid,offmovex,offmovey)
{
//if(offmovey>100)
//{return;}
for(var i=0;i<4;i++)
{
if(get_self(spid,44,0,0,0)==233+i || get_self(spid,44,0,0,0)==237+i)
{//var x=get_self(1240+7*i,18,0,0,0);
var x=get_self(1706+5*i,18,0,0,0);
if(offmovex<0 && x+d.move_hu_l[i]+offmovex>=1242 || offmovex>0 && x+offmovex<180+10)
{set_group(233+i,18,offmovex,1,0);
set_group(237+i,18,offmovex,1,0);
}
}
}
}
d.show_xiao2_settle = function (makewar, turn, identity, names, avatar, playerids, hand, turn_point, buyHorse, winHorse, Horse_vic_def, final_hu, hu_note, hu_note_gang, roomtype, many_hu, start_hu, piao, sea_hua, peng_chi_num, hu_note_gang_jing, putJing, jing, score,huapai,ting,zhuangtai,last_up_jing,last_down_jing,downjing,smile_score,smile2_score,down_score,up_score,bmob_score,song_score) {
try{
var persons = [4, 4, 3, 2];
roomtype=roomtype||Desk.roomtype;
var person = persons[roomtype[6]] || 4;
if (makewar == 1) {//开战中
turn = d.turn[1];
host = d.identity[4];
identity = d.c(d.identity);
names = [];
playerids = [];
for (var i = 0; i < person; i++) {
names[i] = Desk.PlayerList[i].nickname;
playerids[i] = Desk.PlayerList[i].playerid;
if(Utl.getIsInfinite()==1&&C_Player.seat!=i&&d.person_info&&d.person_info[i])
{
names[i] = d.person_info[i].nickname;
playerids[i] = d.person_info[i].playerid;//金币场id
}
}
turn_point = d.c(d.turn_point);
buyHorse = d.c(d.buyHorse);
winHorse = d.c(d.winHorse);
Horse_vic_def = d.c(d.Horse_vic_def);
final_hu = d.c(d.final_hu);
many_hu = d.c(d.many_hu);
start_hu = d.c(d.start_hu);
hu_note = d.c(d.hu_note);
hu_note_gang = d.c(d.hu_note_gang);
roomtype = d.c(d.roomtype);
piao = d.c(d.piao);
sea_hua = d.c(d.sea_hua);
peng_chi_num = d.c(d.peng_chi_num);
hu_note_gang_jing = d.c(d.hu_note_gang_jing);
putJing = d.c(d.putJing);
jing = d.c(d.jing);
//jing_reduce = d.c(d.jing_reduce);
huapai = d.c(d.huapai);
ting = d.c(d.nm_ting);
zhuangtai = d.c(d.nm_ting_zhuangtai);
score = d.c(d.user_point);
last_up_jing = d.c(d.last_up_jing);
last_down_jing = d.c(d.last_down_jing);
downjing = d.c(d.downjing);
smile_score = d.c(d.smile_score);
smile2_score = d.c(d.smile2_score);
down_score = d.c(d.down_score);
up_score = d.c(d.up_score);
bmob_score = d.c(d.bmob_score);
song_score = d.c(d.song_score);
}
set_self(2657, 37, 1);
set_self(2787, 37, 1);
for (var i = 0; i < 8; i++){
set_self(2788 + i, 37, 1);
}
var myseat = -1;
var seat = final_hu[0];
for (var i = 0; i < person; i++) {
var nickname = d.getLen(names[i]);
set_self(2658 + i, 7, nickname);
set_self(2658 + i, 37, 1, 0, 0);
var playerid = playerids[i];
var w = String(playerid).length * 13;
var ids = [2662, 2663, 2664, 2665];
set_self(ids[i], 7, "ID"+playerid);
set_self(ids[i], 37, 1, 0, 0);
if (playerid == C_Player.playerid) {
myseat = i;
}
}
//上精
set_self(2666, 37, 1);
set_self(2666, 7, "上精(本局)");
for (var i = 0; i < person; i++) {
set_self(2675 + 2*i, 43, jing[0], 0, 0);
set_self(2676 + 2*i, 43, jing[1], 0, 0);
set_self(2683 + 2*i, 43, up_score[i].zj+1, 0, 0);
set_self(2684 + 2*i, 43, up_score[i].fj+1, 0, 0);
set_self(2675 + 2*i, 37, 1);
set_self(2676 + 2*i, 37, 1);
set_self(2683 + 2*i, 37, 1);
set_self(2684 + 2*i, 37, 1);
}
//回头
if(turn!=0 && last_up_jing[0] !=undefined && last_up_jing[0] != -1 && roomtype[10]>=1){
set_self(2671, 7, "回头一笑");
set_self(2671, 37, 1);
for (var i = 0; i < person; i++) {
set_self(2755 + 2*i, 43, last_up_jing[0], 0, 0);
set_self(2756 + 2*i, 43, last_up_jing[1], 0, 0);
set_self(2763 + 2*i, 43, smile_score[i].zj+1, 0, 0);
set_self(2764 + 2*i, 43, smile_score[i].fj+1, 0, 0);
set_self(2755 + 2*i, 37, 1);
set_self(2756 + 2*i, 37, 1);
set_self(2763 + 2*i, 37, 1);
set_self(2764 + 2*i, 37, 1);
}
if(last_down_jing[0] !=undefined && last_down_jing[0] != -1 && roomtype[10]==2){
set_self(2672, 7, "回头两笑");
set_self(2672, 37, 1);
for (var i = 0; i < person; i++) {
set_self(2771 + 2*i, 43, last_down_jing[0], 0, 0);
set_self(2772 + 2*i, 43, last_down_jing[1], 0, 0);
set_self(2779 + 2*i, 43, smile2_score[i].zj+1, 0, 0);
set_self(2780 + 2*i, 43, smile2_score[i].fj+1, 0, 0);
set_self(2771 + 2*i, 37, 1);
set_self(2772 + 2*i, 37, 1);
set_self(2779 + 2*i, 37, 1);
set_self(2780 + 2*i, 37, 1);
}
}
}
//下精
if(downjing[0] !=undefined && downjing[0] != -1){
if (roomtype[5] == 1){
set_self(2667, 7, "下精(上下翻)");
set_self(2667, 37, 1);
for (var i = 0; i < person; i++) {
set_self(2691 + 2*i, 43, downjing[0], 0, 0);
set_self(2692 + 2*i, 43, downjing[1], 0, 0);
set_self(2699 + 2*i, 43, down_score[i].zj+1, 0, 0);
set_self(2700 + 2*i, 43, down_score[i].fj+1, 0, 0);
set_self(2691 + 2*i, 37, 1);
set_self(2692 + 2*i, 37, 1);
set_self(2699 + 2*i, 37, 1);
set_self(2700 + 2*i, 37, 1);
}
}
else if (roomtype[5] == 2){
set_self(2667, 7, "下精(埋雷)");
set_self(2667, 37, 1);
for (var i = 0; i < person; i++) {
set_self(2691 + 2*i, 43, downjing[0], 0, 0);
set_self(2692 + 2*i, 43, downjing[1], 0, 0);
set_self(2699 + 2*i, 43, bmob_score[i].zj+1, 0, 0);
set_self(2700 + 2*i, 43, bmob_score[i].fj+1, 0, 0);
set_self(2691 + 2*i, 37, 1);
set_self(2692 + 2*i, 37, 1);
set_self(2699 + 2*i, 37, 1);
set_self(2700 + 2*i, 37, 1);
}
}
else if (roomtype[5] == 3){
var song_downjing = d.get_song_downjing(downjing);
set_self(2667, 7, "同一首歌");
set_self(2667, 37, 1);
for (var i = 0; i < person; i++) {
set_self(2691 + 2*i, 43, song_downjing[0][0], 0, 0);
set_self(2692 + 2*i, 43, song_downjing[0][1], 0, 0);
set_self(2699 + 2*i, 43, song_score[0][i].zj+1, 0, 0);
set_self(2700 + 2*i, 43, song_score[0][i].fj+1, 0, 0);
set_self(2691 + 2*i, 37, 1);
set_self(2692 + 2*i, 37, 1);
set_self(2699 + 2*i, 37, 1);
set_self(2700 + 2*i, 37, 1);
}
if(song_downjing[1][0] !=undefined && song_downjing[1][0] != -1){
set_self(2668, 7, "同一首歌");
set_self(2668, 37, 1);
for (var i = 0; i < person; i++) {
set_self(2707 + 2*i, 43, song_downjing[1][0], 0, 0);
set_self(2708 + 2*i, 43, song_downjing[1][1], 0, 0);
set_self(2715 + 2*i, 43, song_score[1][i].zj+1, 0, 0);
set_self(2716 + 2*i, 43, song_score[1][i].fj+1, 0, 0);
set_self(2707 + 2*i, 37, 1);
set_self(2708 + 2*i, 37, 1);
set_self(2715 + 2*i, 37, 1);
set_self(2716 + 2*i, 37, 1);
}
}
if(song_downjing[2][0] !=undefined && song_downjing[2][0] != -1){
set_self(2669, 7, "同一首歌");
set_self(2669, 37, 1);
for (var i = 0; i < person; i++) {
set_self(2723 + 2*i, 43, song_downjing[2][0], 0, 0);
set_self(2724 + 2*i, 43, song_downjing[2][1], 0, 0);
set_self(2731 + 2*i, 43, song_score[2][i].zj+1, 0, 0);
set_self(2732 + 2*i, 43, song_score[2][i].fj+1, 0, 0);
set_self(2723 + 2*i, 37, 1);
set_self(2724 + 2*i, 37, 1);
set_self(2731 + 2*i, 37, 1);
set_self(2732 + 2*i, 37, 1);
}
}
if(song_downjing[3] !=undefined && song_downjing[3][0] !=undefined && song_downjing[3][0] != -1){
set_self(2670, 7, "同一首歌");
set_self(2670, 37, 1);
for (var i = 0; i < person; i++) {
set_self(2739 + 2*i, 43, song_downjing[3][0], 0, 0);
set_self(2740 + 2*i, 43, song_downjing[3][1], 0, 0);
set_self(2747 + 2*i, 43, song_score[3][i].zj+1, 0, 0);
set_self(2748 + 2*i, 43, song_score[3][i].fj+1, 0, 0);
set_self(2739 + 2*i, 37, 1);
set_self(2740 + 2*i, 37, 1);
set_self(2747 + 2*i, 37, 1);
set_self(2748 + 2*i, 37, 1);
}
}
}
}
}catch(e){console.log(e)}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,261 @@
//显示准备
d.show_ready = function () {
if (Desk.stage != 0 || get_self(149, 37) == 1 && d.replay == 0) {
var ready_id = [1413, 1415, 1420, 1425];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if (person == 2) {
ready_id = [1413, 1420, 1420, 1420];
}
if (Utl.getIsInfinite() == 1) {
for (var i = 0; i < 4; i++) {
if (Desk.PlayerList[i] && Desk.GetPlayerBySeat(i).bean != parseInt(get_self(436 + d.pos[i], 7))) {
var _bean = Desk.GetPlayerBySeat(i).bean;
Utl.setGrade(i, _bean);
}
}
}
for (var i = 0; i < 4; i++) {
if (Utl.getIsInfinite() == 1 && Desk.PlayerList[i].playerid > -1 && Number(get_self(436 + d.pos[i], 7)) <= 0) {
set_self(ready_id[d.pos[i]], 37, 0, 0, 0);
}
else if (Desk.PlayerList[i].playerid > -1) {
if (d.user_ctrl[4 + i] == 1) {
set_self(ready_id[d.pos[i]], 37, 1, 0, 0);
if (Utl.getIsInfinite() == 1) {
GameUI.SetIsprepare(i, 1);
set_self(1408, 37, 0);
set_self(1403, 37, 0);
if (get_self(1158, 37) == 1) {
set_self(1159, 37, 0);
set_self(810, 37, 1);
}
}
if (Utl.getIsInfinite() == 1 && i == C_Player.seat && d.status > 0 && d.status < 3) {
C_Player.ChangeExit(0);
GameUI.hideChangeRoom();
}
}
else if (d.user_ctrl[4 + i] == 0) {
set_self(ready_id[d.pos[i]], 37, 0, 0, 0);
if (Utl.getIsInfinite() == 1) {
if (d.status == 0 || d.status == 3 || d.final_hu[0] > -1) {
set_self(1408, 37, 0);
set_self(1403, 37, 0);
set_self(1159, 37, 0);
if (get_self(1158, 37) == 1) {
set_self(1159, 37, 0);
set_self(810, 37, 1);
}
console.log(C_Player.seat + "," + i + "," + Utl.getPlayerReadyState(i))
// if(get_self(1403,37)==0 && get_self(1408,37)==0 && i==C_Player.seat && Utl.getPlayerReadyState(i)==0)
if (get_self(1403, 37) == 0 && get_self(1408, 37) == 0 && i == C_Player.seat) {
Utl.setDeskStage(0);
GameUI.SetIsprepare(i, 0);
Utl.setPlayerPrepare(i, 0);
if (d.status <= 0 || d.status >= 3) {
C_Player.ChangeExit(1);
}
}
else if (Desk.PlayerList[i].isprepare == 1) {
GameUI.SetIsprepare(i, 1);
if (d.status > 0 && d.status < 3) {
C_Player.ChangeExit(0);
}
}
else if (Desk.PlayerList[i].isprepare == 0) {
GameUI.SetIsprepare(i, 0);
if (d.status <= 0 || d.status >= 3) {
C_Player.ChangeExit(1);
}
}
// if(get_self(1403,37)==0 && get_self(1408,37)==0 && i==C_Player.seat)
// {Utl.setDeskStage(0);GameUI.SetIsprepare(i,0);C_Player.ChangeExit(1);Utl.setPlayerPrepare(i, 0);}
// else if(i!=C_Player.seat)
// {GameUI.SetIsprepare(i,0);
// C_Player.ChangeExit(1);
// }
}
else if (d.status > 0 && d.status < 3) {
GameUI.SetIsprepare(i, 1);
//Utl.setDeskStage(1);
C_Player.ChangeExit(0);
}
}
}
}
else {
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if (person == 2) {
ready_id = [1413, 1420, 1420, 1420];
if (Desk.PlayerList[0].playerid == -1 || Desk.PlayerList[1].playerid == -1) {
set_self(ready_id[d.pos[i]], 37, 0, 0, 0);
}
if (Desk.PlayerList[0].playerid > 0 && Number(get_self(436 + d.pos[0], 7)) <= 0 && Utl.getIsInfinite() == 1 || Desk.PlayerList[1].playerid > 0 && Number(get_self(436 + d.pos[1], 7)) <= 0 && Utl.getIsInfinite() == 1) {
set_self(ready_id[d.pos[i]], 37, 0, 0, 0);
}
}
else {
set_self(ready_id[d.pos[i]], 37, 0, 0, 0);
}
}
}
}
if (d.replay == 0 && !get_self(1157, 37)) {
set_self(152, 37, 1, 0, 0);
set_self(153, 37, 1, 0, 0);
}
if (d.a.share) {
d.a.share();
}
}
//点击准备下一局
d.click_ready = function (spid_up, aaa) {
set_group(213, 37, 0, 0, 0);
set_group(230, 37, 0, 0, 0);
set_self(810, 37, 0, 0, 0);
set_self(1676, 37, 0, 0, 0);//烂庄牌id
for (var i = 233; i <= 240; i++) {
set_group(i, 37, 0, 0, 0);
}
set_self(1413, 37, 1, 0, 0);
set_self(1408, 37, 0, 0, 0);
set_self(1022, 37, 0, 0, 0);//上张出牌
play_ani123(0, 1022, 19);
for (var i = 0; i < 4; i++) {
//if(i>1)
//{set_self(150+i,37,1,0,0);}
set_self(1730 + i, 37, 0, 0, 0);//胡家
}
if (!aaa) {
d.status = 3;
}
set_self(2997, 18, 614, 0, 0);
set_self(2997, 19, 287, 0, 0);
if (Utl.getIsInfinite() == 1) {
d.turn[2] = 100000000;
}
if (d.turn[1] < d.turn[2]) {
set_self(291, 7, "房号:" + Desk.roomcode + "\n(" + String(d.turn[1] + 1) + "/" + Desk.count + "局)");
}
if (d.turn[1] + 1 < d.turn[2]) {
d.ini();
if (d.replay == 0 && !aaa) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "ready",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"ready": 1
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
}
else if (d.turn[1] + 1 == d.turn[2] && d.turn[2] > 0) {
d.a.show_turnpoint();
//for(var i=0;i<4;i++)
//{set_self(150+i,37,0,0,0);}
}
Utl.playSound("00" + 170 + ".mp3");
/*
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
var bawang = Desk.roomtype[2] || 1;
var zuidi = Desk.roomtype[17] || 0;
var paichi = Desk.roomtype[7] || 1;
var msg10 = ["","牌池精算分 ","牌池精不算分 "];
if (person==4) {zuidi=0;}
var msg9 = [" ","(最低8分) ","(最低16分) ","(最低32分) "];
var msg2 = [" ","霸王X2 ", "霸王X4 ", "霸王+10 "];//2霸王 1霸王X2,2霸王X4,3霸王+10
var deduct_card = Desk.roomtype[4] || 1;
var msg3 = ["","房主付卡 ", "AA付卡 ", "大赢家付卡 "]; //4扣卡方法 1房主付卡,2AA付卡,3大赢家付卡
var way = Desk.roomtype[5] || 0;
var msg4 = ["","上下翻 ", "埋雷 ", "同一首歌 ","无限发电","固定发电 "];//5玩法 0上翻正常玩法1上下翻2埋雷3同一首歌,4无限发电5固定发电
var huitou=Desk.roomtype[10] || 0;
var msg5 = ["","回头一笑 ","回头两笑 "];//10回头一笑 0无回头一笑1一笑2两笑
var buda=Desk.roomtype[19] || 0;
var msg6 = ["",""];
if (Desk.roomtype[5]==4) {
msg6 = [" ","(不打牌) "];
}
var beilv = Desk.roomtype[21] || 0;
var msg7 = [""];
if(Desk.roomtype[21]!=0){
deduct_card = 0;
msg7 = [beilv+"倍 "];
}
var msg8 = [""];
if(Desk.roomtype[16][1]!=0){
msg8 = [Desk.roomtype[16][1]+"倍 "];
}
var help= Desk.count + "局 ";
var show = "";
if(Utl.getIsInfinite()==1){
show ="玩法:" + "" + person +"人"+ msg9[zuidi] + msg2[bawang] + msg4[way] +msg6[buda]+ msg5[huitou] + msg8[0]+msg10[paichi];
}else{
if (d.turn[1] < Desk.count) {
help= Desk.count + "局 " + "(" + (d.turn[1] + 2) + "/" + Desk.count + ") ";
}
else if (d.turn[1] == Desk.count) {
help = Desk.count + "局 " + "(" + (d.turn[1]) + "/" + Desk.count + ") ";
}
show ="玩法:" + person +"人"+ msg9[zuidi] + msg3[deduct_card] + msg7[0] + msg2[bawang] + msg4[way] +msg6[buda] + msg5[huitou]+msg10[paichi];
}
var l = d.getLen1(show);
set_self(2239, 7, show);
set_self(2239, 18, parseInt((1280 - l * 14) / 2), 0, 0);*/
}
d.show_zb = function () {
if (Utl.getIsInfinite() == 1) {
return;
}
var ready_id = [1413, 1415, 1420, 1425];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if (person == 2) {
ready_id = [1413, 1420, 1420, 1420];
}
for (var i = 0; i < person; i++) {
if (Desk.PlayerList[i] && Desk.PlayerList[i].isprepare == 1) {
GameUI.SetIsprepare(i, 1);
set_self(ready_id[d.pos[i]], 37, 1, 0, 0);
} else {
GameUI.SetIsprepare(i, 0);
set_self(ready_id[d.pos[i]], 37, 0, 0, 0);
}
if (Desk.stage) {
set_self(ready_id[d.pos[i]], 37, 0, 0, 0);
}
var _bean = Desk.GetPlayerBySeat(i).bean;
if (Utl.getIsInfinite() == 1) {
Utl.setGrade(i, _bean);
}
}
}

View File

@@ -0,0 +1,659 @@
d.click = function (spid_up, upx, upy, downx, downy, spid_down) {
console.log("clickid=" + spid_up + "," + d.chu_cilck)
if (spid_up == 149 || spid_up == 1158) {
GameUI.closeRoomInfo();
}
else if (spid_up == 284 && Utl.getIsInfinite() == 1) {
set_self(110, 7, "系统房");
set_self(512, 37, 0, 0, 0);
var h = get_self(109, 21);
set_self(109, 21, h);
}
else if (spid_up == 1953)//高级选项
{
Game_Modify.get_roomtype_ini();
if (get_self(2380, 43, 0, 0) == 1) {
Game_Modify.star = 0;
} else {
Game_Modify.star = 1;
}
//进贤麻将配置
var roomtype = [Game_Modify.Type_1[Game_Modify.CreateRoomData.Type_1].type,
Game_Modify.numOfgame,//1局数
Game_Modify.buy_horse,//2霸王
Game_Modify.limit,//3精分
Game_Modify.deduct_card,//4扣卡方法
Game_Modify.horse,//5玩法
Game_Modify.top_limit,//6封顶 人数
Game_Modify.host2,//7打出去的精算不算分
Game_Modify.base_score,//8底分
Game_Modify.ip,//9ip
Game_Modify.jia,//10回头一笑/假将胡/无红中翻倍
Game_Modify.gps,//11定位
Game_Modify.start_hu_arr,//12起手胡选项
Game_Modify.star,//13星星场
1,//14游戏类型
Game_Modify.leave,//15离线代打0不是1是
[0, 0, 0],//16系统房0初中高级场,1倍数2限入
Game_Modify.zuidi,
Game_Modify.overtime,
Game_Modify.Play_card,//19不打牌
Game_Modify.shiping,//20视频
sb1.current,//21金币房倍数
sb2.current,//22金币房限制
sb3.current,//23茶水费
Game_Modify.exit,//24踢人
];//发送的房间类型数组
Desk.roomtype = [].concat(roomtype);
//房间描述
d.a.share();
var _des = Game_Config.Share.gameDescription.split("\n")[0];
if (roomtype[13] == 1) {
if (sb1.current == 0) {
sb3.setValue(0);
sb3.current = 0;
}
Utl.openSnrOption(0, roomtype, _des, sb3.current);//(第一个参数->星星场传0、非星星场传1第二个参数->roomtype第三个参数->房间信息描述)
} else {
roomtype[21] = 0;
roomtype[22] = 0;
roomtype[23] = 0;
sb1.currentValue = 0;
sb2.currentValue = 0;
sb3.currentValue = 0;
Utl.openSnrOption(1, roomtype, _des);
}
Game_Config.Share.description = Game_Config.Share.gameDescription;
//Game_Config.Share.appdownload = "https://m.xihasoft.com/act/dongxiang/howto" + "?" + ifast_random(100000);
}
else if (spid_up == 14)//分享微信朋友圈
{
Game_Config.Share.description = "每天可领取免费房卡约麻将"//分享描述
}
else if (spid_up == 11 || spid_up == 3019) {
if (Utl.getVersionState()) {
set_self(1926, 7, "8局");
set_self(1628, 7, "16局");
set_self(1671, 7, "16局");
}
else if (get_self(2385, 43) == 1) {
set_self(1926, 7, d.gameConfig.asetcount[0] + "局");
set_self(1628, 7, d.gameConfig.asetcount[1] + "局");
}
else {
if (get_self(1882, 43) == 1 && get_self(2380, 43) == 1) {
set_self(1926, 7, d.gameConfig.asetcount[0] + "局(房卡x" + d.gameConfig.needroomcard[0][1] + ")");
set_self(1628, 7, d.gameConfig.asetcount[1] + "局(房卡x" + d.gameConfig.needroomcard[1][1] + ")");
}
else if (get_self(1883, 43) == 1 && get_self(2380, 43) == 1) {
set_self(1926, 7, d.gameConfig.asetcount[0] + "局(房卡x" + d.gameConfig.needroomcard[0][2] + ")");
set_self(1628, 7, d.gameConfig.asetcount[1] + "局(房卡x" + d.gameConfig.needroomcard[1][2] + ")");
}
else if (get_self(1884, 43) == 1 && get_self(2380, 43) == 1) {
set_self(1926, 7, d.gameConfig.asetcount[0] + "局(房卡x" + d.gameConfig.needroomcard[0][3] + ")");
set_self(1628, 7, d.gameConfig.asetcount[1] + "局(房卡x" + d.gameConfig.needroomcard[1][3] + ")");
}
if (get_self(2189, 43) == 1 && get_self(2380, 43) == 1) {
set_self(1926, 7, d.gameConfig.asetcount[0] + "局(房卡x" + d.gameConfig.needroomcard[0][0] + ")");
set_self(1628, 7, d.gameConfig.asetcount[1] + "局(房卡x" + d.gameConfig.needroomcard[1][0] + ")");
}
}
}
if (spid_up == 6) {//Game_Modify.get_roomtype_ini();
//d.a.help_txt1("默认");
}
if (spid_up == hu_ting.tips_card_img[0] || spid_up == hu_ting.tips_card_img[1]) {
var tip_card = get_self(hu_ting.tips_card_img[1], 43, 0);
for (var i = 936; i < 955; i++) {
if (get_self(i, 21) > 120 && get_self(i, 41) && get_self(i, 43) == tip_card) {
set_self(i, 19, 565, 0, 0);
d.click_chu_down(i, i);
break;
}
}
}
if (spid_up >= 376 && spid_up <= 379) {
if (get_self(281, 37, 0, 0, 0) == 1 && get_self(281, 7) == "IP") {
d.set_png_pos_un(C_Player.seat);
if (C_Player.seat != -1) {
var n = spid_up - 376;
if (d.ip[d.pos_un[n]]) {
set_self(281, 7, d.ip[d.pos_un[n]]);
}
else {
set_self(281, 7, "IP");
}
}
}
if (C_Player.seat == 0 && spid_up != 376 && Desk.stage == 0) {
set_self(2216, 37, 1, 0, 0);
d.exit = d.pos[spid_up - 376];
}
else {
set_self(2216, 37, 0, 0, 0);
}
}
if (spid_up == 2216) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "exit",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"exit": d.exit
}
};
Net.ws_tcp.send(JSON.stringify(send));
d.exit = -1;
set_self(2216, 37, 0, 0, 0);
}
if (spid_up == 2234) {//LOL准备按钮
Func.createRoom();
var send = {
"app": "youle",
"route": d.route,
"rpc": "war_ready",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"ready": 1,
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
// if(spid_up==202 && get_self(149,37,0,0,0)==1)
// {d.agree[C_Player.seat]=C_Player.seat;
// var send={"app":"youle","route":d.route,"rpc":"agree","data":{"agentid":GameData.AgentId,"gameid":GameData.GameId,"playerid":C_Player.playerid,"roomcode":Desk.roomcode,"seat":C_Player.seat,"agree":0}};
// Net.ws_tcp.send(JSON.stringify(send));
// }
if (spid_up == 153) {
var sex = Desk.PlayerList[C_Player.seat].sex || 1;//1男2女
if (sex == 1) {
Game_Config.Info.TextContentMp3 = ["00031.mp3", "00032.mp3", "00033.mp3", "00034.mp3", "00035.mp3", "00036.mp3", "00037.mp3"];
}
else (sex == 2)
{
Game_Config.Info.TextContentMp3 = ["00041.mp3", "00042.mp3", "00043.mp3", "00044.mp3", "00045.mp3", "00046.mp3", "00047.mp3"];
}
}
// if (spid_up == 153 || spid_up == 698 && get_self(206, 37, 0, 0, 0) == 0 && get_self(698, 35, 0, 0, 0) == 254) {
// var sex = C_Player.sex || 1;
// GameUI.SelectMsg();
// GameUI.SelectEmotion();
// set_self(698, 43, 2, 0, 0);
// for (var spid = 206; spid <= 212; spid++) {
// set_self(spid, 37, 1, 0, 0);
// }
// if (spid_up == 698) {
// set_self(698, 43, 2, 0, 0);
// set_self(698, 35, 255, 0, 0);
// }
// }
// else if (spid_up == 698 && get_self(698, 35, 0, 0, 0) == 255) {
// set_self(698, 43, 1, 0, 0);
// set_self(698, 35, 254, 0, 0);
// }
// if(spid_up==184)
// {var text="结算";//房间号+昵称+总分+昵称+每局分数
// Func.gameCopytext(text);
// }
if (spid_up >= 1770 && spid_up <= 1773) {//显示IP
for (var i = 0; i < Desk.PlayerList.length; i++) {
var ind = Logic.ChangeToStatus(C_Player.seat, i);
if (ind == spid_up - 1770) {
GameUI.OpenInfo(ind, Desk.PlayerList[i].nickname, Desk.PlayerList[i].playerid, Desk.PlayerList[i].ip, Desk.PlayerList[i].sex, Desk.PlayerList[i].seat);
}
}
Utl.playSound("00" + 170 + ".mp3");
}
// else if (spid_up == 13) {//play_wav(".mp3");
// var data = {};
// data.agentid = GameData.AgentId;
// data.playerid = C_Player.playerid;
// data.gameid = GameData.GameId;
// Net.Send_get_player_grade1(data);
// }
else if (spid_up == 1467 || spid_up == 1466) {
set_group(241, 37, 0, 0, 0);
set_group(215, 37, 0, 0, 0);
Utl.playSound("00" + 170 + ".mp3");
}
else if (spid_up >= 1553 && spid_up <= 1562 && get_self(spid_up, 19, 0, 0, 0) > get_self(1665, 19) + parseInt(get_self(1665, 21) / 2) && get_self(spid_up, 19, 0, 0, 0) < get_self(1570, 19, 0, 0, 0) + 36 + 520) {
d.h3 = spid_up - 1553;
d.a.show_history2(spid_up - 1553, spid_up);
Utl.playSound("00" + 170 + ".mp3");
}
else if (spid_up == 1573) {
set_group(216, 37, 0, 0, 0);
set_group(217, 37, 0, 0, 0);
set_group(241, 37, 0, 0, 0);
set_group(215, 37, 0, 0, 0);
Utl.playSound("00" + 170 + ".mp3");
}
else if (spid_up == 1341) {
set_group(216, 37, 0, 0, 0);
set_group(217, 37, 0, 0, 0);
set_group(241, 35, 255, 0, 0);
set_group(215, 35, 255, 0, 0);
d.info2 = 0;//返回第1页
for (var i = 0; i < 4; i++) {
set_self(1163 + i, 1, 131, 0, 0);
}
Utl.playSound("00" + 170 + ".mp3");
}
else if (spid_up >= 1653 && spid_up <= 1664 || spid_up >= 2118 && spid_up <= 2123) {
if (get_self(spid_up, 19, 0, 0, 0) > get_self(1665, 19, 0, 0, 0) && get_self(spid_up, 19, 0, 0, 0) < get_self(1665, 19, 0, 0, 0) + 36 + 510) {
var n = 0;
if (spid_up >= 1653 && spid_up <= 1664) {
n = spid_up - 1653;
}
else if (spid_up >= 2118 && spid_up <= 2123) {
n = spid_up - 2118 + 12;
}
d.a.show_history3(n);
Utl.playSound("00" + 170 + ".mp3");
}
}
else if (spid_up >= 1894 && spid_up <= 1905 || spid_up >= 2124 && spid_up <= 2129) {
if (get_self(spid_up, 19, 0, 0, 0) > get_self(1665, 19, 0, 0, 0) && get_self(spid_up, 19, 0, 0, 0) < get_self(1665, 19, 0, 0, 0) + 36 + 510 && d.h3 > -1) {
var n = 0;
if (spid_up >= 1894 && spid_up <= 1905) {
n = spid_up - 1894;
}
else if (spid_up >= 2124 && spid_up <= 2129) {
n = spid_up - 2124 + 12;
}
d.replay_start(d.h3, n);
}
}
else if (spid_up == 1592) {
set_group(213, 37, 0, 0, 0);
set_group(230, 37, 0, 0, 0);
for (var i = 233; i <= 240; i++) {
set_group(i, 37, 0, 0, 0);
}
set_group(216, 37, 0, 0, 0);
set_group(217, 37, 0, 0, 0);
set_group(241, 37, 0, 0, 0);
set_group(215, 37, 0, 0, 0);
Utl.playSound("00" + 170 + ".mp3");
if (d.replay == 1) {
d.ini_start();
d.replay = 0;
Utl.Exit();
}
for (var j = 0; j < 4; j++) {
Desk.PlayerList[j].avatar = "";
Desk.PlayerList[j].playerid = -1;
Desk.PlayerList[j].nickname = "";
Desk.PlayerList[j].sex = 0;
}
}
else if (spid_up == 1598 || spid_up == 1906) {
d.horse_time = 0;
d.compare_jing_time3 = 0;
set_group(213, 37, 0, 0, 0);
set_group(230, 37, 0, 0, 0);
for (var i = 233; i <= 240; i++) {
set_group(i, 37, 0, 0, 0);
}
set_group(216, 35, 255, 0, 0);
set_group(217, 35, 255, 0, 0);
Utl.playSound("00" + 170 + ".mp3");
for (var j = 0; j < 4; j++) {
Desk.PlayerList[j].avatar = "";
Desk.PlayerList[j].playerid = -1;
Desk.PlayerList[j].nickname = "";
Desk.PlayerList[j].sex = 0;
}
if (d.replay == 1 || spid_up == 1598) {
d.ini_start();
d.replay = 0;
Utl.Exit();
if (CombatInfo && CombatInfo.length > 0) {
d.a.show_history(CombatInfo);
if (d.h3 > -1) {
{
d.a.show_history2(d.h3, d.h3 + 1553);
}
}
}
d.replay_speed(0);
}
if (spid_up == 1906) {
for (var i = 0; i < 4; i++) {
set_self(150 + i, 37, 0, 0, 0);
}
}
}
else if (spid_up == 1414)//分享
{
var head_arr = [];//[1349,1350,1351,1352]
for (var i = 0; i < 4; i++) {
if (get_self(1349 + i, 37) == 1) {
head_arr[head_arr.length] = 1349 + i;
}
}
Func.sharefinend(1, 2, Game_Config.Share.appdownload, '[进贤麻将]房号' + d.roomcode + '(' + d.turn[2] + '局)', Game_Config.Share.description, head_arr);
Utl.playSound("00" + 170 + ".mp3");
}
else if (spid_up == 1288)//调速
{
set_self(1288, 43, 1, 1, 0);
if (get_self(1288, 43, 0, 0, 0) > 3) {
set_self(1288, 43, 1, 0, 0);
}
d.replay_speed(get_self(1288, 43, 0, 0, 0));
}
//LOL打开中马情况
if (spid_up === 2010 && get_self(1158, 37, 0, 0) === 1) {
set_group(244, 37, 1, 0, 0);
var persons = [4, 4, 3, 2];
var person = persons[d.roomtype[6]] || 4;
set_self(2051, 37, 0, 0, 0);
set_self(2052, 37, 0, 0, 0);
set_self(2053, 37, 0, 0, 0);
set_self(2054, 37, 0, 0, 0);
for (var i = 0; i < 10; i++) {
for (var j = 0; j < 4; j++) {
set_self(2011 + j * 10 + i, 37, 0, 0, 0);
// set_self(1538, 37, 0, 0, 0);
}
}
for (var i = 0; i < 10; i++) {
for (var j = 0; j < 4; j++) {
if (d.buyHorse[j][i] && d.buyHorse[j][i] > 0) {
set_self(2011 + j * 10 + i, 43, d.buyHorse[j][i], 0, 0);
set_self(2011 + j * 10 + i, 37, 1, 0, 0);
var nickname = d.getLen(get_self(1164 + j, 7, 0, 0));
set_self(2051 + j, 37, 1, 0, 0);
set_self(2051 + j, 7, nickname, 0, 0);
}
}
}
;
} else if (spid_up === 2055) {
set_group(244, 37, 0, 0, 0);
}
else if (spid_up == 1435) {
d.ini_start(1);
Utl.Exit();
Utl.playSound("00" + 170 + ".mp3");
}
RoomFunc.c_click(spid_up, upx, upy, downx, downy, spid_down)
if (d.replay) {
return;
}
if (spid_up == 700) {//定位
d.show_distance_xin();
set_group(247, 41, 0, 0, 0);
set_self(701, 41, 1);
}
if (spid_up == 701) {//关闭定位
set_group(247, 37, 0, 0, 0);
}
if (spid_up == 813) {//关闭胡家详情
set_group(252, 37, 0, 0, 0);
}
if (spid_up == 2673)//等一等
{
d.user_ctrl0 = new Date().getTime();
if (get_self(1289, 37) == 0) {
set_self(1289, 7, 10);
set_self(1289, 37, 1);
}
set_self(2673, 37, 0);
var data = {};
data.agentid = GameData.AgentId;
data.gameid = GameData.GameId;
data.playerid = C_Player.playerid;
data.roomcode = Desk.roomcode;
data.text = "等一等";
Net.Send_send_text(data);
var send = {
"app": "youle",
"route": d.route,
"rpc": "wait_me",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
if (spid_up == 1363) //掷骰子
{
var send = {
"app": "youle",
"route": d.route,
"rpc": "sieves",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"sieves": d.sieves[2],
}
};
Net.ws_tcp.send(JSON.stringify(send));
set_self(1363, 37, 0, 0, 0);
}
if (spid_up == 2176) //报听
{
d.baoting_send(2);
var sex = C_Player.sex || 1;
var sid = 50 + (sex - 1) * 60;
var tou = "00";
if (String(sid).length == 2) {
tou = "000";
}
else if (String(sid).length == 3) {
tou = "00";
}
Utl.playSound(tou + String(sid + 4) + ".mp3");
}
if (spid_up == 2177) //过
{
d.baoting_send(0);
}
if (spid_up >= 376 && spid_up <= 379) {
d.show_distance_1(spid_up);
}
if (spid_up == 515) {
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if (d.final_hu[0] > -1 && person == 2 && C_Player.seat == 0) {
set_self(437, 37, 1, 0, 0);
if (get_self(377, 37) == 0) {
set_self(437, 37, 0, 0, 0);
}
}
if (d.final_hu[0] > -1 && person == 2 && C_Player.seat == 1) {
set_self(439, 37, 1, 0, 0);
if (get_self(379, 37) == 0) {
set_self(439, 37, 0, 0, 0);
}
}
if (d.final_hu[0] > -1 && person > 2) {
for (var i = 0; i < person; i++) {
set_self(436 + d.pos[i], 37, 1, 0, 0);
if (get_self(346 + d.pos[i], 37) == 0) {
set_self(436 + d.pos[i], 37, 0, 0);
}
}
}
set_group(219, 37, 0, 0, 0);
set_self(2998, 37, 0, 0, 0);
set_group(260, 37, 0, 0, 0);
set_group(252, 37, 0, 0, 0);
d.show_timeready(1);
set_self(2997, 18, 614, 0, 0);
set_self(2997, 19, 287, 0, 0);
d.click_ready(1403);
}
if (spid_up == 1159 || spid_up == 810) {
Func.createRoom();
set_group(244, 37, 0, 0, 0);
set_self(810, 37, 0, 0, 0);
set_group(213, 37, 0, 0, 0);
set_group(230, 37, 0, 0, 0);
set_self(1408, 43, 1, 0, 0);
set_self(2998, 37, 1, 0, 0);
set_self(515, 19, 346, 0, 0);
for (var i = 233; i <= 240; i++) {
set_group(i, 37, 0, 0, 0);
}
if (Utl.getIsInfinite() != 1) {
if (d.user_ctrl[C_Player.seat] == 1 && (Desk.roomtype[14] == 3 || Desk.roomtype[14] == 4) || (Desk.roomtype[14] != 3 && Desk.roomtype[14] != 4)) {
set_self(1408, 37, 1, 0, 0);
}
}
if (d.turn[1] < d.turn[2]) {
set_self(291, 7, "房号:" + Desk.roomcode + "\n(" + String(d.turn[1] + 1) + "/" + Desk.count + "局)");
}
if (d.turn[1] + 1 >= d.turn[2]) {
set_self(1408, 43, 2, 0, 0);
}
for (var i = 0; i < 4; i++) {
if (i > 1) {
// set_self(150 + i, 37, 1, 0, 0);
}
}
Utl.playSound("00" + 170 + ".mp3");
d.show_timeready(1); //显示准备时间
}
if (Desk.stage == 0) {
return;
}
RoomFunc.g_click(spid_up, upx, upy, downx, downy, spid_down)
var re_ban = 0;
if (spid_up >= 1774 && spid_up <= 1779) {
d.click_piao(spid_up);
}
else if (d.status == 2 && spid_up >= 936 && spid_up <= 954 && get_self(spid_up, 21, 0, 0, 0) > 120 && d.gang_option == 0 && d.final_hu[0] == -1 && d.get_hua() == 0 && !RoomFunc.Overtime_chupai()) {
d.click_chu(spid_up);
}
else if (d.status == 2 && spid_up >= 1013 && spid_up <= 1018 && d.get_hua() == 0) {
d.click_operate(spid_up);
}
else if (d.user_ctrl[2] != C_Player.seat && spid_up >= 1131 && spid_up <= 1139 || d.user_ctrl[2] != C_Player.seat && spid_up >= 791 && spid_up <= 799) {
d.click_chi_option(spid_up);
Utl.playSound("00" + 170 + ".mp3");
}
else if (d.peng_option == 1 && spid_up >= 936 && spid_up <= 954 && get_self(spid_up, 21, 0, 0, 0) > 120) {
d.click_peng_option(spid_up);
Utl.playSound("00" + 170 + ".mp3");
}
else if (d.gang_option == 1 && spid_up >= 936 && spid_up <= 954 && get_self(spid_up, 21, 0, 0, 0) > 120) {
d.click_gang_option(spid_up);
Utl.playSound("00" + 170 + ".mp3");
}
else if (spid_up == 1403 || spid_up == 1408) {
Func.createRoom();
set_self(2998, 37, 0, 0, 0);
set_group(252, 37, 0, 0, 0);
set_group(260,37,0,0,0);
d.click_ready(spid_up);
d.send_ip();
d.send_distance();
}
else {
re_ban = 1;
}
if (re_ban == 0 && spid_up > 0 && get_self(1158, 37, 0, 0, 0) == 0 && get_self(1413, 37, 0, 0, 0) == 0) {
var nowtime = new Date().getTime();
d.replay_record(1, nowtime, spid_up);
}
}
d.chi_ani = function () {
d.N = d.ob.oB(Math.round(2879.5));
d.M = d.ob.oB(Math.round(2884.5));
d.quan = d.get_free_o(d.N);
d.waiq = d.get_free_o(d.M);
AM.remove(d.quan);
AM.add(d.quan).bfunc(function () {
set_self(d.quan, 34, 0, 0, 0);
set_self(d.quan, 37, 1, 0, 0);
set_self(d.quan, 41, 0, 0, 0);
}).rotate(360, 35).rotate(0, 35).repeat().start();
AM.remove(d.waiq);
AM.add(d.waiq).bfunc(function () {
set_self(d.waiq, 35, 200, 0, 0);
set_self(d.waiq, 37, 1, 0, 0);
set_self(d.waiq, 33, 100, 0, 0);
}).zoom(140, 35).zoom(100, 35).repeat().start();
}

View File

@@ -0,0 +1,381 @@
//显示时间
d.show_time = function (t) {
if (d.status == 3 || d.final_hu[0] > -1) {
set_self(1289, 37, 0, 0, 0);//倒计时
set_self(1289, 7, -1);
set_self(1327, 37, 0, 0, 0);//风向
set_self(1327, 35, 255, 0, 0);
set_self(1021, 37, 0, 0, 0);
//头像
for (var i = 376; i <= 379; i++) {
set_self(i, 35, 255, 0, 0);
}
return;
}
set_self(1289, 37, 1, 0, 0);
set_self(1289, 35, 255, 0, 0);
if (get_self(1289, 37) == 1) {
set_self(2997, 37, 0, 0, 0);
}
var t1 = new Date().getTime();
if (d.user_ctrl[0] > 0) {
var can_operate = 0;
for (var i = 0; i < 6; i++) {
if (d.user_eat_bump[C_Player.seat][i] > 0) {
can_operate = 1;
break;
}
}
var limit_t = d.Time_initial;
if (d.throw_card == 0) {
limit_t = 240;
}
if (RoomFunc.Overtime_chupai() && d.user_ctrl[2] == C_Player.seat && d.throw_card) {
limit_t = d.Time_Quick;
}
if (d.status == 1) {
limit_t = 240;
}
if (get_self(1965, 37) == 1) {
limit_t = 250;
if (d.getserver_time.length == 13) {
d.getserver_time = d.getserver_time[0];
}
d.user_ctrl[0] = d.getserver_time;
}
for (var i = 0; i < 4; i++) {
if (d.baoting[i] == 1) {
limit_t = 240;
if (d.getserver_time.length == 13) {
d.getserver_time = d.getserver_time[0];
}
d.user_ctrl[0] = d.getserver_time;
}
}
if (Desk.roomtype[19]) {
limit_t = d.Time_playcard;
}
t = limit_t - ifast_div(t1 - d.user_ctrl0, 100);
if (d.replay == 0 && (d.user_ctrl[2] == C_Player.seat || can_operate == 1) && (t <= 50 || get_self(1289, 37) == 0) && d.final_hu[0] == -1 && d.sieves[3] == -1 && Desk.roomtype[19] != 1) {
set_self(2673, 37, 1);
}
if (((d.user_ctrl[2] != C_Player.seat && can_operate == 0) || d.final_hu[0] > -1 || t > 50) && get_self(2673, 37) == 1) {
set_self(2673, 37, 0);
}
if (t1 - d.user_ctrl0 < 1000) {
t = limit_t - 10;
}
if (t > 0) {
t = (limit_t / d.speed - (limit_t - t)) * d.speed;
t = parseInt(t);
}
if (t < -1) {
t = -1;
if (d.recon == 1 || d.backstage == 1) {
t = 0;
}
}
} else {
t = t - 1 * d.speed;
if (t < -1) {
t = -1;
if (d.recon == 1 || d.backstage == 1) {
t = 0;
}
}
}
set_self(1289, 7, parseInt(t / 10));
d.ctrl = 0;//控制权是否有变动
var l = String(parseInt(t / 10)).length;
set_self(1289, 20, 26 * l, 0, 0);
if (l == 1) {
set_self(1289, 18, 627, 0, 0);
set_self(1289, 20, 26, 0, 0);
} else {
set_self(1289, 18, 614, 0, 0);
set_self(1289, 20, 52, 0, 0);
}
if (t <= 0) {
d.offline_war(100);
}
if (t == -1) {
if (get_self(1363, 37)) {
d.Play_Card();
}
set_self(1289, 37, 0, 0, 0);
if (d.status == 1) {
d.status = 2;
}
if (RoomFunc.Overtime_chupai() && !Desk.roomtype[19] && Desk.roomtype[18] == 2 && !get_self(1965, 37)) {
d.OverTime_card();//托管主函数
}
if (Desk.roomtype[14] == 2 && !get_self(1965, 37)) {
d.OverTime_card();//托管主函数
}
}
}
d.show_tuoguan = function () {
if (d.replay == 0) {
d.OverTime = 1;
set_group(221, 37, 1, 0, 0);
set_self(2233, 43, 2, 0, 0);
}
}
d.show_timeready = function (click) {//准备函数
if (d.replay == 1 || get_self(1598, 37) == 1) {
d.hide_timeready();
return;
}
if (d.turn[1] + 1 >= d.turn[2] && d.turn[2] != 0) {
d.hide_timeready();
return;
}
if (d.status >= 1 && d.status < 3 && Desk.stage == 1 && d.final_hu[0] == -1) {
d.hide_timeready();
return;
}
set_self(2997, 37, 1, 0, 0);
if (get_self(1157, 37)) {
set_self(2997, 18, 23, 0, 0);
set_self(2997, 19, 98, 0, 0);
} else {
set_self(2997, 18, 613, 0, 0);
set_self(2997, 19, 287, 0, 0);
}
if (!click) {
set_self(2997, 7, "0" + 0, 0, 0);
}
if (!get_self(2997, 57)) {
set_self(2997, 57, 1000, 0, 0);
}
}
d.hide_timeready = function () {//准备函数
set_self(2997, 37, 0, 0, 0);
set_self(2997, 57, 0, 0, 0);
}
//显示时间动画
d.show_time_flash = function (spid) {
if (spid == 2997 && get_self(2997, 37)) {
var t = Number(get_self(2997, 7));
if (get_self(2997, 37, 0, 0, 0) == 1) {
t += 1;
if (t < 10) {
set_self(2997, 7, "0" + t, 0, 0)
} else {
set_self(2997, 7, t, 0, 0)
if (t >= 100) {
t = 0;
set_self(2997, 7, "0" + t, 0, 0)
}
}
}
if (Desk.roomtype[19] == 1 && get_self(2997, 7) >= 15 && get_self(2997, 7) <= 16 && (get_self(1403, 37) == 1 || get_self(1408, 37) == 1)) {
Utl.playSound("00176.mp3");
}
if (Desk.roomtype[19] == 1 && get_self(2997, 7) >= 19 && (get_self(1403, 37) == 1 || get_self(1408, 37) == 1)) {
d.click_ready(1403);
}
}
if (Desk.stage != 0 && spid == 801 && get_self(192, 37, 0, 0, 0) == 0) {
var t = parseInt(get_self(1289, 7));
if (get_self(1289, 37, 0, 0, 0) == 1 && t > -1) {
t -= 1;
d.show_time(t);
}
}
if (spid == 801 && get_self(2673, 37) == 1 && d.final_hu[0] != -1) {
set_self(2673, 37, 0);
}
if (spid == 804 && Desk.stage != 0) {//听牌显示
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
var id = [2235, 2236, 2237, 2238];
if (person == 2) {////(2人LOL)
id = [2235, 2237, 2237, 2237];
}
if (d.final_hu[0] == -1) {
for (var i = 0; i < person; i++) {
if (d.baoting[i] == 2) {
set_self(id[d.pos[i]], 37, 1, 0, 0);
break;
}
set_self(id[d.pos[i]], 37, 0, 0, 0);
}
} else {
for (var i = 0; i < 4; i++) {
set_self(2235 + i, 37, 0, 0, 0);
}
}
}
if (Desk.stage != 0 && spid == 804) {
if (d.status >= 1 && d.status <= 2 && d.final_hu[0] == -1 && d.replay == 0) {
if (!get_self(2233, 37) && Desk.roomtype[19] != 1) {
set_self(2233, 37, 1, 0, 0);
}
} else {
if (get_self(2233, 37)) {
set_self(2233, 37, 0, 0, 0);
}
}
}
if (d.clicks_an <= -1 && d.user_ctrl[2] == C_Player.seat && d.user_ctrl[2] != -1 && !d.change_card_state && (Desk.roomtype[5] != 6 || Desk.roomtype[5] == 6 && d.jing_flow)) {
if (d.ting_pai.tip_tp && d.ting_pai.tip_tp.length && d.ting_pai.tip_ting && d.ting_pai.tip_ting.length) {
var pos = d.ting_pai.tip_tp.indexOf(get_self(d.last_id, 43));
if (pos > -1 && d.clicks_an <= -1) {
d.clicks_an--;
if (d.clicks_an == -30) {
if (!get_self(1247, 37)) {
d.show_hu_card(d.ting_pai.tip_ting[pos]);
}
} else if (d.clicks_an < -30) {
d.clicks_an = -31;
}
}
}
}
if (Desk.stage != 0 && spid == 804 && d.final_hu[0] == -1 && get_self(1363, 37)) {
if (d.OverTime) {
d.jishi_chu++;
if (d.jishi_chu >= 15) {
d.Play_Card();
}
} else {
d.jishi_chu++;
if (d.jishi_chu >= 100) {
d.Play_Card();
}
}
} else if (d.OverTime && Desk.stage != 0 && d.status == 2 && spid == 804 && d.final_hu[0] == -1 && !get_self(1363, 37) && !Desk.roomtype[19]) {
d.jishi_chu++;
if (d.jishi_chu >= 30) {
d.jishi_chu = 0;
d.OverTime_card();
}
}
}
//自动出牌
d.OverTime_card = function () {
function operate(array) {//操作函数([操作顺序1,2,3])
for (var k = 0; k < array.length; k++) {
for (var i = 0; i < 6; i++) {//查询操作
if (get_self(1018 - i, 37, 0, 0) == 1 && get_self(1018 - i, 43, 0, 0) == array[k]) {
d.click_operate(1018 - i);
return true;
}
}
}
}
if (get_self(2177, 37)) {
d.baoting_send(0);
d.show_tuoguan();//开启托管
return;
}
if (d.identity[4] == C_Player.seat) {
if (operate([5])) {
return;
}
for (var i = 0; i < 4; i++) {
if (i != d.identity[4] && d.baoting[i] == 1) {
return;
}
}
}
if (d.user_ctrl[2] == C_Player.seat) {//有控制权
d.show_tuoguan();//开启托管
if (operate([5, 6])) {//胡,过
return;
}
if (d.gang_option == 1) {
var gang_hand = [];
var hands = d.c(d.hand[C_Player.seat][0]);
if (d.user_ctrl[3] > 0) {//控制权有摸的牌添加摸得牌
hands.push(d.user_ctrl[3]);
}
Util.ordArray(hands);
for (var i = 0; i < hands.length - 3;) {
if (hands[i] == hands[i + 3]) {
gang_hand.push(hands[i]);
i += 4;
continue;
}
i++;
}
for (var j = 0; j < gang_hand.length; j++) {
for (var i = 0; i < 19; i++) {
if (get_self(936 + i, 37, 0, 0) == 1 && get_self(936 + i, 1, 0, 0) == 502 && get_self(936 + i, 21) > 120 && get_self(936 + i, 41) && get_self(936 + i, 43) == gang_hand[j]) {//多杠,已点杠按钮
d.click_gang_option(936 + i);
return;
}
}
}
}
if (d.baoting[C_Player.seat] == 2) {
for (var i = 954; i > 935; i--) {
if (get_self(i, 37, 0, 0) == 1 && get_self(i, 21) > 120 && get_self(i, 41) && get_self(i, 43) == d.Ting_Tip[d.Ting_Tip.length - 1]) {
set_self(i, 19, 565, 0, 0);
d.click_chu_down(i, i);
return;
}
}
for (var i = 954; i > 935; i--) {
if (get_self(i, 37, 0, 0) == 1 && get_self(i, 21) > 120 && get_self(i, 41)) {
set_self(i, 19, 565, 0, 0);
d.click_chu_down(i, i);
return;
}
}
}
var tip_card = d.tips_Card();
if (tip_card) {
for (var i = 954; i > 935; i--) {
if (get_self(i, 37, 0, 0) == 1 && get_self(i, 21) > 120 && get_self(i, 41) && get_self(i, 43) == tip_card) {
set_self(i, 19, 565, 0, 0);
d.click_chu_down(i, i);
return;
}
}
}
for (var i = 954; i > 935; i--) {
if (get_self(i, 37, 0, 0) == 1 && get_self(i, 21) > 120 && get_self(i, 41)) {
set_self(i, 19, 565, 0, 0);
d.click_chu_down(i, i);
return;
}
}
} else {//无控制权
var operate_mode = 0;
for (var i = 0; i < d.user_eat_bump[C_Player.seat].length; i++) {
if (d.user_eat_bump[C_Player.seat][i] > 0) {
operate_mode = 1;
break;
}
}
if (operate_mode > 0) {
d.show_tuoguan();//开启托管
if (operate([5, 6])) {//胡,过
return;
}
if (get_self(1131, 37, 0, 0, 0) == 1 || get_self(791, 37, 0, 0, 0) == 1) {//吃选项
for (var i = 0; i < 9; i++) {
if (get_self(791 + i, 37, 0, 0) == 1) {
d.click_chi_option(791 + i);
return;
}
if (get_self(1131 + i, 37, 0, 0) == 1) {
d.click_chi_option(1131 + i);
return;
}
}
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,302 @@
//杠提示动画
d.show_gang_point_flash = function () {
for (var i = 0; i < 14; i++) {
if (get_self(1143 + i, 37, 0, 0, 0) == 1) {
play_ani123(1, 1143 + i, 19, 565, 580, 700, 0, 0, 1);
if (d.click_ban == 0) {
d.click_ban = 1;
}
}
else {
play_ani123(0, 1143 + i, 19);
}
}
}
//显示吃碰杠牌动画
d.show_chi_peng_act = function (spid) {
if (spid == 801 && get_self(149,37) && d.recon != 1 && d.backstage != 1) {
if (d.act[0] >= 2 && d.act[0] <= 10 && d.act[2] > 0 || d.act[0] == 19 && d.act[2] > 0) {
d.act[2] = 0;
var seat = d.act[1];
if (seat == C_Player.seat && d.act[0] < 4) {
// var pos_r=d.get_handpos_byid(seat,d.act[3]);//哪几个位置的牌要亮
// for(var i=0;i<pos_r.length;i++)
// {set_self(pos_r[i],1,303,0,0);
// }
d.set_show_chi_pos(seat, d.act[0]);
}
else {//var light_cards=d.get_rand_3handcard(seat,d.act[3].length);
}
d.show_sea();
d.Ting_Tip=[];d.ctrl_ting=-2;
d.show_my13card();
d.show_you13card();
d.show_shang13card();
d.show_zuo13card();
//if(d.act[0]<6)
{
d.show_14card();
}
if (seat != C_Player.seat && d.act[0] <= 4 && d.act[0] >= 2 || seat == C_Player.seat && d.act[0] == 4) {
}
else {
d.set_show_chi_pos(seat, d.act[0]);
}
}
else if (d.act[0] == 12 && d.act[2] > 0) {
d.act[2] = 0;
for (var i = 0; i < 4; i++) {
if (d.act[3][i] != undefined && d.act[3][i] > -1) {
var seat = d.act[3][i];
d.set_show_chi_pos(seat, d.act[0]);
d.set_show_qishou_pos();
}
}
}
if (d.act_piao[0] >= 0 && d.act_piao[0] <= 5 && d.act_piao[2] > 0) {
//var ban=0;
// if(d.status==2)
// {var show_spids=[1780,1781,1782,1783];
// var n=0;
// for(var i=0;i<4;i++)
// {
// if(get_self(show_spids[i],37,0,0,0)==1)
// {n+=1;}
// }
// if(n==3)
// {ban=1;}
// }
if (d.status < 3) {
d.act_piao[2] = 0;
var seat = d.act_piao[1];
d.set_show_piao_pos(seat, d.act_piao[0]);
}
}
//for (var i = 0; i < 4; i++) {
//if (get_self(2160 + i, 37, 0, 0, 0) == 1 && d.show_chipeng[i] > 0) {
//d.show_chipeng[i] -= 1;//吃碰文字计时器
//if (d.show_chipeng[i] == 0) {
//set_self(2160 + i, 37, 0, 0, 0);
//if (i == 0) {
//set_group(206, 41, 1, 0, 0);
//set_group(206, 35, 255, 0, 0);
//}
//}
//}
//}
for (var i = 0; i < 4; i++) {
var show_spids = [1784, 1791, 1798, 1805];
if (get_self(show_spids[i], 37, 0, 0, 0) == 1 && d.qishou_time > 0) {
d.qishou_time -= 1;//起手胡文字计时器
if (d.qishou_time == 0) {
set_group(240, 37, 0, 0, 0);
}
}
}
for (var i = 0; i < 4; i++) {
if (d.piao_time[i] > 0) {
d.piao_time[i] -= 1;//飘文字计时器
if (d.piao_time[i] == 0) {
set_self(1780 + i, 37, 0, 0, 0);
}
}
}
if (get_self(1676, 37, 0, 0, 0) == 1 && d.act_chao_host[1] > 0) {
d.act_chao_host[1] -= 1;//抄庄&烂庄计时器
if (d.act_chao_host[1] == 0) {
set_self(1676, 37, 0, 0, 0);
d.act_chao_host[0] = 0;
}
}
}
}
//显示吃碰动画
d.set_show_chi_pos = function (seat, f) {
var show_spids = [2160, 2161, 2162, 2163];
var pos = d.pos[seat];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if (person == 2) {
show_spids = [2160, 2162, 2162, 2162];
if (pos != 0) {
pos = 2;
}
}
var show_spid = show_spids[pos];
RoomFunc.operate_before(show_spid,f);
}
//显示出牌碰吃牌成功后的动画
d.show_act_pai_flash = function () {
if (d.act_pai[1] == -1) {
return;
}
//d.act_pai=[3,seat0,throw_card0,near_seat,-1];//牌的动画[1 put\2peng\3chi\4gang\5hu ,本次操作的座位,上个操作的牌,上个操作的牌池,自摸杠的座位]
if (d.act_pai[0] == 4)//自摸杠
{
}
if (d.act_pai[0] == 9)//抢杠胡
{
}
if (C_Player.seat != d.act_pai[1] && d.act_pai[0] >= 1 && d.act_pai[0] <= 3 || C_Player.seat == d.act_pai[1] && d.act_pai[0] == 3) {
d.set_show_chi_pos(d.act_pai[1], d.act_pai[0] + 1);
}
d.show_sea();
var tar_seat = d.act_pai[1];
var tar_posxys = [[620, 600], [1010, 315], [616, 75], [200, 320]];
var tar_posxy = tar_posxys[d.pos[tar_seat]];
var id_whs = [[41, 50], [44, 46], [41, 50], [44, 46]];
var id_fs = [303, 300, 303, 301];
var id_seat = d.act_pai[3];
var id = 0, x = 0, y = 0, t = 300;
if (d.act_pai[3] >= 0) {
id_seat = d.act_pai[3];
var l = d.sea[d.pos[id_seat]].length;
id = d.sea[d.pos[id_seat]][l];
x = get_self(id, 18, 0, 0, 0);
y = get_self(id, 19, 0, 0, 0);
t = 350;
}
else if (d.act_pai[4] >= 0) {
id_seat = d.act_pai[4];
var id_posxys = [[620, 600], [1010, 315], [616, 75], [200, 320]];
x = id_posxys[d.pos[id_seat]][0];
y = id_posxys[d.pos[id_seat]][1];
t = 350;
}
var id_wh = id_whs[d.pos[id_seat]];
var id_f = id_fs[d.pos[id_seat]];
// set_self(1586,37,1,0,0);
// set_self(1586,1,id_f,0,0);
// set_self(1586,18,x,0,0);
// set_self(1586,19,y,0,0);
// set_self(1586,20,id_wh[0],0,0);
// set_self(1586,21,id_wh[1],0,0);
// set_self(1586,43,d.act_pai[2],0,0);
// play_ani123(1,1586,18,x,tar_posxy[0],t,1);
// play_ani123(1,1586,19,y,tar_posxy[1],t,1);
d.show_my13card();
d.show_you13card();
d.show_shang13card();
d.show_zuo13card();
d.show_14card();
set_self(1586, 37, 0, 0, 0);
play_ani123(0, 1586, 18);
play_ani123(0, 1586, 19);
d.click_ban = 1;
d.act_pai = [-1, -1, 0, -1, -1];
}
//停止牌动画
d.act_pai_doend = function (id, sx, allend) {
if (id > 0 && Desk.stage != 0 && d.recon != 1 && d.backstage != 1) {
if (id == 1586 && sx == 18 && allend == 1 || id == 1586 && sx == 19 && allend == 1) {
d.show_my13card();
d.show_you13card();
d.show_shang13card();
d.show_zuo13card();
d.show_14card();
set_self(1586, 37, 0, 0, 0);
play_ani123(0, 1586, 18);
play_ani123(0, 1586, 19);
d.click_ban = 1;
}
}
}
//显示胡
d.show_final_hu = function () {
if (d.final_hu[0] > -1) {
if(Utl.getIsInfinite() == 1 && d.person_info[C_Player.seat] && d.person_info[C_Player.seat].new_one==1) {
return;
}
d.Ting_ui=[];
set_self(1289, 37, 0, 0, 0);//倒计时
set_self(1289, 7, -1);
set_self(1327, 37, 0, 0, 0);//风向
set_self(1327, 35, 255, 0, 0);
set_self(1021, 37, 0, 0, 0);
//头像
for (var i = 376; i <= 379; i++) {
set_self(i, 35, 255, 0, 0);
}
var seat = d.final_hu[0];
// if(seat==4)//流局
// {d.show_xiao_settle(1);
// return;
// }
if (seat != 4) {
var hu_ids = [1730, 1731, 1732, 1733];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if (person == 2) {
hu_ids = [1730, 1732, 1732, 1732];
}
set_self(hu_ids[d.pos[seat]], 37, 1, 0, 0);
if(d.hu_note[0]>0)
{set_self(hu_ids[d.pos[seat]],43,2,0,0);
//d.hu_ani();
}
else
{set_self(hu_ids[d.pos[seat]],43,3,0,0);
//d.hu_ani();
}
if(d.hu_note[0]>0){
set_self(hu_ids[d.pos[d.hu_note[0]-1]],43,1,0,0);
set_self(hu_ids[d.pos[d.hu_note[0]-1]], 37, 1, 0, 0);
}
}
set_self(1021, 37, 0, 0, 0);
set_self(1327, 37, 0, 0, 0);//方向
set_self(1289, 37, 0, 0, 0);
set_self(1289, 7, -1);
d.rep[0] += 1;
var ban = 0;
for (var i = 0; i < 4; i++) {
if (d.user_ctrl[4 + i] == 1) {
ban = 1;
return;
}
}
if (d.horse_time == 0 && ban == 0 && d.continue_hu==0 && d.recon != 1 && d.backstage!=1) {
d.horse_time = 1;
}
//1炮多响
for (var i = 0; i < 2; i++) {
if (d.many_hu[i][0] > -1) {
var seat = d.many_hu[i][0];
if (seat != 4) {
var hu_ids = [1730, 1731, 1732, 1733];
set_self(hu_ids[d.pos[seat]], 37, 1, 0, 0);
}
}
}
}
}
//胡添加动画
d.hu_ani = function(){
AM.remove(2490);
AM.add(2490).bfunc(function(){
set_self(2490,37,1,0,0);
set_self(2490,18,-640,0,0);
}).move('right',1280,15).wait(15,function(){
set_self(2490,37,0,0,0);
set_self(2490,18,-640,0,0);
}).start();
}

View File

@@ -0,0 +1,789 @@
//显示操作按钮
d.show_operate = function () {
d.operate_show_con=0;
//d.user_eat_bump chi 1,peng 2,gang 3,ting 4,hu 5,guo 6//杠碰吃、自摸杠
set_self(1962, 41, 0, 0, 0);
set_group(206, 37, 0, 0, 0);
var n = 0;
var pai_vis = 0;
if (get_self(1013, 37, 0, 0, 0) == 1) {
return;
}
if(d.user_eat_bump[C_Player.seat][0] || d.user_eat_bump[C_Player.seat][1])
{
for (var i = 0; i < 19; i++){
var spid = 936 + i;
if(get_self(spid, 21) > 120 && get_self(spid, 43) == d.throw_card){
set_self(spid, 19, 565);
}
}
}
if (d.user_eat_bump[C_Player.seat][5])//胡
{
var id = d.get_free_operate();
set_self(id, 37, 1, 0, 0);
set_self(id, 43, 5, 0, 0);
d.chi_ani();
//set_self(id,35,160,0,0);
//play_ani123(1,id,35,160,255,200,1);
n += 1;
}
if (d.user_eat_bump[C_Player.seat][0] || d.user_eat_bump[C_Player.seat][3] || d.user_eat_bump[C_Player.seat][4])//杠
{
//if(d.ting_status[C_Player.seat]==1)
{
var id = d.get_free_operate();
set_self(id, 37, 1, 0, 0);
set_self(id, 43, 3, 0, 0);
d.chi_ani();
//set_self(id,35,160,0,0);
//play_ani123(1,id,35,160,255,200,1);
n += 1;
}
// var id=d.get_free_operate();
// set_self(id,37,1,0,0);
// set_self(id,43,7,0,0);
// set_self(id,35,160,0,0);
// play_ani123(1,id,35,160,255,200,1);
// n+=1;
}
if (d.user_eat_bump[C_Player.seat][1])//碰
{
var id = d.get_free_operate();
set_self(id, 37, 1, 0, 0);
set_self(id, 43, 2, 0, 0);
d.chi_ani();
//set_self(id,35,160,0,0);
//play_ani123(1,id,35,160,255,200,1);
n += 1;
pai_vis = 1;
}
if (d.user_eat_bump[C_Player.seat][2])//吃
{
var id = d.get_free_operate();
set_self(id, 37, 1, 0, 0);
set_self(id, 43, 1, 0, 0);
d.chi_ani();
//set_self(id,35,160,0,0);
//play_ani123(1,id,35,160,255,200,1);
n += 1;
pai_vis = 1;
}
else {
set_group(211, 37, 0, 0, 0);
}
if (d.user_eat_bump[C_Player.seat][6])//听
{
var id = d.get_free_operate();
set_self(id, 37, 1, 0, 0);
set_self(id, 43, 4, 0, 0);
d.chi_ani();
//set_self(id,35,160,0,0);
//play_ani123(1,id,35,160,255,200,1);
n += 1;
}
if (d.user_eat_bump[C_Player.seat][7] == 1)//要
{
var id = d.get_free_operate();
set_self(id, 37, 1, 0, 0);
set_self(id, 43, 8, 0, 0);
//set_self(id,35,160,0,0);
//play_ani123(1,id,35,160,255,200,1);
n += 1;
}
if (n > 0) {
d.rep[0] += 1;
d.operate_time = 7 + 1;//纠正计时器
if (d.throw_card > 0 && pai_vis == 1) {
set_self(1850, 37, 1, 0, 0);
set_self(1850, 43, d.throw_card, 0, 0);
n += 0.5;
}
//if(d.user_ctrl[2]!=C_Player.seat)
{
var id = d.get_free_operate();
set_self(id, 37, 1, 0, 0);
set_self(id, 43, 6, 0, 0);
//set_self(id,35,160,0,0);
//play_ani123(1,id,35,160,255,200,1);
//n+=1.2;
}
}
else {
return;
}
var x1 = 0;
for (var i = 0; i < 19; i++) {
if (get_self(936 + i, 37, 0, 0, 0) == 1 && get_self(936 + i, 21, 0, 0, 0) > 120) {
x1 = get_self(936 + i, 18, 0, 0, 0) + 89;
if (d.user_ctrl[2] == C_Player.seat) {
x1 -= 83;
}
}
}
var w = get_self(1013, 20, 0, 0, 0) + 10;
var x0 = parseInt((1280 - w * n) / 2);
//x0=x1-w*n;
var n = 0;
for (var i = 0; i < 6; i++) {
if (get_self(1013 + i, 37, 0, 0, 0) == 1) {
set_self(1013 + i, 18, x0 + n * w + 5);
set_self(d.N +i,18,get_self(1013+i,18)+6.5);
set_self(d.N +i,19,get_self(1013+i,19)+9);
set_self(d.M+i,18,get_self(1013+i,18));
set_self(d.M +i,19,get_self(1013+i,19));
if (get_self(1013 + i, 43, 0, 0, 0) == 6) {
if (get_self(1850, 37, 0, 0, 0) == 1) {
set_self(1850, 18, x0 + n * w + 5, 0, 0);
n += 0.5;
}
set_self(1013 + i, 18, parseInt(x0 + (n + 0.1) * w + 5), 0, 0);
set_self(2881+i,18,get_self(1013+i,18)+6.5);
}
n += 1;
}
}
if (d.user_eat_bump[C_Player.seat][2])//吃
{
var arr = d.straight3(d.hand[C_Player.seat][0], d.throw_card);
d.show_chi_option(arr);
}
d.rep[0] += 1;
for (var i=1013;i<=1018;i++){
if (get_self(i, 37,0,0)==1){
set_self(1962, 37, 1, 0, 0);
break;
}
}
}
d.get_free_operate = function () {
for (var i = 0; i < 6; i++) {
if (get_self(1013 + i, 37, 0, 0, 0) == 0) {
return 1013 + i;
}
}
return 0;
}
d.get_free_o = function(N){
for (var i = 0; i < 5; i++) {
if(get_self(N + i, 37, 0, 0, 0) == 0) {
return N + i;
}
}
return 0;
}
d.object = function(N){
this.O = N,
this.oB = function(SS){
return SS + true;
}
}
//d.get_free_wq = function(){
//for (var i = 0; i < 6; i++) {
//if(get_self(2886 + i, 37, 0, 0, 0) == 0) {
//return 2886 + i;
//}
//}
//return 0;
//}
//点击操作按钮
d.click_operate = function (spid_up) {
if (!RoomFunc.operate_click(spid_up)) {
return;
}
var f = get_self(spid_up, 43, 0, 0, 0);
d.rep[0] += 1;
d.click_id = 0;
set_group(237, 37, 0, 0, 0);
set_group(206, 37, 0, 0, 0);
var operate = [0, 0, 0];//操作类型,操作选项,操作备注
var sex = C_Player.sex || 1;
var sid = 50 + (sex - 1) * 60;
var tou = "00";
if (String(sid).length == 2) {
tou = "000";
}
else if (String(sid).length == 3) {
tou = "00";
}
if (f == 1) {
operate[0] = 3;
for(var i=0;i<5;i++){
AM.cls_id(2881+i);
set_self(2886+i, 33, 100, 0, 0);
set_self(2881+i, 34, 0, 0, 0);
AM.cls_id(2886+i);
}
//if(sid)
//{Utl.playSound(tou+String(sid+1)+".mp3");}
}//吃
else if (f == 2) {
operate[0] = 1;
for(var i=0;i<5;i++){
AM.cls_id(2881+i);
set_self(2886+i, 33, 100, 0, 0);
set_self(2881+i, 34, 0, 0, 0);
AM.cls_id(2886+i);
}
if (sid) {
//Utl.playSound(tou + String(sid + 2) + ".mp3");
}
// if(d.isArray(d.throw_card))
// {operate=d.show_peng_14option(f);
// if(d.peng_option==1)
// {return;}
// }
}//碰
else if (f == 3 || f == 7)//杠
{
operate[0] = 2;
for(var i=0;i<5;i++){
AM.cls_id(2881+i);
set_self(2886+i, 33, 100, 0, 0);
set_self(2881+i, 34, 0, 0, 0);
AM.cls_id(2886+i);
}
// if(f==3)
// {operate[2]=2;
// d.bar_roll[0]=2;
// }
// else if(f==7)
// {operate[2]=1;
// d.bar_roll[0]=1;
// }
if (sid) {
//Utl.playSound(tou + String(sid + 3) + ".mp3");
}
if (d.user_ctrl[2] == C_Player.seat) {
operate = d.show_gang_14option(f);
if (d.gang_option == 1) {
return;
}
}
}
else if (f == 6) {
operate[0] = 6;
for(var i=0;i<5;i++){
AM.cls_id(2881+i);
set_self(2886+i, 33, 100, 0, 0);
set_self(2881+i, 34, 0, 0, 0);
AM.cls_id(2886+i);
}
Utl.playSound("00" + 170 + ".mp3");
var yao = 0;
for (var i = 0; i < 6; i++) {
if (get_self(1013 + i, 37, 0, 0, 0) == 1 && get_self(1013 + i, 43, 0, 0, 0) == 8) {
yao = 1;
break;
}
}
if (yao == 1) {
operate[0] = 8;
operate[1] = 0;
}//不要
}//过
else if (f == 5)//胡
{
operate[0] = 7;
for(var i=0;i<5;i++){
AM.cls_id(2881+i);
set_self(2886+i, 33, 100, 0, 0);
set_self(2881+i, 34, 0, 0, 0);
AM.cls_id(2886+i);
}
d.zhenshu=0;
d.shanD(100);
if(d.Ting_Tip.length && d.Ting_Tip.length>=0 || d.Ting_ui.length && d.Ting_ui.length>=0 && d.user_ctrl[2]==C_Player.seat && get_self(2489,37)==1){
set_self(2489,37,0,0,0);
set_self(2392,37,0,0,0);
d.ting_statu=-1;
}
if(d.Ting_Tip.length<=0 || d.Ting_ui.length<=0 && d.user_ctrl[2]==C_Player.seat){
d.ting_statu=0;
}
if (d.user_ctrl[2] == C_Player.seat) {
operate[1] = 0;
if (sid) {
//Utl.playSound(tou + String(sid + 6) + ".mp3");
}
}//自摸胡(杠上开花)
else {
operate[1] = 1;//碰吃胡(杠上开花)
if (sid) {
//Utl.playSound(tou + String(sid + 5) + ".mp3");
}
if (d.last_operate[2] > -1 && d.last_operate[0] == 4)//上个操作是自摸杠
{
operate[1] = 2;
}//抢杠胡
}
}
else if (f == 8) {
operate[0] = 8;
operate[1] = 1;
Utl.playSound("00" + 170 + ".mp3");
}//要
var ban = 0;
if (operate[0] == 3) {
var arr = d.straight3(d.hand[C_Player.seat][0], d.throw_card);
if (arr.length == 1) {
set_group(211,37,0,0,0);
}
else {
//d.show_chi_option(arr);
ban = 1;
}
}
set_self(1289, 37, 0, 0, 0);
set_self(1289, 7, -1);
console.log("111operate=" + operate);
if (ban == 0) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "operate",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"operate": operate
}
};
Net.ws_tcp.send(JSON.stringify(send));
d.click_ban = 1;
if (operate[0] == 6 && d.user_ctrl[2] == C_Player.seat) {
d.click_ban = 1;
d.show_my13card();
d.show_14card();
if(d.Ting_Tip.length && d.Ting_Tip.length>0 || d.Ting_ui.length && d.Ting_ui.length>0 && d.user_ctrl[2]==C_Player.seat && get_self(2489,37)==1){
set_self(2489,37,0,0,0);
set_self(2392,37,0,0,0);
d.ting_statu=-1;
}
if(d.Ting_Tip.length<=0 || d.Ting_ui.length<=0 && d.user_ctrl[2]==C_Player.seat){
d.ting_statu=0;
}
}
if (operate[0] == 7 && d.user_ctrl[2] == C_Player.seat) {
d.baoting = [];
}
else {
d.user_ctrl[2] = -1;
}
d.bar_roll[0] = 0;
set_self(1289, 37, 0, 0, 0);
set_self(1289, 7, -1);
for (var i = 0; i < 4; i++) {
set_self(376 + i, 35, 255, 0, 0);
}
for (var i = 0; i < 14; i++) {
play_ani123(0, 1143 + i, 19);
}
set_group(212, 37, 0, 0, 0);
d.peng_option = 0;
d.peng_flame = [];
d.gang_option = 0;
d.gang_flame = [];
d.Ting_Tip=[];
d.user_eat_bump[C_Player.seat] = [0, 0, 0, 0, 0, 0, 0, 0];
}
}
//显示吃选项
d.show_chi_option = function (arr, arr1) {
arr = arr || [];
arr1 = arr1 || [];
var l = arr.length + arr1.length;
var w = arr.length + arr1.length;
var id_x = 0;
for (var i = 0; i < 6; i++) {
if (get_self(1013 + i, 43) == 1) {
id_x = get_self(1013 +i, 18);
}
}
var x = parseInt(id_x +90 - 183 * w / 2);
if (arr.length >= 1 || arr.length == 1 && l > 1) {
for (var j = 0; j < arr.length; j++) {
for (var i = 0; i < arr[j].length; i++) {
set_self(1131 + i + j * 3, 43, arr[j][i], 0, 0);
set_self(1131 + i + j * 3, 37, 1, 0, 0);
set_self(1131 + i + j * 3, 18, x + j * 183 + 8 + i * 55, 0, 0);
set_self(1131 + i + j * 3, 19, 372, 0, 0);
}
AM.remove(1140+j);
AM.add(1140+j).bfunc(function(){
set_self(1140+j,35,255,0,0);
}).alpha(50,15).alpha(150,15).alpha(255,15).repeat().start();
set_self(1140 + j, 37, 1, 0, 0);
set_self(1140 + j, 18, x + j * 183, 0, 0);
set_self(1140 + j, 19, 366, 0, 0);
}
}
var kuang_id = [1373, 1927, 2157];
if (arr1.length > 1 || arr1.length == 1 && l > 1) {
var x = x + arr.length * 183;
for (var j = 0; j < arr1.length; j++) {
for (var i = 0; i < arr1[j].length; i++) {
set_self(791 + i + j * 3, 43, arr1[j][i], 0, 0);
set_self(791 + i + j * 3, 37, 1, 0, 0);
set_self(791 + i + j * 3, 18, x + j * 183 + 8 + i * 55, 0, 0);
set_self(791 + i + j * 3, 19, 372, 0, 0);
}
set_self(kuang_id[j], 37, 1, 0, 0);
set_self(kuang_id[j], 18, x + j * 183, 0, 0);
set_self(kuang_id[j], 19, 366, 0, 0);
}
}
}
//显示碰选项
d.show_peng_14option = function (f) {
var throw_card = d.throw_card;
set_group(212, 37, 0, 0, 0);
var n = 0;
var operate = [1, 0, 0];
for (var k = 0; k < 2; k++) {
if (d.isArray(d.throw_card)) {
throw_card = d.throw_card[k];
}
else {
k = 1;
}
if (throw_card < 1) {
continue;
}
console.log("show_peng_14option=" + throw_card + "/" + JSON.stringify(d.hand[C_Player.seat][0]));
if (d.user_eat_bump[C_Player.seat][1]) {
var arr = d.bump(d.hand[C_Player.seat][0], throw_card);
console.log("show_peng_14option=" + JSON.stringify(arr));
if (arr && arr.length > 0) {
d.show_gang_1option(throw_card);
d.peng_flame[d.peng_flame.length] = throw_card;
n += 1;
operate = [1, throw_card, 0];
}
}
}
if (n > 1)//是否出现杠选项
{
d.peng_option = 1;
}
else {
set_group(212, 37, 0, 0, 0);
d.show_gang_point_flash();
d.peng_flame = [];
}
return operate;
}
//显示杠选项
d.show_gang_14option = function (f) {
var first_card = d.user_ctrl[3];
set_group(212, 37, 0, 0, 0);
var n = 0;
var operate = [2, 0, 0];
for (var k = 0; k < 2; k++) {
if (d.tail_poker[7] > -1 && d.tail_poker[3 + k] > 0) {
first_card = d.tail_poker[3 + k];
}
else if (d.tail_poker[7] > -1) {
continue;
}
else {
k = 1;
}
if (d.user_eat_bump[C_Player.seat][3])//自摸杠
{
var arr = d.hand[C_Player.seat];
for (var i = 1; i < arr.length; i++) {
if (arr[i].length == 3 && arr[i][0] == arr[i][1] && first_card == arr[i][0]) {
d.show_gang_1option(first_card);
n += 1;
operate = [4, first_card, 0];
d.gang_flame[d.gang_flame.length] = first_card;
break;
}
}
for (var j = 0; j < arr[0].length; j++) {
var gang_card = d.hand[C_Player.seat][0][j];
for (var i = 1; i < arr.length; i++) {
if (arr[i].length == 3 && arr[i][0] == arr[i][1] && gang_card == arr[i][0]) {
d.show_gang_1option(gang_card);
d.gang_flame[d.gang_flame.length] = gang_card;
n += 1;
operate = [4, gang_card, 0];
}
}
}
}
if (d.user_eat_bump[C_Player.seat][4])//暗杠
{
var arr = d.bar(d.hand[C_Player.seat][0], first_card);
if (arr && arr.length > 0) {
d.show_gang_1option(first_card);
d.gang_flame[d.gang_flame.length] = first_card;
n += 1;
operate = [5, first_card, 0];
}
var arr1 = d.c(d.hand[C_Player.seat][0]);
d.ord(arr1);
for (var i = 0; i < arr1.length - 3; i++) {
if (arr1[i] == arr1[i + 1] && arr1[i] == arr1[i + 2] && arr1[i] == arr1[i + 3]) {
d.show_gang_1option(arr1[i]);
d.gang_flame[d.gang_flame.length] = arr1[i];
n += 1;
operate = [5, arr1[i], 0];
}
}
}
}
// if(f==3)
// {operate[2]=2;}
// else if(f==7)
// {operate[2]=1;}
if (n > 1)//是否出现杠选项
{
d.gang_option = 1;
}
else {
set_group(212, 37, 0, 0, 0);
d.show_gang_point_flash();
d.gang_flame = [];
}
return operate;
}
//显示杠选项
d.show_gang_1option = function (card) {
//for(var i=936;i<=953;i++)
for (var i = 936; i <= 954; i++) {
if (get_self(i, 21, 0, 0, 0) > 120 && get_self(i, 37, 0, 0, 0) == 1 && get_self(i, 43, 0, 0, 0) == card) {
var x = get_self(i, 18, 0, 0, 0);
var point_id = 1143;
for (var j = 0; j < 14; j++) {
if (get_self(1143 + j, 37, 0, 0, 0) == 0) {
point_id = 1143 + j;
break;
}
}
set_self(point_id, 37, 1, 0, 0);
set_self(point_id, 18, x + 21, 0, 0);
}
}
d.show_gang_point_flash();
}
//显示出选项
d.show_chu_1option = function (i) {
if (get_self(i, 21, 0, 0, 0) > 120 && get_self(i, 37, 0, 0, 0) == 1) {
var x = get_self(i, 18, 0, 0, 0);
var point_id = 1143;
for (var j = 0; j < 14; j++) {
if (get_self(1143 + j, 37, 0, 0, 0) == 0) {
point_id = 1143 + j;
break;
}
}
set_self(point_id, 37, 1, 0, 0);
set_self(point_id, 18, x + 21, 0, 0);
}
d.show_gang_point_flash();
}
//显示出选项
d.show_chu_option = function () {
return;
//for(var i=936;i<=953;i++)
for (var i = 936; i <= 954; i++) {
if (get_self(i, 21, 0, 0, 0) > 120 && get_self(i, 37, 0, 0, 0) == 1) {
var x = get_self(i, 18, 0, 0, 0);
var point_id = 1143;
for (var j = 0; j < 14; j++) {
if (get_self(1143 + j, 37, 0, 0, 0) == 0) {
point_id = 1143 + j;
break;
}
}
set_self(point_id, 37, 1, 0, 0);
set_self(point_id, 18, x + 21, 0, 0);
if (d.click_ban == 0) {
d.click_ban = 1;
}
}
}
d.show_gang_point_flash();
}
//点击吃选项
d.click_chi_option = function (spid) {
var operate = [3, 0, 0];
if (spid >= 1131 && spid <= 1133) {
operate[1] = 0;
operate[2] = 0;
}
else if (spid >= 1134 && spid <= 1136) {
operate[1] = 1;
operate[2] = 0;
}
else if (spid >= 1137 && spid <= 1139) {
operate[1] = 2;
operate[2] = 0;
}
else if (spid >= 791 && spid <= 793) {
operate[1] = 3;
operate[2] = 1;
}
else if (spid >= 794 && spid <= 796) {
operate[1] = 4;
operate[2] = 1;
}
else if (spid >= 797 && spid <= 799) {
operate[1] = 5;
operate[2] = 1;
}
if (d.replay == 0) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "operate",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"operate": operate
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
d.click_ban = 0;
d.user_ctrl[2] = -1;
set_group(211, 37, 0, 0, 0);
set_self(1289, 37, 0, 0, 0);
set_self(1289, 7, -1);
for (var i = 0; i < 4; i++) {
set_self(376 + i, 35, 255, 0, 0);
}
d.rep[0] += 1;
}
//点击碰选项
d.click_peng_option = function (spid) {
var pos = d.peng_flame.indexOf(get_self(spid, 43, 0, 0, 0));
if (pos == -1) {
return;
}
for (var i = 0; i < 19; i++) {
if (get_self(936 + i, 21, 0, 0, 0) > 120) {
set_self(936 + i, 19, 605, 0, 0);
}
}
var operate = [1, 0, 0];
operate[1] = get_self(spid, 43, 0, 0, 0);
for (var i = 0; i < 14; i++) {
play_ani123(0, 1143 + i, 19);
}
set_group(212, 37, 0, 0, 0);
if (d.replay == 0) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "operate",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"operate": operate
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
d.click_ban = 0;
d.user_ctrl[2] = -1;
d.peng_option = 0;
d.peng_flame = [];
set_self(1289, 37, 0, 0, 0);
set_self(1289, 7, -1);
for (var i = 0; i < 4; i++) {
set_self(376 + i, 35, 255, 0, 0);
}
}
//点击杠选项
d.click_gang_option = function (spid) {
var pos = d.gang_flame.indexOf(get_self(spid, 43, 0, 0, 0));
if (pos == -1) {
return;
}
for (var i = 0; i < 19; i++) {
if (get_self(936 + i, 21, 0, 0, 0) > 120) {
set_self(936 + i, 19, 585, 0, 0);
}
}
var operate = [5, 0, 0];
if (d.bar_roll[0] > 0) {
operate[2] = d.bar_roll[0];
}
operate[1] = get_self(spid, 43, 0, 0, 0);
var arr = d.hand[C_Player.seat];
for (var i = 1; i < arr.length; i++) {
if (operate[1] == arr[i][0] && arr[i].length == 3 && arr[i][0] == arr[i][1]) {
operate[0] = 4;
break;
}
}
for (var i = 0; i < 14; i++) {
play_ani123(0, 1143 + i, 19);
}
set_group(212, 37, 0, 0, 0);
if (d.replay == 0) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "operate",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"operate": operate
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
d.click_ban = 0;
d.user_ctrl[2] = -1;
d.gang_option = 0;
d.gang_flame = [];
d.bar_roll[0] = 0;
set_self(1289, 37, 0, 0, 0);
set_self(1289, 7, -1);
for (var i = 0; i < 4; i++) {
set_self(376 + i, 35, 255, 0, 0);
}
}

View File

@@ -0,0 +1,584 @@
//出牌点击
d.click_chu = function (spid_up) {
if (Desk.stage == 0 || !RoomFunc.clickpai_before(spid_up)) {
return;
}
else if (get_self(spid_up, 19, 0, 0, 0) > 585) {
play_ani123(0, spid_up, 19);
d.show_my13card();
d.show_14card();
set_self(spid_up, 19, 585, 0, 0);
d.chu_cilck = 0;
d.chu_move = 0;
}
else if (get_self(spid_up, 19, 0, 0, 0) == 585 || get_self(spid_up, 19) < 585 && get_self(spid_up, 19) >= (585 - get_self(spid_up, 21) + 40) && d.chu_move == 1) {
play_ani123(0, spid_up, 19);
d.show_my13card();
d.show_14card();
d.chu_cilck = spid_up;
d.chu_move = 0;
d.last_id=spid_up;
if(d.Ting_Tip.length && d.Ting_Tip.length>=0 || d.Ting_ui.length && d.Ting_ui.length>=0 && d.user_ctrl[2]==C_Player.seat && get_self(2489,37)==1){
set_self(2489,37,0,0,0);
set_self(2392,37,0,0,0);
d.ting_statu=-1;
}
if(d.Ting_Tip.length<=0 || d.Ting_ui.length<=0 && d.user_ctrl[2]==C_Player.seat){
d.ting_statu=0;
}
d.zhenshu = get_self(spid_up,43,0,0,0);
for (var i = 0; i < 19; i++) {
if (get_self(936 + i, 21, 0, 0, 0) > 120) {
set_self(936 + i, 19, 585, 0, 0);
}
}
if (d.clicks_an > 50 || !RoomFunc.Overtime_chupai()) {
var l = d.Ting_Tip.length;
if (l > 0) {
var pos = d.Ting_Tip.indexOf(get_self(spid_up, 43));
if (pos>-1) {
d.tips_tp = d.ting_pai.tip_ting[pos];
if (d.tips_tp.length > 0) {
d.show_hu_card(d.tips_tp);
}
}
else {
set_group(237, 37, 0, 0, 0);
}
}
} else {
set_group(237, 37, 0, 0, 0);
}
set_self(spid_up, 19, 565, 0, 0);
for (var i = 0; i < 14; i++) {
play_ani123(0, 1143 + i, 19);
}
set_group(212, 37, 0, 0, 0);
Utl.playSound("00" + 170 + ".mp3");
d.click_id = spid_up;
}
else if (d.chu_cilck == spid_up && get_self(spid_up, 19, 0, 0, 0) <= 565 || d.chu_cilck == 0 && get_self(spid_up, 19, 0, 0, 0) <= (585 - get_self(spid_up, 21) + 40))
{d.click_chu_down(spid_up, spid_up);}
}
//滑动出牌
d.move_chu = function (spid, offmovey, offmovex) {
if (offmovey == 0 && offmovex == 0 || Desk.stage == 0 || d.replay || !RoomFunc.clickpai_before(spid)) {
return;
}
if(d.final_hu[0]>-1 && d.continue_hu==0)
{return;}
if(RoomFunc.Overtime_chupai()&&d.last_id!=spid)
{return;}
if (d.status == 2 && spid >= 936 && spid <= 954 && get_self(spid, 44, 0, 0, 0) == 201 && get_self(spid, 21, 0, 0, 0) > 120 && d.user_ctrl[2] == C_Player.seat && d.click_ban == 1 && d.gang_option == 0 && d.final_hu[0] == -1) {
var y = get_self(spid, 19, 0, 0, 0);// && Math.abs(offmovey)>10
if (offmovey < 0 && y + offmovey >= 370 || offmovey > 0 && y + offmovey <= 585 + 70) {
set_self(spid, 19, offmovey, 1, 0);
//set_self(spid, 18, offmovex, 1, 0);
}
d.chu_cilck = 0;
d.chu_move = 1;
if (offmovey < 0 && Math.abs(offmovey) >= 20) {
play_ani123(0, spid, 19);
for (var i = 0; i < 19; i++) {
if (get_self(936 + i, 21, 0, 0, 0) > 120 && 936 + i != spid) {
set_self(936 + i, 19, 585, 0, 0);
}
}
}
}
}
//出牌成功
d.click_chu_down = function (spid_up, spid1) {
if (Desk.stage == 0 || !RoomFunc.clickpai_before(spid_up)) {
return;
}
if(d.final_hu[0]>-1 && d.continue_hu==0)
{return;}
if(d.last_id>0 && spid1==d.last_id)
{spid_up=spid1;d.last_id=0;}
if (d.status == 2 && d.user_ctrl[2] == C_Player.seat && d.click_ban == 1 && spid_up >= 936 && spid_up <= 954 && get_self(spid_up, 21, 0, 0, 0) > 120 && d.gang_option == 0 && d.final_hu[0] == -1) {
d.chu_cilck = 0;
d.chu_move = 0;
d.zhenshu=0;
if(d.Ting_Tip.length && d.Ting_Tip.length>=0 || d.Ting_ui.length && d.Ting_ui.length>=0 && d.user_ctrl[2]==C_Player.seat && get_self(2489,37)==1){
set_self(2489,37,0,0,0);
set_self(2392,37,0,0,0);
//set_self(2489,18,-200,0,0);
d.ting_statu=-1;
}
if(d.Ting_Tip.length<=0 || d.Ting_ui.length<=0 && d.user_ctrl[2]==C_Player.seat){
d.ting_statu=0;
}
if (get_self(spid_up, 19, 0, 0, 0) <= 565) {
set_group(206, 37, 0, 0, 0);
console.log(spid_up + "chu" + get_self(spid_up, 43, 0, 0, 0));
for (var i = 0; i < 14; i++) {
play_ani123(0, 1143 + i, 19);
}
play_ani123(0, spid_up, 18);
play_ani123(0, spid_up, 19);
set_group(212, 37, 0, 0, 0);
var put_pos = 0;
var n = 0;
for (var i = 0; i < 19; i++) {
if (get_self(936 + i, 21, 0, 0, 0) > 120 && get_self(936 + i, 37, 0, 0, 0) == 1) {
if (936 + i == spid_up) {
put_pos = n;
set_self(spid_up, 37, 0, 0, 0);
set_self(spid_up, 19, 585, 0, 0);
break;
}
n += 1;
}
}
var sex = C_Player.sex || 1;
var hand = d.a.arrange_pai(d.hand[C_Player.seat][0]);
var throw_card = 0;
var f = 0;
if (put_pos == hand.length && d.user_ctrl[3] > 0) {
throw_card = d.user_ctrl[3];
}
else {
throw_card = hand[put_pos];
if (d.user_ctrl[3] > 0) {
hand = hand.concat(d.user_ctrl[3]);
}
hand.splice(put_pos, 1);
d.hand[C_Player.seat][0] = d.c(hand);
d.ord(d.hand[C_Player.seat][0]);
}
f = throw_card;
/*
if (f > 0) {
d.sea[C_Player.seat][d.sea[C_Player.seat].length] = throw_card;
//d.show_sea();
var sid = 60 + (sex - 1) * 60 + f;
var tou = "00";
if (String(sid).length == 2) {
tou = "000";
}
else if (String(sid).length == 3) {
tou = "00";
}
if (sid) {
Utl.playSound(tou + sid + ".mp3");
}
}*/
if (d.replay == 0) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "put",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"put_pos": put_pos
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
//Utl.playSound("00306.mp3");
d.click_ban = 0;
d.user_ctrl[2] = -1;
//set_self(1289, 37, 0, 0, 0);
//set_self(1289, 7, -1);
for (var i = 0; i < 4; i++) {
d.act_put[2 + i] = 0;
}
d.act_put[2] = spid_up;
d.act[0] = 1;
d.act[1] = C_Player.seat;
d.act[2] = 1;
d.baoting[4] = [];
d.click_id = 0;
d.show_my13card(); //d.show_put_card_act(1);
//d.show_putcard();
set_self(2673, 37, 0, 0, 0);//等一等
set_group(237, 37, 0, 0, 0);
for (var i = 0; i < 4; i++) {
set_self(376 + i, 35, 255, 0, 0);
}
d.Ting_ui = d.hu_Judge(d.hand[C_Player.seat], d.jing);
d.Ting_Tip = [];
d.clicks_an = 0;
}
else if (get_self(spid_up, 19, 0, 0, 0) < 585) {
d.show_my13card();
d.show_14card();
set_self(spid_up, 19, 565, 0, 0);
d.chu_cilck = spid_up;
d.clicks_an = 0;
}
else if (get_self(spid_up, 19, 0, 0, 0) >= 585) {
d.show_my13card();
d.show_14card();
set_self(spid_up, 19, 585, 0, 0);
d.clicks_an = 0;
}
}
}
d.show_putcard = function () {
if (Desk.stage != 0 && d.recon != 1 && d.backstage != 1 && d.act[0] == 1)
{
if (Desk.roomtype[19]) {
return ;
}
var seat = d.act[1];
var z_b = [[550,365],[934,211],[550,60],[200,214]];
var throw_card_spid = 2916;
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
if (person == 2) {
z_b = [[550,365],[550,60],[550,60],[550,60]];
}
if(C_Player.seat!=seat){
AM.cls_id(throw_card_spid);
AM.add(throw_card_spid).wait(15, function () {
set_self(throw_card_spid, 37, 0, 0, 0);
set_self(throw_card_spid - 1, 37, 0, 0, 0);
d.show_sea();
//Utl.playSound("00306.mp3");
AM.cls_id(throw_card_spid);
Utl.playSound("00305.mp3");
}).start();
}else{
d.show_sea();
AM.cls_id(throw_card_spid);
AM.add(throw_card_spid).wait(3,function(){
Utl.playSound("00305.mp3");
AM.cls_id(throw_card_spid);
}).start();
}
if(C_Player.seat!=seat){
set_self(throw_card_spid,37,1,0,0);
}
set_self(throw_card_spid, 18, z_b[d.pos[seat]][0]+29, 0, 0);
set_self(throw_card_spid, 19, z_b[d.pos[seat]][1]+28, 0, 0);
set_self(throw_card_spid, 43, d.act[3][0], 0, 0);
}
}
//显示出牌动画
d.show_put_card_act = function (off) {
if (Desk.stage != 0 && d.recon != 1 && d.backstage != 1 && d.act[0] == 1 && d.act[2] > 0)
////牌桌阶段 0->未开局 1->已开局
{
d.rep[0] += 1;
var seat = d.act[1];
var freexy = d.get_sea_freexy(seat, off);
var throw_card_spid = freexy[2];
if (seat == C_Player.seat) {
set_self(throw_card_spid, 18, get_self(d.act_put[2], 18, 0, 0, 0), 0, 0);
set_self(throw_card_spid, 19, get_self(d.act_put[2], 19, 0, 0, 0), 0, 0);
set_self(throw_card_spid, 43, get_self(d.act_put[2], 43, 0, 0, 0), 0, 0);
}
else {
var throw_card_spid0 = d.get_rand_3handcard(seat)[0];
set_self(throw_card_spid, 18, get_self(throw_card_spid0, 18, 0, 0, 0), 0, 0);
set_self(throw_card_spid, 19, get_self(throw_card_spid0, 19, 0, 0, 0), 0, 0);
set_self(throw_card_spid, 43, d.throw_card, 0, 0);
}
d.act_put[2] = throw_card_spid;
set_self(throw_card_spid, 37, 1, 0, 0);
var light_pai_rec = [503, 500, 503, 501];
var rec_w = [41, 44, 41, 44];
var rec_h = [55, 44, 55, 44];
set_self(throw_card_spid, 1, light_pai_rec[d.pos[seat]], 0, 0);
set_self(throw_card_spid, 20, rec_w[d.pos[seat]], 0, 0);
set_self(throw_card_spid, 21, rec_h[d.pos[seat]], 0, 0);
if (freexy[5]) {
var throw_card_spid1 = freexy[5];
if (seat == C_Player.seat) {
set_self(throw_card_spid1, 18, get_self(d.act_put[5], 18, 0, 0, 0), 0, 0);
set_self(throw_card_spid1, 19, get_self(d.act_put[5], 19, 0, 0, 0), 0, 0);
set_self(throw_card_spid1, 43, get_self(d.act_put[5], 43, 0, 0, 0), 0, 0);
}
else {
var throw_card_spid0 = d.get_rand_3handcard(seat)[0];
set_self(throw_card_spid1, 18, get_self(throw_card_spid0, 18, 0, 0, 0), 0, 0);
set_self(throw_card_spid1, 19, get_self(throw_card_spid0, 19, 0, 0, 0), 0, 0);
set_self(throw_card_spid1, 43, d.throw_card, 0, 0);
}
d.act_put[5] = throw_card_spid1;
set_self(throw_card_spid1, 37, 1, 0, 0);
var light_pai_rec = [503, 500, 503, 501];
var rec_w = [41, 44, 41, 44];
var rec_h = [55, 44, 55, 44];
set_self(throw_card_spid1, 1, light_pai_rec[d.pos[seat]], 0, 0);
set_self(throw_card_spid1, 20, rec_w[d.pos[seat]], 0, 0);
set_self(throw_card_spid1, 21, rec_h[d.pos[seat]], 0, 0);
}
d.act[2] = -1;
d.click_ban = 0;
d.show_card_wall();
d.put_time = 11 + 6;
set_self(throw_card_spid, 37, 0, 0, 0);
if (d.act_put[5] > 0) {
set_self(d.act_put[5], 37, 0, 0, 0);
}
d.card_14 = 0;
d.act[2] = 0;
d.act_put[2] = -1;
d.act_put[5] = -1;
d.show_my13card();
d.show_you13card();
d.show_shang13card();
d.show_zuo13card();
d.show_14card();
//d.show_sea();
d.click_ban = 1;
d.put_time = 0;
}
}
//停止出牌动画
d.put_card_doend = function (id, sx, allend) {
if (id > 0 && Desk.stage != 0 && d.recon != 1 && d.backstage != 1 && d.act[2] != 0) {
var ban = 0;
var throw_card_spid = d.act_put[2];
if (d.act_put[2] > -1 && id == throw_card_spid && sx == 18 && allend == 1 || d.act_put[2] > -1 && id == throw_card_spid && sx == 19 && allend == 1) {
set_self(throw_card_spid, 37, 0, 0, 0);
if (d.act_put[5] > 0) {
set_self(d.act_put[5], 37, 0, 0, 0);
}
var x_throw = get_self(throw_card_spid, 18, 0, 0, 0), y_throw = get_self(throw_card_spid, 19, 0, 0, 0);
if (d.user_ctrl[2] == C_Player.seat) {
d.click_ban = 1;
}
{
//d.show_sea();
if (d.card_14 > 0 && d.act[1] == C_Player.seat) {
var l = d.hand[C_Player.seat][0].length;
var seat = C_Player.seat;
var l0 = d.hand[seat][0].length * 89 + 89 + 20;
for (var j = 1; j < d.hand[seat].length; j++) {
var l1 = d.hand[seat][j].length;
l0 = l0 + l1 * 48 + 5;
}
var l_s = 1280 - l0 - 10;
if (l_s < 0) {
l_s = 0;
}
var pos = l_s + 89 * l;
for (var i = 0; i < l; i++) {
if (d.hand[C_Player.seat][0][i] > get_self(d.card_14, 43, 0, 0, 0)) {
pos = 89 * i + l_s - 38;
}
}
if (pos != l_s + 89 * l) {
set_self(d.card_14, 19, 541, 0, 0);
}
var x0 = get_self(d.card_14, 18, 0, 0, 0);
var t = parseInt((x0 - pos) / 4);
if (t <= 50) {
t = 50;
}
play_ani123(1, d.card_14, 18, x0, pos, t, 1);
d.act_put[2] = -1;
}
else {
ban = 1;
}
}
}
if (ban == 1 || id == d.card_14 && sx == 18 && allend == 1) {
play_ani123(0, throw_card_spid, 18);
play_ani123(0, throw_card_spid, 19);
play_ani123(0, d.card_14, 18);
if (d.act_put[5] > 0) {
play_ani123(0, d.act_put[5], 18);
play_ani123(0, d.act_put[5], 19);
}
d.card_14 = 0;
d.act[2] = 0;
d.act_put[2] = -1;
d.act_put[5] = -1;
d.show_my13card();
d.show_you13card();
d.show_shang13card();
d.show_zuo13card();
d.show_14card();
//d.show_sea();
d.click_ban = 1;
d.put_time = 0;
}
}
if (id > 0 && Desk.stage != 0 && d.recon != 1) {
if (id == d.card_14 && sx == 19 && allend == 1) {
set_self(d.card_14, 19, 585, 0, 0);
}
if (id == 1848 && sx == 19 && allend == 1) {
d.jing_time = 0;
//play_ani123(0, 1848, 18);
//play_ani123(0, 1848, 19);
//set_self(1848, 37, 0, 0, 0);
}
}
if (id > 0) {//var id1s=[1954,1955,1956,1957];
//var id2s=[1958,1959,1960,1961];
if (id == 1954 && sx == 19 && allend == 1) {
play_ani123(0, 1954, 19);
play_ani123(0, 1958, 19);
set_self(1954, 37, 0);
set_self(1958, 37, 0);
}
if (id == 1954 && sx == 19 && allend == 1) {
play_ani123(0, 1955, 19);
play_ani123(0, 1959, 19);
set_self(1955, 37, 0);
set_self(1959, 37, 0);
}
if (id == 1954 && sx == 19 && allend == 1) {
play_ani123(0, 1956, 19);
play_ani123(0, 1960, 19);
set_self(1956, 37, 0);
set_self(1960, 37, 0);
}
if (id == 1954 && sx == 19 && allend == 1) {
play_ani123(0, 1957, 19);
play_ani123(0, 1961, 19);
set_self(1957, 37, 0);
set_self(1961, 37, 0);
}
}
}
//出牌胡牌提示相关
d.get_other_pai = function (get_card, throw_card) {
var my_card = [];
for (var i = 0; i < d.hand[C_Player.seat].length; i++) {
my_card = my_card.concat(d.hand[C_Player.seat][i]);
}
for (var i = 0; i < 4; i++) {
my_card = my_card.concat(d.sea[i]);
}
if (throw_card) {
var pos = my_card.indexOf(throw_card);
if (pos != -1) {
my_card.splice(pos, 1);
}
}
if (get_card) {
var pos = my_card.indexOf(get_card);
if (pos != -1) {
my_card.splice(pos, 1);
}
}
for (var i = 0; i < 4; i++) {
if (i != C_Player.seat) {
for (var j = 1; j < d.hand[i].length; j++) {
if (d.hand[i][j] && d.hand[i][j][0]) {
my_card = my_card.concat(d.hand[i][j]);
}
}
}
}
d.ord(my_card);
var arr_Contrast = [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29];
arr_Contrast = arr_Contrast.concat(arr_Contrast).concat(arr_Contrast).concat(arr_Contrast);
for (var i = 0; i < arr_Contrast.length; i++) {
var pos = my_card.indexOf(arr_Contrast[i]);
if (pos != -1) {
arr_Contrast[i] = 99;
my_card[pos] = 0;
}
}
d.ord(arr_Contrast);
var pos = arr_Contrast.indexOf(99);
if (pos != -1) {
arr_Contrast.splice(pos);
}
return arr_Contrast;
}
//移入出牌
d.set_click_chu = function (spid, movex, movey) {
if (get_self(2232, 37) || !RoomFunc.Overtime_chupai()) {
return;
}
var spid_in = d.get_click_id(movex, movey);
if (d.replay == 0 && spid_in && spid_in != d.last_id) {
d.last_id = spid_in;
d.clicks_an = -1;
var spid_up = spid_in;//d.user_ctrl[2] == C_Player.seat &&
if (d.status == 2 && spid_up >= 936 && spid_up <= 954 && get_self(spid_up, 21, 0, 0, 0) > 120 && d.gang_option == 0 && d.get_hua() == 0) {
d.chu_cilck = spid_up;
d.click_chu(spid_up);
}
}
else if (d.replay == 0 && spid_in && spid_in == d.last_id && d.clicks_an >= 0) {
d.clicks_an = -1;
}
//在move事件中得出鼠标所在小区域。并返回对应牌的精灵id
}
//出牌区域
d.get_click_id=function (movex,movey)
{
//在move事件中得出鼠标所在小区域。并返回对应牌的精灵id
var r=d.get_click_ids_xywh();
var spid_in=0;
var l=d.click_ids.length;
if(l>0 && movex>r[0] && movex<r[2] && movey>r[1] && movey<r[3])
{var n=parseInt((movex-r[0])/89);
spid_in=d.click_ids[0]+n;
}
else if(l>0 && d.card_14>0 && get_self(d.card_14,37) && movex>get_self(d.card_14,18,0,0) && movex<get_self(d.card_14,18,0,0)+89 && movey>r[1] && movey<r[3])
{spid_in=d.card_14;
}
if(get_self(spid_in,41,0,0,0)==0 || get_self(42,37) || get_self(189,37))
{spid_in=0;}
return spid_in;
}
//出牌区域
d.get_click_ids_xywh=function ()
{
//在d.show_my13card函数中设置出牌的区域和小区域
if(d.final_hu[0]>-1)
{d.click_ids=[];
}
var l=d.click_ids.length;
var r=[0,0,0,0];
if(l>0)
{var id0=d.click_ids[0];
var id1=d.click_ids[l-1];
var x=get_self(id0,18,0,0,0);
var y=get_self(id0,19,0,0,0);y=585;
var w=get_self(id0,20,0,0,0);
var h=get_self(id0,21,0,0,0);
var x1=get_self(id1,18,0,0,0);
r[0]=x;
r[1]=y;
r[2]=x1+w;
r[3]=y+h;
}
return r;
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,212 @@
/*****************¹«¹²Îļþ****************/
d.newHu = {};
d.newHu.needLai = (
function () {
function check_Need(array) {
var min_array = [];
min_array[0] = testCombo_One(copyArray(array));
min_array[1] = testCombo_Two(copyArray(array));
min_array[2] = testCombo_One(copyArray(array).reverse());
min_array[3] = testCombo_Two(copyArray(array).reverse());
min_array[4] = testCombo_Three(copyArray(array));
min_array[5] = testCombo_Four(copyArray(array));
min_array[6] = testCombo_Three(copyArray(array).reverse());
min_array[7] = testCombo_Four(copyArray(array).reverse());
var min = get_Min(min_array);
return min;
}
function testCombo_One(arr) {
var need = 0;
removeShun(arr);
removeKe(arr);
need = removeSpecial(arr, need);
need = removeMissOne(arr, need);
need = removeDui(arr, need);
need = removeSingle(arr, need);
return need;
}
function testCombo_Two(arr) {
var need = 0;
removeKe(arr);
removeShun(arr);
need = removeSpecial(arr, need);
need = removeMissOne(arr, need);
need = removeDui(arr, need);
need = removeSingle(arr, need);
return need;
}
function testCombo_Three(arr) {
var need = 0;
removeShun(arr);
removeKe(arr);
need = removeSpecial(arr, need);
need = removeDui(arr, need);
need = removeMissOne(arr, need);
need = removeSingle(arr, need);
return need;
}
function testCombo_Four(arr) {
var need = 0;
removeKe(arr);
removeShun(arr);
need = removeSpecial(arr, need);
need = removeDui(arr, need);
need = removeMissOne(arr, need);
need = removeSingle(arr, need);
return need;
}
function get_Min(min_array) {
min_array.sort(function (a, b) {
return a - b;
});
return min_array[0];
}
function str2arr(str) {
var length = str.length;
var arr = [];
for (let i = 0; i < length; i++) {
arr[i] = parseInt(str[i]);
}
return arr;
}
function removeShun(arr) {
var length = arr.length;
for (let j = 0; j < length - 2;) {
if (arr[j] > 0) {
if ((j + 5) < length && arr[j] == 1 && arr[j + 1] == 0 && arr[j + 2] == 1 && arr[j + 3] == 1 && arr[j + 4] == 1 && arr[j + 5] == 1) {
arr[j + 3] -= 1;
arr[j + 4] -= 1;
arr[j + 5] -= 1;
}
if (arr[j + 1] != 0 && arr[j + 2] != 0 && arr[j] != 0) {
arr[j] -= 1;
arr[j + 1] -= 1;
arr[j + 2] -= 1;
continue;
}
}
j++;
}
}
function removeKe(arr) {
var length = arr.length;
for (let j = 0; j < length; j++) {
if (arr[j] >= 3) {
arr[j] -= 3;
}
}
}
function removeSpecial(str, need) {
var length = str.length;
for (let i = 0; i < length - 3; i++) {
let count = str[i] + str[i + 1] + str[i + 2] + str[i + 3];
if (count == 4) {
str[i] = 0;
str[i + 1] = 0;
str[i + 2] = 0;
str[i + 3] = 0;
need += 2;
}
}
return need;
}
function removeMissOne(arr, need) {
var length = arr.length;
for (let j = 0; j < length - 2;) {
if (hasValue(arr, j, 3, 2)) {
for (let k = 0; k < 3; k++) {
if (arr[j + k] > 0) {
arr[j + k] -= 1;
}
}
need += 1;
continue;
}
j++;
}
return need;
}
function removeDui(arr, need) {
var length = arr.length;
for (let j = 0; j < length; j++) {
if (arr[j] == 2) {
arr[j] -= 2;
need += 1;
}
}
return need;
}
function removeSingle(arr, need) {
var length = arr.length;
for (let j = 0; j < length; j++) {
if (arr[j] > 0) {
arr[j] -= 1;
need += 2;
}
}
return need;
}
function hasValue(array, index, totalnum, neednum) {
var length = array.length;
if (length < totalnum) {
return;
}
let temp = 0;
for (let i = 0; i < totalnum; i++) {
if (array[index + i] > 0) {
temp++;
}
}
return temp == neednum;
}
function copyArray(array) {
var str_Array = JSON.stringify(array);
var back_Array = JSON.parse(str_Array);
return back_Array;
}
return function (array) {
var length = array.length;
var card = [0, 0, 0, 0, 0, 0, 0, 0, 0];
var needLai = 0;
var which_card = -1;
for (let i = 0; i < length; i++) {
which_card = array[i] % 10;
card[which_card - 1] += 1;
}
needLai += check_Need(card);
return needLai;
}
}()
);

View File

@@ -0,0 +1,75 @@
//显示胡的牌
d.show_hu_card=function(hu_card)
{
if(hu_card && hu_card.length>0)
{set_group(237,37,0,0,0);
set_self(1247,37,1,0,0);
set_self(1282,37,1,0,0);
if(hu_card.length<=9)
{set_self(1247,21,90,0,0);
set_self(1247,19,382,0,0);
}
else if(hu_card.length>9 && hu_card.length<=18)
{set_self(1247,21,173,0,0);
set_self(1247,19,299,0,0);
}
else if(hu_card.length>18 && hu_card.length<=27)
{set_self(1247,21,256,0,0);
set_self(1247,19,216,0,0);
}
else if(hu_card.length>27)
{set_self(1247,21,339,0,0);
set_self(1247,19,133,0,0);
}
for(var i=0;i<hu_card.length;i++)
{
set_self(1248+i,37,1,0,0);
set_self(1248+i,43,hu_card[i],0,0);
set_self(2450+i,37,1,0,0);
set_self(2450+i,7,d.hu_card_mun(hu_card[i]),0,0);
}
}
}
//是否听牌状态
d.ting_allpai=function(get_card,throw_card)
{var ting_card=[];
var arr=d.c(d.hand[C_Player.seat][0]);
if(get_card)
{arr=arr.concat(get_card);}
if(throw_card)
{var pos=arr.indexOf(throw_card);
if(pos!=-1)
{arr.splice(pos,1);}
}
var arrs=d.c(d.hand[C_Player.seat]);
arrs[0]=d.c(arr);
var other_card=d.get_other_pai(get_card,throw_card);
for(var i=0;i<other_card.length;i++)
{var card=other_card[i];
if(card!=-1)
{var ting_bool=d.a.ting_1pai(arr,card,arrs);
if(ting_bool)
{ting_card[ting_card.length]=card;
}
}
}
if(ting_card.length>0)
{var arr1=d.c(ting_card);
for(var i=0;i<arr1.length-1;i++)
{
if(arr1[i]==arr1[i+1])
{ting_card[i+1]=99;}
}
console.log(ting_card)
d.ord(ting_card);
var pos=ting_card.indexOf(99);
ting_card.splice(pos);
}
return ting_card;
}

View File

@@ -0,0 +1,195 @@
//显示已经出的牌
d.show_sea = function () {
if(d.status==3){
return;
}if (Desk.roomtype[19]) {
return ;
}
if(Utl.getIsInfinite() == 1 && d.person_info[C_Player.seat] && d.person_info[C_Player.seat].new_one==1) {
return;
}
var arr_s0 = [1023, 1050, 1077, 1104];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[d.roomtype[6]] || 4;
if (person == 2) {
arr_s0 = [1023, 1077, 1077, 1077];
}
d.put_card++;
d.p_card=d.put_card;
var arr_s = [];
for (var i = 0; i < 4; i++) {
arr_s[i] = arr_s0[d.pos[i]];
set_group(207 + i, 37, 0, 0, 0);
}
for (var j = 0; j < 4; j++) {
var l = d.sea[j].length
var n = ifast_div((l + 1) / 9);
var ii = 0;
if (l > 21) {
ii = (n - 1) * 9;
}
for (var i = ii; i < l; i++) {
if (d.sea[j][i] && d.put_card==d.p_card) {
set_self(arr_s[j] + i - ii, 37, 1, 0, 0);
d.wos=1;
set_self(arr_s[j] + i - ii, 43, d.sea[j][i], 0, 0);
//d.show_ponit_out();
//d.put_card==d.p_card;
}
if(d.sea[j][i] == undefined){
set_self(arr_s[j] + i - ii, 37, 0, 0, 0);
}
}
}
if (d.last_operate[0] == 0) {
d.show_ponit_out();
d.wos=0;
}
d.show_sea_hua();
}
//显示已经出的花牌
d.show_sea_hua = function () {
return;
var arr_s0 = [1820, 1828, 1836, 1844];
var arr_s = [];
set_group(243, 37, 0, 0, 0);
for (var i = 0; i < 4; i++) {
arr_s[i] = arr_s0[d.pos[i]];
}
for (var j = 0; j < 4; j++) {
for (var i = 0; i < d.sea_hua[j].length; i++) {
if (d.sea_hua[j][i]) {
set_self(arr_s[j] + i, 37, 1, 0, 0);
set_self(arr_s[j] + i, 43, d.sea_hua[j][i], 0, 0);
}
else {
set_self(arr_s[j] + i, 37, 0, 0, 0);
}
}
}
}
//牌池中最后1个花牌精灵的id
d.get_sea_hua_lastid = function (seat) {
var arr = [0, 0];//455,425/849,455/806,249/380,213 起始精灵1023 1050 1077 1104
var start_spids = [1820, 1828, 1836, 1844];
var start_spid = start_spids[d.pos[seat]];
var l = d.sea_hua[seat].length;
lastid = start_spid + l - 1;//首个空出的精灵
return lastid;
}
//牌池中最后1个精灵的id
d.get_sea_lastid = function (seat) {
var arr = [0, 0];//455,425/849,455/806,249/380,213 起始精灵1023 1050 1077 1104
var start_spids = [1023, 1050, 1077, 1104];
//2人模式
var persons = [4, 4, 3, 2];
var person = persons[d.roomtype[6]] || 4;
if (person == 2) {
start_spids = [1023, 1077, 1077, 1077];
}
var start_spid = start_spids[d.pos[seat]];
var l = d.sea[seat].length;
var l_y = 0;
var l_x = 0;
l_y = parseInt(l / 9);
l_x = l - l_y * 9;
lastid = start_spid + l_y * 9 + l_x - 1;//首个空出的精灵
for (var i = 0; i < 27; i++) {
if (get_self(start_spid + 26 - i, 37)) {
lastid = start_spid + 26 - i;
break;
}
}
return lastid;
}
//得到牌池首个空出的位置坐标
d.get_sea_freexy = function (seat, off) {
var arr = [0, 0];//455,425/849,455/806,249/380,213 起始精灵1023 1050 1077 1104
var start_posxys = [[get_self(1023, 18, 0, 0, 0), get_self(1023, 19, 0, 0, 0)], [get_self(1050, 18, 0, 0, 0), get_self(1050, 19, 0, 0, 0)], [get_self(1077, 18, 0, 0, 0), get_self(1077, 19, 0, 0, 0)], [get_self(1104, 18, 0, 0, 0), get_self(1104, 19, 0, 0, 0)]];
var start_spids = [1023, 1050, 1077, 1104];
var start_posxy = start_posxys[d.pos[seat]];
var start_spid = start_spids[d.pos[seat]];
var l = d.sea[seat].length + off;
var l_y = 0;
var l_x = 0;
var y = start_posxy[1];
var x = start_posxy[0];
l_y = parseInt(l / 9);
l_x = l - l_y * 9 - 2;
if (get_self(start_spid, 44, 0, 0, 0) == 207) {
y = start_posxy[1] - l_y * 51;
x = start_posxy[0] + l_x * 47;
}
else if (get_self(start_spid, 44, 0, 0, 0) == 208) {
y = start_posxy[1] - l_x * 41;
x = start_posxy[0] - l_y * 55;
}
else if (get_self(start_spid, 44, 0, 0, 0) == 209) {
y = start_posxy[1] + l_y * 51;
x = start_posxy[0] - l_x * 47;
}
else if (get_self(start_spid, 44, 0, 0, 0) == 210) {
y = start_posxy[1] + l_x * 41;
x = start_posxy[0] + l_y * 55;
}
//arr[2]=start_spid+l_y*9+l_x;//首个空出的精灵
arr[2] = 1353;
arr[0] = x;
arr[1] = y;
var lastid = d.get_sea_lastid(seat);
var x1 = get_self(lastid, 18, 0, 0, 0);
var y1 = get_self(lastid, 19, 0, 0, 0);
if (arr[0] != x1) {
arr[0] = x1;
}
if (arr[1] != y1) {
arr[1] = y1;
}
d.act_put[0] = arr[0];//出牌 0spid1目标x,2目标y
d.act_put[1] = arr[1];
return arr;
}
//得到其他3家随机手牌
d.get_rand_3handcard = function (seat, n) {
n = n || 1;
//var id_start=[936,954,972,990];
var id_start = [936, 954, 972, 990];
var l = d.hand[seat][0].length;
var ran_pos = ifast_random(l);
var throw_card_id = [];
throw_card_id[0] = id_start[d.pos[seat]] + ran_pos;
for (var i = 1; i < n; i++) {
var ran_pos1 = ran_pos + i;
if (ran_pos1 > l - 1) {
ran_pos1 = ran_pos - (ran_pos1 - (l - 1));
}
throw_card_id[i] = id_start[d.pos[seat]] + ran_pos1;
}
return throw_card_id;
}
d.get_song_downjing = function (downjing) {
var song_downjing = [];
if (downjing[0] < 30) {
song_downjing[0] = [downjing[0] % 10, downjing[1] % 10];
song_downjing[1] = [parseInt("1" + downjing[0] % 10), parseInt("1" + downjing[1] % 10)];
song_downjing[2] = [parseInt("2" + downjing[0] % 10), parseInt("2" + downjing[1] % 10)];
} else if (downjing[0] > 30 && downjing[0] < 40) {
song_downjing[0] = [31, 32];
song_downjing[1] = [32, 33];
song_downjing[2] = [33, 34];
song_downjing[3] = [34, 31];
} else if (downjing[0] > 40) {
song_downjing[0] = [41, 42];
song_downjing[1] = [42, 43];
song_downjing[2] = [43, 41];
}
return song_downjing;
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,236 @@
//重连后执行重画
d.a.re_connect=function ()
{
if(get_self(1413,37,0,0,0)==0)
{
if(d.status==1&&d.sieves[4]>=1)
{d.status=2;}
if (d.sieves[4] >= 1) {
d.show_card_wall();
d.show_my13card();
d.show_you13card();
d.show_shang13card();
d.show_zuo13card();
d.show_14card();
d.show_operate();
}
if(d.baoting[0] != 1 && d.baoting[1] != 1 && d.baoting[2] != 1 && d.baoting[3] != 1 && get_self(1965, 37) == 0 && d.sieves[3] == -1 && d.sieves[4] != 0){
}
d.show_sea();
//胡
set_self(2490,37,0,0,0);
set_self(2489,37,0,0,0);
set_self(2392,37,0,0,0); //火焰动画停止
for(var i=0;i<6;i++){
set_self(2394+i,37,0,0,0); //刮风下雨停止
}
if(d.sieves[3] == -1 && d.sieves[4] != 0){
set_self(1821, 43, d.jing[0]);
set_self(1822, 43, d.jing[1]);
set_self(1821, 18, 1155);
set_self(1822, 18, 1215);
set_self(1821, 19, 15);
set_self(1822, 19, 15);
set_self(1821, 20, 50);
set_self(1822, 20, 50);
set_self(1821, 21, 80);
set_self(1822, 21, 80);
set_self(1821, 33, 100);
set_self(1822, 33, 100);
set_self(1821, 37, 1);
set_self(1822, 37, 1);
set_self(1820, 37, 1);
}
if((d.sieves[4] != 0 && d.compare_jing == 0 && d.replay == 0 && d.sieves[3] !=-1) ||(d.status==1&&d.sieves[4]==0 && d.replay == 0))
{
if (d.sieves[3] == C_Player.seat && (Desk.roomtype[5]==4||Desk.roomtype[5]==5)) {
set_self(1363, 37, 1, 0, 0);
}else if(Desk.roomtype[5]!=4&&Desk.roomtype[5]!=5){
d.click(1363);
}
}
d.show_horse();
for (var i = 2324; i < 2369; i++){
set_self(i, 37, 0, 0, 0);
}
for (var i = 2373; i <= 2377; i++){
set_self(i, 37, 0, 0, 0);
}
set_self(1848, 37, 0);
set_self(1849, 37, 0);
set_self(1020, 37, 0);
if(d.final_hu[0]>-1)
{//set_self(1408,37,1,0,0);
set_self(1289,37,0,0,0);//倒计时
set_self(1289,7,-1);
set_self(1327,37,0,0,0);//风向
set_self(1327,35,255,0,0);
//头像
for(var i=376;i<=379;i++)
{set_self(i,35,255,0,0);
}
set_group(228, 37, 0, 0, 0);
d.show_xiao_settle(1);d.show_timeready(); //显示准备时间
}
}
var pointids=[436,437,438,439];
for(var i=0;i<4;i++)
{set_self(pointids[d.pos[i]],7,d.user_point[i]);}//显示分数
if(d.turn[1]<d.turn[2] && d.final_hu[0] == -1)
{set_self(291,7,"房号:"+Desk.roomcode+"\n("+String(d.turn[1]+1)+"/"+Desk.count+"局)");
}
RoomFunc.re_connect()
}
//重连后停止所有可以停的动画
d.a.backstage_ani_end=function()
{
//胡
set_self(2490,37,0,0,0);
//精
set_self(2489,37,0,0,0);
set_self(2392,37,0,0,0); //火焰动画停止
for(var i=0;i<6;i++){
set_self(2394+i,37,0,0,0);
}
d.jing_time=0;
//play_ani123(0,1848,18);
//play_ani123(0,1848,19);
//set_self(1848,37,0,0,0);
//筛子&发牌
//set_self(1331,37,0,0,0);
//set_self(1332,37,0,0,0);
for (var i = 2324; i < 2369; i++){
set_self(i, 37, 0, 0, 0);
}
for (var i = 2373; i <= 2377; i++){
set_self(i, 37, 0, 0, 0);
}
set_self(1848, 37, 0);
set_self(1849, 37, 0);
set_self(1020, 37, 0);
set_self(1289,35,255,0,0);
d.tail_ctrl=[0];
d.ord(d.hand[C_Player.seat][0]);
if (d.sieves[4] >= 1) {
d.show_my13card();
d.show_you13card();
d.show_shang13card();
d.show_zuo13card();
}
//if(d.baoting[0] != 1 && d.baoting[1] != 1 && d.baoting[2] != 1 && d.baoting[3] != 1 && d.sieves[3] == -1 && d.sieves[4] != 0){
//d.show_14card();
//}
if(d.sieves[3] == -1 && d.sieves[4] != 0){
set_self(1821, 43, d.jing[0]);
set_self(1822, 43, d.jing[1]);
set_self(1821, 18, 1155);
set_self(1822, 18, 1215);
set_self(1821, 19, 15);
set_self(1822, 19, 15);
set_self(1821, 20, 50);
set_self(1822, 20, 50);
set_self(1821, 21, 80);
set_self(1822, 21, 80);
set_self(1821, 33, 100);
set_self(1822, 33, 100);
set_self(1821, 37, 1);
set_self(1822, 37, 1);
set_self(1820, 37, 1);
}
if((d.sieves[4] != 0 && d.compare_jing == 0 && d.replay == 0 && d.sieves[3] !=-1) ||(d.status==1&&d.sieves[4]==0 && d.replay == 0))
{
if (d.sieves[3] == C_Player.seat && (Desk.roomtype[5]==4||Desk.roomtype[5]==5)) {
set_self(1363, 37, 1, 0, 0);
}else if(Desk.roomtype[5]!=4&&Desk.roomtype[5]!=5){
d.click(1363);
}
}
if(cd_con[1]>0)
{cd_con[0]=0;
cd_con[1]=0;
d.status=2;
}
if(d.status==1)
{d.status=2;}
for(var i=936;i<=954;i++)
{play_ani123(0,i,18);
play_ani123(0,i,19);
set_self(i,19,585,0,0);
}
set_group(239,37,0,0,0);//飘
d.piao_time=[0,0,0,0];
//出牌
play_ani123(0,1353,18);
play_ani123(0,1353,19);
if(d.card_14>0)
{play_ani123(0,d.card_14,18);
d.card_14=0;
d.act[2]=0;
d.act_put[2]=-1;
if(d.act_put[5]>0)
{play_ani123(0,d.act_put[5],18);play_ani123(0,d.act_put[5],19);
set_self(d.act_put[5],37,0,0,0);
d.act_put[5]=-1;
}
d.put_time=0;
}
set_self(1353,37,0,0,0);
d.show_sea();
d.click_ban=1;
//收牌
set_self(1586,37,0,0,0);
play_ani123(0,1586,18);
play_ani123(0,1586,19);
//吃碰文字
for(var i=2160;i<=2163;i++)
{set_self(i,37,0,0,0);
}
set_group(206,41,1,0,0);
set_group(206,35,255,0,0);
//抄烂庄
d.act_chao_host=[0,0];
set_self(1676,37,0,0,0);
//操作
for(var i=1013;i<=1018;i++)
{play_ani123(0,i,35);
set_self(i,35,255,0,0);
}
//头像
for(var i=376;i<=379;i++)
{play_ani123(0,i,35);
set_self(i,35,255,0,0);
}
d.a.help_txt();
}

View File

@@ -0,0 +1,184 @@
//请求所有数据,发包到服务器(开战和重连时)
d.ini_StartWar=function (mode)
{var show_menu=0;
if(mode==2)//if是重连
{show_menu=2;}
d.ini_start(show_menu);
set_self(291,7,"房号:"+Desk.roomcode+"\n("+String(d.turn[1]+1)+"/"+Desk.count+"局)");
if(d.replay==0)
{var send={"app":"youle","route":d.route,"rpc":"starta","data":{"agentid":GameData.AgentId,"gameid":GameData.GameId,"playerid":C_Player.playerid,"roomcode":Desk.roomcode,"seat":C_Player.seat,"send":mode}};
Net.ws_tcp.send(JSON.stringify(send));
}
}
d.baoting_send=function(ting)
{
var send = {
"app": "youle",
"route": d.route,
"rpc": "baoting",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"baoting": ting,
}
};
Net.ws_tcp.send(JSON.stringify(send));
set_self(2176, 37, 0, 0, 0);
set_self(2177, 37, 0, 0, 0);
set_self(2322,37,0);
}
d.robot_send=function(robot_chu)
{
var send = {
"app": "youle",
"route": d.route,
"rpc": "baoting",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"baoting": robot_chu,
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
d.offline_war = function (mode) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "offline",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"send": mode
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
d.Play_Card = function () {
d.jishi_chu=0;
var send = {
"app": "youle",
"route": d.route,
"rpc": "sieves",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"sieves": d.sieves[2],
}
};
Net.ws_tcp.send(JSON.stringify(send));
set_self(1363, 37, 0, 0, 0);
}
d.debug = function () {
if (d.turn[1] + 1 == d.turn[2] && d.isEnd()) {
return;
}
var send = {
"app": "youle",
"route": d.route,
"rpc": "debug",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"hand": d.hand[C_Player.seat]
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
d.offline_kick = function (offkick_seat) {
if (Desk.PlayerList[offkick_seat].onstate == 1) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "off_kick",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"kick_seat": offkick_seat,
}
};
Net.ws_tcp.send(JSON.stringify(send));
Desk.PlayerList[offkick_seat].onstate = 0 ;
}
}
d.unprepare_kick = function (unprepare_seat) {
var send = {
"app": "youle",
"route": d.route,
"rpc": "unprepare_kick",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"unprepare_seat": unprepare_seat,
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
//重绘取消代打
d.time_over = function () {
var send = {
"app": "youle",
"route": d.route,
"rpc": "overtime",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"daida": 0,
}
};
Net.ws_tcp.send(JSON.stringify(send));
}
d.free_room=function(){
var send = {
"app": "youle",
"route": d.route,
"rpc": "free_before_makewar",
"data": {
"agentid": GameData.AgentId,
"gameid": GameData.GameId,
"playerid": C_Player.playerid,
"roomcode": Desk.roomcode,
"seat": C_Player.seat,
"go": 1,
}
};
Net.ws_tcp.send(JSON.stringify(send));
}

View File

@@ -0,0 +1,709 @@
//显示战绩1页
d.a.show_history = function (data) {
d.h = data;
d.info2 = 0;
for (var i = 0; i < 4; i++) {
set_self(1163 + i, 1, 126, 0, 0);
}
set_group(241, 37, 1, 0, 0);//背景212-241
set_group(215, 37, 1, 0, 0);//信息
set_group(241, 35, 255, 0);
set_group(215, 35, 255, 0);
set_group(215, 41, 0, 0, 0);
set_group(217, 41, 0, 0, 0);
for (var i = 0; i < 10; i++) {
set_self(1553 + i, 41, 1, 0, 0);
}
for (var i = 0; i < 12; i++) {
set_self(1653 + i, 41, 1, 0, 0);
set_self(1894 + i, 41, 1, 0, 0);
}
var y = get_self(1469, 19, 0, 0, 0);
set_group(215, 19, 146 - y, 1, 0);
for (var i = 0; i < 10; i++) {
if (data && data[i] != undefined && data[i].gameinfo1) {
var js = ifast_tojson(data[i].gameinfo1)
if (js.page0 != undefined && js.page0[0] != undefined) {
set_self(1469 + i * 7, 7, js.page0[0]);
}
if (js.page0 != undefined && js.page0[1] != undefined) {
set_self(1470 + i * 7, 7, js.page0[1]);
}
if (js.name != undefined && js.score != undefined) {
for (var j = 0; j < 4; j++) {
if (js.name[j] != undefined && js.score[j] != undefined) {
set_self(1471 + i * 7 + j, 7, d.getLen(js.name[j]) + "\n" + js.score[j]);
}
else {
set_self(1471 + i * 7 + j, 7, "");
}
}
}
if (js.id != undefined) {
var pos = js.id.indexOf(C_Player.playerid);
if (pos != -1) {//set_self(1471+i*7+pos);
if (js.score[pos] > 0) {
}
}
}
}
else {
set_self(1553 + i, 37, 0, 0, 0);
for (var j = 0; j < 7; j++) {
set_self(1469 + i * 7 + j, 37, 0, 0, 0);
}
}
}
d.a.move_up(1464);
for (var i = 0; i < 4; i++) {
set_self(150 + i, 37, 0, 0, 0);
}
}
//显示战绩2页
d.a.show_history2 = function (page, spid_up) {
var data = d.h;
spid_up = spid_up || 0;
d.h3 = page;
for (var i = 0; i < d.re_timer.length; i++) {
clearTimeout(d.re_timer[i]);
}
set_group(216, 37, 1, 0, 0);
set_group(217, 37, 1, 0, 0);
set_group(216, 35, 255, 0);
set_group(217, 35, 255, 0);
set_group(212, 35, 0, 0, 0);
set_group(215, 35, 0, 0, 0);
for (var i = 0; i < 10; i++) {
set_self(1553 + i, 41, 1, 0, 0);
}
for (var i = 0; i < 12; i++) {
set_self(1653 + i, 41, 1, 0, 0);
set_self(1894 + i, 41, 1, 0, 0);
}
for (var i = 0; i < 6; i++) {
set_self(2124 + i, 41, 1, 0, 0);
set_self(2118 + i, 41, 1, 0, 0);
}
var y = get_self(1581, 19, 0, 0, 0);
set_group(217, 19, 120 - y, 1, 0);
if (data[page] != undefined) {
var js = ifast_tojson(data[page].gameinfo1);
var persons = [4, 4, 3, 2];
var person = persons[js.roomtype[6]] || 4;
if (!js.many_hu_s && spid_up > 0) {
gameCombat.Send_get_player_grade2();
}
for (var j = 0; j < 4; j++) {
if (js.avatar[j] != undefined && String(js.avatar[j]).length > 0) {
var photo = js.avatar[j];
var pos0 = js.avatar[j].indexOf("http://pic.fxxz.com");
// var pos=js.avatar[j].indexOf(".png/96");
// if(pos0==-1 && pos==-1)
// {photo=js.avatar[j]+"/96";}
Func.up_imgurl(116 + j, photo, 1);
set_self(1160 + j, 1, 116 + j, 0, 0);
}
else if (js.name[j] != undefined) {
set_self(1160 + j, 1, 126, 0, 0);
}
}
if (js.turn_point != undefined) {
var l = js.turn_point.length;
var turn_num = 0, play = 0, check = 0;
for (var i = 0; i < l; i++) {
if (i < 12) {
turn_num = 1581 + i * 6;
play = 1894 + i;
check = 1653 + i;
}
else if (i >= 12) {
turn_num = 2064 + i - 12;
play = 2124 + i - 12;
check = 2118 + i - 12;
}
set_self(turn_num, 7, "第" + String(i + 1) + "局");//局数*
for (var j = 0; j < 4; j++) {
var point = 0, symbol = 0;
if (i < 12) {
point = 1582 + i * 6 + j;
symbol = 1667 + i * 5 + j;
}
else if (i >= 12) {
point = 2070 + (i - 12) * 8 + j;
symbol = 2074 + (i - 12) * 8 + j;
}
if (js.name[j] != undefined) {
var nickname = d.getLen(js.name[j]);
set_self(1576 + j, 7, nickname);
if (js.turn_point[i] && js.turn_point[i].length > 0) {
var x = get_self(1576 + j, 18, 0, 0, 0);
set_self(point, 7, ifast_abs(js.turn_point[i][j]));//分数*
var w = String(ifast_abs(js.turn_point[i][j])).length;
set_self(point, 20, w * 37, 0, 0);
set_self(point, 18, x, 0, 0);
if (js.turn_point[i][j] < 0) {
set_self(point, 18, x + 37, 0, 0);
set_self(symbol, 37, 1, 0, 0);//分数符号*
set_self(symbol, 18, x, 0, 0);
set_self(symbol, 19, get_self(point, 19, 0, 0, 0)+5, 0, 0);
set_self(point, 1, 521, 0, 0);
}
else {
set_self(symbol, 37, 0, 0, 0);
set_self(point, 1, 520, 0, 0);
}
}
else {
set_self(turn_num, 37, 0, 0);
set_self(point, 37, 0, 0, 0);
set_self(check, 37, 0, 0, 0);
set_self(play, 37, 0, 0, 0);//
set_self(symbol, 37, 0, 0, 0);
}
}
else {
set_self(1576 + j, 37, 0, 0, 0);
set_self(point, 37, 0, 0, 0);
set_self(symbol, 37, 0, 0, 0);
}
}
}
for (var i = l; i < 18; i++) {
if (i < 12) {
turn_num = 1581 + i * 6;
play = 1894 + i;
check = 1653 + i;
}
else if (i >= 12) {
turn_num = 2064 + i - 12;
play = 2124 + i - 12;
check = 2118 + i - 12;
}
set_self(turn_num, 37, 0, 0, 0);
set_self(check, 37, 0, 0, 0);
set_self(play, 37, 0, 0, 0);
//return;
for (var j = 0; j < 4; j++) {
if (i < 12) {
point = 1582 + i * 6 + j;
}
else if (i >= 12) {
point = 2070 + (i - 12) * 8 + j;
}
set_self(point, 37, 0, 0, 0);
}
for (var j = 0; j < 4; j++) {
if (i < 12) {
symbol = 1667 + i * 5 + j;
}
else if (i >= 12) {
symbol = 2074 + (i - 12) * 8 + j;
}
set_self(symbol, 37, 0, 0, 0);
}
}
}
else {
set_group(217, 37, 0, 0, 0);
}
var ban = 1;
if (js.many_hu_s) {
ban = 0;
}
ban = 0;
//回放相关
var ids = [1517, 1524, 1531, 1550];
//var roomtype=ifast_tojson(data[d.h3].roomtype);
//js.roomtype=d.c(roomtype);
for (var j = 0; j < person; j++) {
Desk.PlayerList[j].avatar = js.avatar[j];
var pos0 = js.avatar[j].indexOf("http://pic.fxxz.com");
// var pos=js.avatar[j].indexOf(".png/96");
// if(pos0==-1 && pos==-1)
// {Desk.PlayerList[j].avatar=js.avatar[j]+"/96";}
Desk.PlayerList[j].playerid = js.id[j];
set_self(ids[i], 7, js.id[j]);
Desk.PlayerList[j].nickname = js.name[j];
if (js.sex) {
Desk.PlayerList[j].sex = js.sex[j];
}
else {
Desk.PlayerList[j].sex = Desk.PlayerList[j].sex || 1;
}
}
var msg = localStorage.getItem(C_Player.playerid);
if (msg && ban == 0) {
var rooms = JSON.parse(msg);
if (rooms[page]) {
}
else {
for (var i = 0; i < 12; i++) {
set_self(1894 + i, 37, 0, 0, 0);//
//set_self(1653+i,37,0,0,0);
}
for (var i = 0; i < 6; i++) {
set_self(2124 + i, 37, 0, 0, 0);
//set_self(2118+i,37,0,0,0);
}
}
}
else {
for (var i = 0; i < 12; i++) {
set_self(1894 + i, 37, 0, 0, 0);
//set_self(1653+i,37,0,0,0);
}
for (var i = 0; i < 6; i++) {
set_self(2124 + i, 37, 0, 0, 0);
//set_self(2118+i,37,0,0,0);
}
}
d.a.move_up(1571);
}
for (var i = 0; i < 4; i++) {
set_self(150 + i, 37, 0, 0, 0);
}
}
//显示战绩3页
d.a.show_history3 = function (page) {
d.replay =1;
d.page = page;
var data = d.h;
var i = page;
if (data[d.h3] != undefined) {
var js = ifast_tojson(data[d.h3].gameinfo1);
var ban = 1;
if (!js.many_hu_s && d.info2) {
var js1 = ifast_tojson(d.info2);
if (js1.buyHorse_s) {
js.buyHorse_s = js1.buyHorse_s;
}
if (js1.winHorse_s) {
js.winHorse_s = js1.winHorse_s;
}
if (js1.Horse_vic_def_s) {
js.Horse_vic_def_s = js1.Horse_vic_def_s;
}
if (js1.final_hu_s) {
js.final_hu_s = js1.final_hu_s;
}
if (js1.many_hu_s) {
js.many_hu_s = js1.many_hu_s;
}
if (js1.jing_s) {
js.jing_s = js1.jing_s;
}
if (js1.huscore_s) {
js.huscore_s = js1.huscore_s;
}
if (js1.upscore_s) {
js.upscore_s = js1.upscore_s;
}
if (js1.smscore_s) {
js.smscore_s = js1.smscore_s;
}
if (js1.bmscore_s) {
js.bmscore_s = js1.bmscore_s;
}
if (js1.soscore_s) {
js.soscore_s = js1.soscore_s;
}
if (js1.alldownscore_s) {
js.alldownscore_s = js1.alldownscore_s;
}
if (js1.gang_score_s) {
js.gang_score_s = js1.gang_score_s;
}
}
console.log(js)
if (js.many_hu_s) {
ban = 0;
}
if (ban == 0) {
d.show_xiao_settle(0, page, js.identity_s, js.name, js.avatar, js.id, js.hand_s[page], js.turn_point, js.buyHorse_s[page], js.winHorse_s[page], js.Horse_vic_def_s[page], js.final_hu_s[page], js.hu_note_s[page], js.hu_note_gang_s[page], js.roomtype, js.many_hu_s[page], js.start_hu_s[page], js.piao, js.sea_hua_s[page], js.peng_chi_num_s[page], js.hu_note_gang_jing_s[page], js.putJing_s[page], js.jing_s[page], js.score, js.huapai,js.ting,js.zhuangtai,js.huscore_s[page],js.upscore_s[page],js.alldownscore_s[page],js.gang_score_s[page],js.smscore_s[page]);
if (get_self(1160,37)==1){
RoomFunc.game_out_show_settle(js,js1);
}
}
set_group(216, 35, 35, 0, 0);
set_group(217, 35, 35, 0, 0);
//set_self(1299,37,0,0,0);//庄
}
for (var i = 0; i < 4; i++) {
set_self(150 + i, 37, 0, 0, 0);
}
d.replay = 0;
}
//看手牌
d.a.show_history3_1 = function () {
d.replay =1;
var data = d.h;
var page = d.page;
var i = page;
if (data[d.h3] != undefined) {
var js = ifast_tojson(data[d.h3].gameinfo1);
var ban = 1;
if (!js.many_hu_s && d.info2) {
var js1 = ifast_tojson(d.info2);
if (js1.buyHorse_s) {
js.buyHorse_s = js1.buyHorse_s;
}
if (js1.winHorse_s) {
js.winHorse_s = js1.winHorse_s;
}
if (js1.Horse_vic_def_s) {
js.Horse_vic_def_s = js1.Horse_vic_def_s;
}
if (js1.final_hu_s) {
js.final_hu_s = js1.final_hu_s;
}
if (js1.many_hu_s) {
js.many_hu_s = js1.many_hu_s;
}
if (js1.jing_s) {
js.jing_s = js1.jing_s;
}
if (js1.huscore_s) {
js.huscore_s = js1.huscore_s;
}
if (js1.upscore_s) {
js.upscore_s = js1.upscore_s;
}
if (js1.smscore_s) {
js.smscore_s = js1.smscore_s;
}
if (js1.bmscore_s) {
js.bmscore_s = js1.bmscore_s;
}
if (js1.soscore_s) {
js.soscore_s = js1.soscore_s;
}
if (js1.alldownscore_s) {
js.alldownscore_s = js1.alldownscore_s;
}
if (js1.gang_score_s) {
js.gang_score_s = js1.gang_score_s;
}
}
console.log(js)
if (js.many_hu_s) {
ban = 0;
}
if (ban == 0) {
d.show_xiao1_settle(0, page, js.identity_s, js.name, js.avatar, js.id, js.hand_s[page], js.turn_point, js.buyHorse_s[page], js.winHorse_s[page], js.Horse_vic_def_s[page], js.final_hu_s[page], js.hu_note_s[page], js.hu_note_gang_s[page], js.roomtype, js.many_hu_s[page], js.start_hu_s[page], js.piao, js.sea_hua_s[page], js.peng_chi_num_s[page], js.hu_note_gang_jing_s[page], js.putJing_s[page], js.jing_s[page], js.score, js.huapai,js.ting,js.zhuangtai,js.huscore_s[page],js.upscore_s[page],js.alldownscore_s[page],js.gang_score_s[page],js.smscore_s[page]);
if (get_self(1160,37)==1){
RoomFunc.game_out_show_settle(js,js1);
}
}
set_group(216, 35, 35, 0, 0);
set_group(217, 35, 35, 0, 0);
//set_self(1299,37,0,0,0);//庄
}
for (var i = 0; i < 4; i++) {
set_self(150 + i, 37, 0, 0, 0);
}
d.replay = 0;
}
//看精牌
d.a.show_history3_2 = function () {
d.replay =1;
var data = d.h;
var page = d.page;
var i = page;
if (data[d.h3] != undefined) {
var js = ifast_tojson(data[d.h3].gameinfo1);
var ban = 1;
if (!js.many_hu_s && d.info2) {
var js1 = ifast_tojson(d.info2);
if (js1.buyHorse_s) {
js.buyHorse_s = js1.buyHorse_s;
}
if (js1.winHorse_s) {
js.winHorse_s = js1.winHorse_s;
}
if (js1.Horse_vic_def_s) {
js.Horse_vic_def_s = js1.Horse_vic_def_s;
}
if (js1.final_hu_s) {
js.final_hu_s = js1.final_hu_s;
}
if (js1.many_hu_s) {
js.many_hu_s = js1.many_hu_s;
}
if (js1.jing_s) {
js.jing_s = js1.jing_s;
}
if (js1.huscore_s) {
js.huscore_s = js1.huscore_s;
}
if (js1.upscore_s) {
js.upscore_s = js1.upscore_s;
}
if (js1.smscore_s) {
js.smscore_s = js1.smscore_s;
}
if (js1.bmscore_s) {
js.bmscore_s = js1.bmscore_s;
}
if (js1.soscore_s) {
js.soscore_s = js1.soscore_s;
}
if (js1.alldownscore_s) {
js.alldownscore_s = js1.alldownscore_s;
}
if (js1.gang_score_s) {
js.gang_score_s = js1.gang_score_s;
}
if (js1.do_card_s) {
js.do_card_s = js1.do_card_s;
}
if (js1.up_card_s) {
js.up_card_s = js1.up_card_s;
}
if (js1.sm_card_s) {
js.sm_card_s = js1.sm_card_s;
}
if (js1.sm2_card_s) {
js.sm2_card_s = js1.sm2_card_s;
}
if (js1.bm_card_s) {
js.bm_card_s = js1.bm_card_s;
}
if (js1.so_card_s) {
js.so_card_s = js1.so_card_s;
}
if (js1.last_up_jing_s) {
js.last_up_jing_s = js1.last_up_jing_s;
}
if (js1.last_down_jing_s) {
js.last_down_jing_s = js1.last_down_jing_s;
}
if (js1.down_jing_s) {
js.down_jing_s = js1.down_jing_s;
}
}
console.log(js)
if (js.many_hu_s) {
ban = 0;
}
if (ban == 0) {
d.show_xiao2_settle(0, page, js.identity_s, js.name, js.avatar, js.id, js.hand_s[page], js.turn_point, js.buyHorse_s[page], js.winHorse_s[page], js.Horse_vic_def_s[page], js.final_hu_s[page], js.hu_note_s[page], js.hu_note_gang_s[page], js.roomtype, js.many_hu_s[page], js.start_hu_s[page], js.piao, js.sea_hua_s[page], js.peng_chi_num_s[page], js.hu_note_gang_jing_s[page], js.putJing_s[page], js.jing_s[page], js.score, js.huapai,js.ting,js.zhuangtai,js.last_up_jing_s[page],js.last_down_jing_s[page],js.down_jing_s[page],js.sm_card_s[page],js.sm2_card_s[page],js.do_card_s[page],js.up_card_s[page],js.bm_card_s[page],js.so_card_s[page]);
if (get_self(1160,37)==1){
RoomFunc.game_out_show_settle(js,js1);
}
}
set_group(216, 35, 35, 0, 0);
set_group(217, 35, 35, 0, 0);
//set_self(1299,37,0,0,0);//庄
}
for (var i = 0; i < 4; i++) {
set_self(150 + i, 37, 0, 0, 0);
}
d.replay = 0;
}
//战绩大结算页面移动
d.a.move = function (spid, offmovey) {
if (spid >= 1453 && spid <= 1456) {
var y1 = get_self(1354, 19, 0, 0, 0);
var l = 0, y2 = 0;
for (var i = 0; i < 6; i++) {
if (get_self(2135 - i, 37, 0, 0, 0) == 1) {
l = 18 - i;
y2 = get_self(2135 - i, 19, 0, 0, 0);
break;
}
}
if (l == 0) {
for (var i = 0; i < 12; i++) {
if (get_self(1409 - i * 5, 37, 0, 0, 0) == 1)//
{
l = 12 - i;
y2 = get_self(1409 - i * 5, 19, 0, 0, 0);//
break;
}
}
}
if (l == 0) {
return;
}
var y3 = get_self(1453, 19, 0, 0, 0);
var y4 = get_self(1453, 19, 0, 0, 0) + get_self(1453, 21, 0, 0, 0);
if (offmovey > 0) {
if (y1 + offmovey * 1 > y3 + 25) {
return;
}
}
else {
if (y2 + offmovey * 1 < y4 - 60) {
return;
}
}
set_group(223, 19, offmovey * 1, 1, 0);
}
else if (spid == 1464) {
var y1 = get_self(1469, 19, 0, 0, 0);
var l = d.h.length || 0;
if (l == 0) {
return;
}
var y2 = get_self(1469 + (l - 1) * 7, 19, 0, 0, 0);
var y3 = get_self(1570, 19, 0, 0, 0);
var y4 = get_self(1466, 19, 0, 0, 0);
if (offmovey > 0) {
if (y1 + offmovey * 1 >= y3 + 90) {
return;
}
}
else {
if (y2 + offmovey * 1 <= y4 - 90) {
return;
}
}
set_group(215, 19, offmovey * 1, 1, 0);
}
else if (spid == 1571) {
var y1 = get_self(1581, 19, 0, 0, 0);
var l = 0, y2 = 0;
for (var i = 0; i < 6; i++) {
if (get_self(2069 - i, 37, 0, 0, 0) == 1) {
l = 18 - i;
y2 = get_self(2069 - i, 19, 0, 0, 0);//
break;
}
}
if (l == 0) {
for (var i = 0; i < 12; i++) {
if (get_self(1647 - i * 6, 37, 0, 0) == 1)//
{
l = 12 - i;
y2 = get_self(1647 - i * 6, 19, 0, 0, 0);//
break;
}
}
}
if (l == 0) {
return;
}
var y3 = get_self(1665, 19, 0, 0, 0) + 36;
var y4 = get_self(1341, 19, 0, 0, 0);
if (offmovey > 0) {
if (y1 + offmovey * 1 > y3 + 25) {
return;
}
}
else {
if (y2 + offmovey * 1 < y4 - 50 - 10) {
return;
}
}
set_group(217, 19, offmovey * 1, 1, 0);
}
}
//战绩大结算页面点击
d.a.move_up = function (spid_down) {
if (spid_down >= 1453 && spid_down <= 1456) {
var y1 = get_self(1354, 19, 0, 0, 0);
var l = 0, y2 = 0;
for (var i = 0; i < 6; i++) {
if (get_self(2135 - i, 37, 0, 0, 0) == 1) {
l = 18 - i;
y2 = get_self(2135 - i, 19, 0, 0, 0);
break;
}
}
if (l == 0) {
for (var i = 0; i < 12; i++) {
if (get_self(1409 - i * 5, 37, 0, 0, 0) == 1)//
{
l = 12 - i;
y2 = get_self(1409 - i * 5, 19, 0, 0, 0);//
break;
}
}
}
if (l == 0) {
return;
}
var y3 = get_self(1453, 19, 0, 0, 0);
var y4 = get_self(1453, 19, 0, 0, 0) + get_self(1453, 21, 0, 0, 0);
if (y1 > y3 + 17) {
set_group(223, 19, (y3 + 17) - y1, 1, 0);
}
else if (y2 < y4 - 51 && y1 < y3) {
set_group(223, 19, (y4 - 51) - y2, 1, 0);
y1 = get_self(1354, 19, 0, 0, 0);
if (y1 > y3 + 17) {
set_group(223, 19, (y3 + 17) - y1, 1, 0);
}
}
}
else if (spid_down == 1464) {
var y1 = get_self(1469, 19, 0, 0, 0);
var l = 0;
if (d.h) {
l = d.h.length || 0;
}
if (l == 0) {
return;
}
var y2 = get_self(1469 + (l - 1) * 7, 19, 0, 0, 0);
var y3 = get_self(1570, 19, 0, 0, 0);
var y4 = get_self(1466, 19, 0, 0, 0);
if (y1 > y3 + 55) {
set_group(215, 19, (y3 + 55) - y1, 1, 0);
}
else if (y2 < y4 - 50 && y1 < y3) {
set_group(215, 19, (y4 - 50) - y2, 1, 0);
y1 = get_self(1469, 19, 0, 0, 0);
if (y1 > y3 + 55) {
set_group(215, 19, (y3 + 55) - y1, 1, 0);
}
}
}
else if (spid_down == 1571) {
var y1 = get_self(1581, 19, 0, 0, 0);
var l = 0, y2 = 0;
for (var i = 0; i < 6; i++) {
if (get_self(2069 - i, 37, 0, 0, 0) == 1) {
l = 18 - i;
y2 = get_self(2069 - i, 19, 0, 0, 0);//
break;
}
}
if (l == 0) {
for (var i = 0; i < 12; i++) {
if (get_self(1647 - i * 6, 37, 0, 0) == 1)//
{
l = 12 - i;
y2 = get_self(1647 - i * 6, 19, 0, 0, 0);//
break;
}
}
}
if (l == 0) {
return;
}
var y3 = get_self(1665, 19, 0, 0, 0) + 36;
var y4 = get_self(1341, 19, 0, 0, 0);
if (y1 > y3 + 10) {
set_group(217, 19, (y3 + 10) - y1, 1, 0);
}
else if (y2 < y4 - 50 - 10 && y1 < y3) {
set_group(217, 19, (y4 - 50 - 10) - y2, 1, 0);
y1 = get_self(1581, 19, 0, 0, 0);
if (y1 > y3 + 10) {
set_group(217, 19, (y3 + 10) - y1, 1, 0);
}
}
}
}

View File

@@ -0,0 +1,876 @@
//回放
d.replay_ReceiveData = function (_msg) {
d.re_timer.shift();
//掷骰子
if (_msg.rpc == "sieves") {
d.set_png_pos(C_Player.seat);
d.set_png_pos_un(C_Player.seat);
if (_msg.data.upjing != undefined) {
d.jing = d.c(_msg.data.upjing);//上精
}
if (_msg.data.downjing != undefined) {
d.downjing = d.c(_msg.data.downjing);//下精
if(d.roomtype[5] == 3){
d.song_downjing = d.get_song_downjing(d.downjing);
}
}
if (_msg.data.last_up_jing != undefined) {
d.last_up_jing = d.c(_msg.data.last_up_jing);//上局的上精
}
if (_msg.data.last_down_jing != undefined) {
d.last_down_jing = d.c(_msg.data.last_down_jing);//上局的下精
}
if (_msg.data.smile_score != undefined) {
d.smile_score = d.c(_msg.data.smile_score);//回头一笑上精分数,牌值,霸王,冲关
}
if (_msg.data.smile2_score != undefined) {
d.smile2_score = d.c(_msg.data.smile2_score);//回头两笑下精分数,牌值,霸王,冲关
}
if (_msg.data.down_score != undefined) {
d.down_score = d.c(_msg.data.down_score);//下精分数,牌值,霸王,冲关
}
if (_msg.data.user_ctrl != undefined) {
d.getserver_time = d.c(_msg.data.user_ctrl);//掷骰子获得服务器时间
}
if (_msg.sound != undefined) {
d.bet_sound(_msg.sound);
}//播放的音效
if (_msg.data.baoting != undefined) {
d.baoting = d.c(_msg.data.baoting);//报听
if(d.identity[4]==C_Player.seat && d.baoting[C_Player.seat]!=1 && (d.baoting[0]==1 || d.baoting[1]==1 || d.baoting[2]==1 || d.baoting[3]==1)){
set_self(2449, 37, 1);
for(var i=935;i<=954;i++){
set_self(i,35,150);
}
}else{
set_self(2449, 37, 0);
for(var i=935;i<=954;i++){
set_self(i,35,255);
}
}
}
if (_msg.data.sieves != undefined) {
d.sieves = d.c(_msg.data.sieves);//骰子
if(get_self(1965, 37) == 0)
{set_self(1965, 37, 1);}
d.show_time(240);
d.sieves_time = 1;//掷骰子动画
}
}
if (_msg.rpc == "baoting") {
d.set_png_pos(C_Player.seat);
d.set_png_pos_un(C_Player.seat);
if (_msg.data.user_ctrl != undefined) {
d.getserver_time = d.c(_msg.data.user_ctrl);//报听获得服务器时间
}
if (_msg.seat != undefined) {
d.baoting_seat = d.c(_msg.seat);//报听人座位
}
if (_msg.sound != undefined) {
d.bet_sound(_msg.sound);
}//播放的音效
if (_msg.data.baoting != undefined) {
d.baoting = d.c(_msg.data.baoting);//报听
if(d.baoting[d.baoting_seat] == 2){
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
var show_spids = [2160, 2161, 2162, 2163];
var pos = d.pos[d.baoting_seat];
if (person == 2) {
show_spids = [2160, 2162, 2162, 2162];
if (pos != 0) {
pos = 2;
}
}
var show_spid = show_spids[pos];
RoomFunc.operate_before(show_spid,11);
}
d.show_operate();
if(d.baoting[0] != 1 && d.baoting[1] != 1 && d.baoting[2] != 1 && d.baoting[3] != 1){
if (_msg.data.user_eat_bump != undefined) {
d.user_eat_bump = d.c(_msg.data.user_eat_bump);//操作按钮相关
}
//d.show_14card();
}
if(d.identity[4]==C_Player.seat && d.baoting[C_Player.seat]!=1 && (d.baoting[0]==1 || d.baoting[1]==1 || d.baoting[2]==1 || d.baoting[3]==1)){
set_self(2449, 37, 1);
for(var i=935;i<=954;i++){
set_self(i,35,150);
}
}else{
set_self(2449, 37, 0);
for(var i=935;i<=954;i++){
set_self(i,35,255);
}
}
d.show_time(240);
}
}
if (_msg.rpc == "start")//接收数据包
{
d.nowtime = new Date().getTime();
d.roomcode = Desk.roomcode;
Desk.stage = 1;
set_group(28, 37, 0, 0, 0);
d.turn = d.turn || [];
d.set_png_pos(C_Player.seat);
d.set_png_pos_un(C_Player.seat);
if (_msg.grade != undefined) {
if (Utl.getIsInfinite() == 1) {
for (var i = 0; i < 4; i++) {
if (Desk.PlayerList[i] && _msg.grade[i] != undefined) {
Desk.GetPlayerBySeat(i).bean = _msg.grade[i];
Utl.setGrade(i, _msg.grade[i]);
}
}
}
}
if (Utl.getIsInfinite() == 1) {
if(_msg.data.robot != undefined){
d.robot = _msg.data.robot;
}
}
if (_msg.p != undefined) {
d.pai14 = _msg.p;
}
if (_msg.sound != undefined) {
d.bet_sound(_msg.sound);
}
if (_msg.roomtype != undefined) {
d.roomtype = d.c(_msg.roomtype);
}
if (_msg.piao != undefined) {
d.piao = d.c(_msg.piao);
d.show_piao();
}
if (_msg.act_piao != undefined) {
d.act_piao = d.c(_msg.act_piao);
}
if (_msg.turn != undefined) {
d.turn[1] = _msg.turn;
}
if (_msg.status != undefined) {
// if(_msg.status==1 && d.turn[1]==0)
// {set_group(201,35,160,0,0);
// if(d.piao[C_Player.seat]==-1)
// {set_group(238,37,1,0,0);}
// }
// else
// {set_group(201,35,255,0,0);
// if(d.recon==1 || d.backstage==1)
// {set_group(239,37,0,0,0);}
// }
d.status = _msg.status;
if (d.status == 1 && cd_con[0] == 0 && d.recon != 1 && d.backstage != 1) {
cd_con[0] = 1;
d.ini_card_wall();
}
if (d.turn[1] < d.turn[2] && d.status != 3) {
set_self(291, 7, "房号:" + Desk.roomcode + "\n(" + String(d.turn[1] + 1) + "/" + Desk.count + "局)");
}
if (d.status != 3) {
set_group(228, 37, 0, 0, 0);
}
}
if (_msg.ting_status != undefined) {
d.ting_status = d.c(_msg.ting_status);
}
if (_msg.start_hu != undefined) {
d.start_hu = d.c(_msg.start_hu);
}
if (_msg.user_ctrl != undefined) {
if (d.status < 3 && d.user_ctrl[10] < _msg.user_ctrl[10]) {
d.ctrl = 1;//控制权是否有变动
}
d.user_ctrl = d.c(_msg.user_ctrl);//控制权:2谁出牌/发给谁牌3发的牌
d.time_dif = d.user_ctrl[11] - d.nowtime;//时间校对
if(d.last_operate[0]==0 && d.user_ctrl[2]==-1 && d.user_ctrl[3]==-1 || d.user_ctrl[2]==C_Player.seat || d.throw_card==0 && d.ctrl == 1)
{
d.user_ctrl0=new Date().getTime();
}
if (d.status < 3 && d.user_ctrl[2] > -1)//显示谁的控制权
{
var head = [346, 347, 348, 349];
var seat = d.user_ctrl[2];
set_self(1021, 18, get_self(head[d.pos[seat]], 18, 0, 0, 0) - 10, 0, 0);
set_self(1021, 19, get_self(head[d.pos[seat]], 19, 0, 0, 0) - 10, 0, 0);
set_self(1021, 37, 1, 0, 0);
if (d.status > 0) {
set_self(1327, 37, 1, 0, 0);
}//方向
var wind = d.identity[0];
if (wind > -1 && d.user_ctrl[2] > -1 && d.sieves[3] == -1) {
set_self(1327, 43, wind + d.user_ctrl[2] + 1, 0, 0);
d.show_identity();
}
}
else if (d.user_ctrl[2] == -1) {
var head = [346, 347, 348, 349];
var seat = C_Player.seat;
if (get_self(1021, 18, 0, 0, 0) == get_self(head[d.pos[seat]], 18, 0, 0, 0) - 10 && get_self(1021, 19, 0, 0, 0) == get_self(head[d.pos[seat]], 19, 0, 0, 0) - 10) {
set_self(1021, 37, 0, 0, 0);
}
}
if (d.status == 1 && cd_con[0] == 1 && d.recon != 1 && d.backstage != 1) {
set_self(1021, 37, 0, 0, 0);
set_self(1289, 37, 0, 0, 0);
set_self(1289, 7, -1);
d.ctrl = 1;//控制权是否有变动
}
d.show_ready();//显示是否准备
}
if (_msg.sieve != undefined) {
d.sieve = d.c(_msg.sieve);
}
if (_msg.identity != undefined) {
d.identity = d.c(_msg.identity);
d.show_identity();
}
if (_msg.jing != undefined) {
d.jing = d.c(_msg.jing);
//set_self(1821, 43, d.jing[0]);
//set_self(1822, 43, d.jing[1]);
}
if (_msg.jing_reduce != undefined) {
d.jing_reduce = d.c(_msg.jing_reduce);
}
if (_msg.poker != undefined) {
d.poker = d.c(_msg.poker);
}
if (_msg.pai_num != undefined) {
d.pai_num = d.c(_msg.pai_num);
}
if (_msg.put_tail_poker != undefined) {
d.put_tail_poker = d.c(_msg.put_tail_poker);
}
if (_msg.tail_ctrl != undefined) {
d.tail_ctrl = d.c(_msg.tail_ctrl);
}
if (_msg.tail_poker_hu != undefined) {
d.tail_poker_hu = d.c(_msg.tail_poker_hu);
}
if (_msg.tail_poker != undefined) {
d.tail_poker = d.c(_msg.tail_poker);
if (d.recon == 0 && d.backstage == 0) {
d.sieve_time = 3;
}
//筛子
//if (d.tail_ctrl[0] > 0 && d.recon != 1 && d.backstage != 1) {
//if (d.tail_poker[5] > 0) {
//set_self(1331, 43, d.tail_poker[5], 0, 0);
//set_self(1331, 37, 1, 0, 0);
//}
//if (d.tail_poker[6] > 0) {
//set_self(1332, 43, d.tail_poker[5], 0, 0);
//set_self(1332, 37, 1, 0, 0);
//}
//}
//else {
//set_self(1331, 37, 0, 0, 0);
//set_self(1332, 37, 0, 0, 0);
//set_self(1289, 35, 255, 0, 0);
//}
}
if (_msg.lastbar != undefined) {
d.lastbar = d.c(_msg.lastbar);
}
if (_msg.last_operate != undefined) {
d.last_operate = d.c(_msg.last_operate);
}
if (_msg.ag != undefined) {
d.ag = d.c(_msg.ag);
}
if (_msg.peng_chi_num != undefined) {
d.peng_chi_num = d.c(_msg.peng_chi_num);
}
if (_msg.hu_note != undefined) {
d.hu_note = d.c(_msg.hu_note);
}
if (_msg.many_hu != undefined) {
d.many_hu = d.c(_msg.many_hu);
}
if (_msg.final_hu != undefined) {
d.final_hu = d.c(_msg.final_hu);
//d.show_final_hu();
}
if (_msg.act_pai != undefined) {
d.act_pai = d.c(_msg.act_pai);
d.show_act_pai_flash();
}
if (_msg.hu_ready != undefined) {
d.hu_ready = d.c(_msg.hu_ready);
}
if (_msg.an_gang_num != undefined) {
d.an_gang_num = d.c(_msg.an_gang_num);
}
if (_msg.hand_arrow != undefined) {
d.hand_arrow = d.c(_msg.hand_arrow);
}
if (_msg.hand != undefined) {
for (var i = 0; i < 4; i++) {
if (i != C_Player.seat && _msg.hand[i] && _msg.hand[i].length > 0) {
d.hand[i] = d.c(_msg.hand[i]);
}
if (i == C_Player.seat && _msg.hand[i] && _msg.hand[i].length > 0) {
var set_ban = 0;
for (var j = 0; j < _msg.hand[i][0].length; j++) {
if (_msg.hand[i][0][j] == -1) {
set_ban = 1;
break;
}
}
if (set_ban == 0) {
d.hand[i] = d.c(_msg.hand[i]);
}
}
}
;
//d.hand=d.c(_msg.hand);
if (_msg.start_hu_card != undefined) {
d.start_hu_card = d.c(_msg.start_hu_card);
}
if (get_self(1413, 37, 0, 0, 0) == 0) {
if (d.status > 1) {
for (var i = 0; i < 15; i++) {
if (get_self(936 + i, 37, 0, 0, 0) == 1) {
play_ani123(0, 936 + i, 18);
play_ani123(0, 936 + i, 19);
}
}
d.show_my13card();
d.show_you13card();
d.show_shang13card();
d.show_zuo13card();
d.show_14card();
var first_card = d.user_ctrl[3];
if (first_card == -1){
RoomFunc.nomopai_before(d.user_ctrl[2]);
}
if (first_card != -1) {
RoomFunc.mopai_before(first_card,d.user_ctrl[2]);
}
}
}
}
if (_msg.throw_card != undefined) {
d.throw_card = _msg.throw_card;
}
if (_msg.user_eat_bump != undefined) {
d.user_eat_bump = d.c(_msg.user_eat_bump);
// if(d.status==2)
// {d.show_operate();}
}
if (_msg.hu_card != undefined) {
d.hu_card = d.c(_msg.hu_card);
}
if (_msg.sea != undefined) {
d.sea = d.c(_msg.sea);
// if(_msg.act!=undefined)
// {}
// else
{
// d.show_sea();
}
}
if (_msg.act != undefined) {
d.act = d.c(_msg.act);
if (d.act[1] != C_Player.seat) {
d.show_put_card_act(0);
}
d.show_putcard();
}
if (_msg.sea_hua != undefined) {
d.sea_hua = d.c(_msg.sea_hua);
}
if (_msg.act_chao_host != undefined) {
d.act_chao_host = d.c(_msg.act_chao_host);
if (d.act_chao_host[0] > 0) {
d.set_chao_host(d.act_chao_host[0]);
}
}
if (_msg.turn_point != undefined) {
d.turn_point = d.c(_msg.turn_point);
}
if (_msg.user_point != undefined) {
d.user_point = d.c(_msg.user_point);//各用户累积分数
if (d.status != 3) {
var pointids = [436, 437, 438, 439];
for (var i = 0; i < 4; i++) {//set_self(pointids[d.pos[i]],7,d.user_point[i]);
Utl.setGrade(i, d.user_point[i]);
//var position=[43,1042,1236,43];
//GameUI.PlayerJoinRoom(i);
}
}
if (Utl.getIsInfinite() == 1) {
for (var i = 0; i < 4; i++) {
var arr_grade = [];
if (Desk.PlayerList[i]) {
var _bean = Desk.GetPlayerBySeat(i).bean;
Utl.setGrade(i, _bean);
}
}
}
}
if (_msg.buyHorse != undefined) {
d.buyHorse = d.c(_msg.buyHorse);
}
if (_msg.winHorse != undefined) {
d.winHorse = d.c(_msg.winHorse);
}
if (_msg.Horse_vic_def != undefined) {
d.Horse_vic_def = d.c(_msg.Horse_vic_def);
}
if (_msg.hu_note_gang != undefined) {
d.hu_note_gang = d.c(_msg.hu_note_gang);
}
if (_msg.hu_note_gang_jing != undefined) {
d.hu_note_gang_jing = d.c(_msg.hu_note_gang_jing);
}
if (_msg.putJing != undefined) {
d.putJing = d.c(_msg.putJing);
}
if (_msg.user_ctrl != undefined) {
if (d.ctrl == 1 && d.status == 2 && d.sieves[3] == -1 || d.status == 2 && d.final_hu[0] == -1 && d.sieves[3] == -1) {
d.show_time(240);
}
}
if (_msg.user_eat_bump != undefined) {//d.user_eat_bump=d.c(_msg.user_eat_bump);
if (d.status == 2 && get_self(1965, 37) == 0) {
if (d.operate_show_con > 0) {
setTimeout("d.show_operate", 120);
}
else {
d.show_operate();
}
}
}
if (_msg.status == 2) {
d.auto_poker_hua();
}
if (_msg.final_hu != undefined) {//d.final_hu=d.c(_msg.final_hu);
d.show_final_hu();
}
if (_msg.data.up_score != undefined) {
d.up_score = d.c(_msg.data.up_score);//上精分数,牌值,霸王,冲关
}
if (_msg.data.bmob_score != undefined) {
d.bmob_score = d.c(_msg.data.bmob_score);//埋雷下精分数,牌值,霸王,冲关
}
if (_msg.data.song_score != undefined) {
d.song_score = d.c(_msg.data.song_score);//同一首歌下精分数,牌值,霸王,冲关
}
if (_msg.data.huscore != undefined) {
d.huscore = d.c(_msg.data.huscore);//胡牌分数
}
if (_msg.data.upscore != undefined) {
d.upscore = d.c(_msg.data.upscore);//上精分数
}
if (_msg.data.downscore != undefined) {
d.downscore = d.c(_msg.data.downscore);//下精分数
}
if (_msg.data.gangscore != undefined) {
d.gangscore = d.c(_msg.data.gangscore);//杠分数
}
if (_msg.data.smilescore != undefined) {
d.smilescore = d.c(_msg.data.smilescore);//回头分数
}
if (_msg.makewartime != undefined) {
d.makewartime = d.c(_msg.makewartime);//开战时间
}
}
}
//回放点击
d.replay_click = function (spid_up) {
d.re_timer.shift();
if (spid_up >= 1774 && spid_up <= 1779) {
d.click_piao(spid_up);
}
else if (d.status == 2 && d.user_ctrl[2] == C_Player.seat && d.click_ban == 1 && spid_up >= 936 && spid_up <= 954 && get_self(spid_up, 21, 0, 0, 0) > 120 && d.gang_option == 0 && d.final_hu[0] == -1 && d.get_hua() == 0) {
set_self(spid_up, 19, 565, 0, 0);
d.click_chu(spid_up);
}
else if (d.status == 2 && spid_up >= 1013 && spid_up <= 1018 && d.get_hua() == 0) {
d.click_operate(spid_up);
}
else if (d.user_ctrl[2] != C_Player.seat && spid_up >= 1131 && spid_up <= 1139 || d.user_ctrl[2] != C_Player.seat && spid_up >= 791 && spid_up <= 799) {
d.click_chi_option(spid_up);
Utl.playSound("00" + 170 + ".mp3");
}
else if (d.peng_option == 1 && spid_up >= 936 && spid_up <= 954 && get_self(spid_up, 21, 0, 0, 0) > 120) {
d.click_peng_option(spid_up);
Utl.playSound("00" + 170 + ".mp3");
}
else if (d.gang_option == 1 && spid_up >= 936 && spid_up <= 954 && get_self(spid_up, 21, 0, 0, 0) > 120) {
d.click_gang_option(spid_up);
Utl.playSound("00" + 170 + ".mp3");
}
/*else if(spid_up==1159)
{set_group(213,37,0,0,0);
set_group(230,37,0,0,0);
set_self(1408,43,1,0,0);
for(var i=233;i<=240;i++)
{set_group(i,37,0,0,0);}
set_self(1408,37,1,0,0);
if(d.turn[1]<d.turn[2])
{set_self(291,7,"房号:"+Desk.roomcode+"\n("+String(d.turn[1]+1)+"/"+Desk.count+"局)");}
if(d.turn[1]+1>=d.turn[2])
{set_self(1408,43,2,0,0);}
for(var i=0;i<4;i++)
{set_self(150+i,37,1,0,0);}
Utl.playSound("00"+170+".mp3");
}
else if(spid_up==1403 || spid_up==1408)
{d.click_ready(spid_up);
d.send_ip();
d.send_distance();
}
else if(spid_up==1435)
{d.ini_start();
Utl.Exit();
Utl.playSound("00"+170+".mp3");
}*/
}
d.replay_record = function (mode, nowtime, _msg, replay0) {
if (Utl.getIsInfinite() == 1) {
return;
}
if (replay0 != undefined) {
}
else {
replay0 = "";
}
if (d.replay == 0) {
if (mode == 0) {
d.room = [C_Player.seat, Desk.roomcode, Desk.count, d.turn[2], C_Player.playerid];
}
else {
}
var l = d.turn[1];
var msg = localStorage.getItem(C_Player.playerid + "back");
if (msg) {
d.re = JSON.parse(msg);
}
d.re[l] = d.re[l] || [];
var l1 = d.re[l].length;
d.re[l][l1] = [nowtime, mode, _msg, replay0];
if (d.reps != undefined && d.reps.length > 0 || d.p != undefined && d.p.length > 0) {
d.replay_light_card();
d.rep = [];
d.p = [];
}
var msg = JSON.stringify(d.re);
try {
localStorage.setItem(C_Player.playerid + "back", msg);
} catch (oException) {
if (oException.name == 'QuotaExceededError') {
localStorage.clear();
Logic.saveShortCode("");
localStorage.setItem(C_Player.playerid + "back", msg);
}
}
}
}
d.replay_light_card = function () {
if (d.replay == 0) {
var l = d.turn[1];
d.re[l] = d.re[l] || [];
var l1 = d.re[l].length;//d.re[l][l1]=[nowtime,mode,_msg,replay0];rep[l]=hand;
var ban = 0;
for (var i = 0; i < l1; i++) {
if (d.re[l][i][1] == 0 && d.re[l][i][3] != undefined && String(d.re[l][i][3]).length > 0) {
var rep_num = d.re[l][i][3];
if (d.reps[rep_num] && d.reps[rep_num].length > 0 && d.re[l][i][2]) {
d.re[l][i][2].hand = d.c(d.reps[rep_num]);
if (d.reps[rep_num].length == 4 && d.reps[rep_num][0] && d.reps[rep_num][1] && d.reps[rep_num][2] && d.reps[rep_num][3]) {
ban = 1;
}
if (ban == 0) {
var arr0 = d.c(d.reps[d.re[l][0][3]]);
for (var k = 0; k < 10; k++) {
if (d.re[l][k] && d.reps[d.re[l][k][3]] && d.reps[d.re[l][k][3]][0] && d.reps[d.re[l][k][3]][1] && d.reps[d.re[l][k][3]][2] && d.reps[d.re[l][k][3]][3]) {
arr0 = d.c(d.reps[d.re[l][k][3]]);
break;
}
}
for (var j = 0; j < 4; j++) {
if (!d.re[l][i][2].hand[j] && arr0 && arr0[j]) {
d.re[l][i][2].hand[j] = d.c(arr0[j]);
ban = 1;
}
}
}
}
if (d.p != undefined && d.p[rep_num] && String(d.p[rep_num]).length > 0) {
d.re[l][i][2].p = d.p[rep_num];
}
}
}
}
}
d.replay_write = function () {
if (Utl.getIsInfinite() == 1) {
return;
}
if (d.replay == 0) {
var msg = localStorage.getItem(C_Player.playerid);
var rooms = rooms || [];
if (msg) {
var rooms = JSON.parse(msg);
if (rooms.length >= 3) {
for (var i = 2; i < rooms.length; i++) {
var playerid = rooms[i][0][4];
var nowtime = rooms[i][1];
localStorage.removeItem(playerid + "t" + nowtime);
rooms.pop();
}
}
}
else {
}
// var nowtime = new Date().getTime();//makewartime+"_"+d.turn[1]
var nowtime=d.makewartime;
rooms.unshift([d.room, nowtime]);
var msg = JSON.stringify(rooms);
localStorage.setItem(C_Player.playerid, msg);
var l = d.turn[1];
d.re[l] = d.re[l] || [];
var l1 = d.re[l].length;//d.re[l][l1]=[nowtime,mode,_msg,replay0];rep[l]=hand;
var ban = 0;
for (var i = 0; i < l1; i++) {
if (d.re[l][i][1] == 0 && d.re[l][i][3] != undefined && String(d.re[l][i][3]).length > 0) {
var rep_num = d.re[l][i][3];
if (d.reps && d.reps[rep_num] && d.reps[rep_num].length > 0 && d.re[l][i][2]) {
d.re[l][i][2].hand = d.c(d.reps[rep_num]);
if (d.reps[rep_num].length == 4 && d.reps[rep_num][0] && d.reps[rep_num][1] && d.reps[rep_num][2] && d.reps[rep_num][3]) {
ban = 1;
}
if (ban == 0) {
var arr0 = d.c(d.reps[d.re[l][0][3]]);
for (var k = 0; k < 10; k++) {
if (d.re[l][k] && d.reps[d.re[l][k][3]] && d.reps[d.re[l][k][3]][0] && d.reps[d.re[l][k][3]][1] && d.reps[d.re[l][k][3]][2] && d.reps[d.re[l][k][3]][3]) {
arr0 = d.c(d.reps[d.re[l][k][3]]);
break;
}
}
for (var j = 0; j < 4; j++) {
if (!d.re[l][i][2].hand[j] && arr0 && arr0[j]) {
d.re[l][i][2].hand[j] = d.c(arr0[j]);
ban = 1;
}
}
}
}
if (d.p != undefined && d.p[rep_num] && String(d.p[rep_num]).length > 0) {
d.re[l][i][2].p = d.p[rep_num];
}
}
}
d.re = d.re || [];
var msg = JSON.stringify(d.re);
try {
localStorage.setItem(C_Player.playerid + "t" + nowtime, msg);
} catch (oException) {
if (oException.name == 'QuotaExceededError') {
localStorage.clear();
// var msg1=localStorage.getItem(C_Player.playerid);
// var rooms=rooms || [];
// if(msg1)
// {var rooms=JSON.parse(msg1);
// {
// for(var i=0;i<rooms.length;i++)
// {var playerid=rooms[i][0][4];
// var nowtime=rooms[i][1];
// localStorage.removeItem(playerid+"t"+nowtime);
// rooms.pop();
// }
// }
// }
// else
// {}
Logic.saveShortCode("");
localStorage.setItem(C_Player.playerid + "t" + nowtime, msg);
}
}
var msg = localStorage.getItem(C_Player.playerid + "back");
if (msg) {
localStorage.removeItem(C_Player.playerid + "back");
}
}
}
d.replay_start = function (roompos, turn) {
d.h4 = turn;
if (turn > 0) {
d.ini();
}
var msg = localStorage.getItem(C_Player.playerid);
if (msg) {
var rooms = JSON.parse(msg);
}
else {
return;
}
d.ini_start();
var nowtime = rooms[roompos][1];
var js = ifast_tojson(d.h[d.h3].gameinfo1)
var makewartime=js.page0[0];
if(nowtime!=makewartime)
{var get_roompos=0;
for (var i = 0; i < rooms.length; i++) {
var nowtime1 = rooms[i][1];
if(nowtime1==makewartime)
{roompos=i;
get_roompos=1;
break;
}
}
if(get_roompos==0)
{Utl.openTips("录像不完整或已过期", 3500);//清空所有录像
return;
}
nowtime=makewartime;
}
var msg = localStorage.getItem(C_Player.playerid + "t" + nowtime);
if (msg) {
d.re = JSON.parse(msg);
}
else {Utl.openTips("录像不完整或已过期", 3500);//清空所有录像
return;
}
d.turn[1]=turn;
d.room = rooms[roompos][0];
C_Player.seat = d.room[0];
C_Player.sex = C_Player.sex || 1;
Desk.roomcode = d.room[1];
Desk.count = d.room[2];
var ids = [1517, 1524, 1531, 1550];
var roomtype = JSON.parse(d.h[roompos].roomtype);
d.roomtype = d.c(roomtype);
Desk.roomtype = d.c(roomtype);
d.a.help_re(roomtype);
d.roomtype = d.c(roomtype);
d.a.share();
var persons = [4, 4, 3, 2];
var person = persons[Desk.roomtype[6]] || 4;
for (var j = 0; j <person ; j++) {
Desk.PlayerList[j].sex = Desk.PlayerList[j].sex || 1;
if (Desk.PlayerList[j].playerid == undefined || Desk.PlayerList[j].playerid == -1 || Desk.PlayerList[j].playerid == "") {
Desk.PlayerList[j].playerid = parseInt(get_self(ids[j], 7));
Desk.PlayerList[j].avatar = "assets/bmp/00" + String(116 + j) + ".png";
Desk.PlayerList[j].nickname = get_self(1576 + j, 7);
}
}
GameUI.MainScene(true);
for (var i = 0; i < 4; i++) {
set_self(150 + i, 37, 0, 0, 0);
}
set_self(107, 37, 0, 0, 0);
d.set_png_pos(C_Player.seat);
d.set_png_pos_un(C_Player.seat);
d.turn[2] = d.room[3];
d.replay = 1;
d.speed = 1;
set_self(1288, 43, 1, 0, 0);
d.re_timer = [];
if (d.re[turn]) {
var nowtime = d.re[turn][0][0];
//var t0=nowtime;
for (var i = 0; i < d.re[turn].length; i++) {
if (d.re[turn][i] && d.re[turn][i][1] == 0) {
var t = d.re[turn][i][0] - nowtime;
// var max_t=20;
// if(i==0)
// {max_t=24;}
// if(d.re[turn][i][0]-t0>max_t*1000;)
// {t=t0+max_t*1000;}
// t0=d.re[turn][i][0];
d.re_timer[i] = setTimeout(d.replay_ReceiveData, t, d.re[turn][i][2]);
}
else if (d.re[turn][i] && d.re[turn][i][1] == 1) {
var t = d.re[turn][i][0] - nowtime;
d.re_timer[i] = setTimeout(d.replay_click, t, d.re[turn][i][2]);
}
else if (d.re[turn][i] && d.re[turn][i][1] == 2) {
var t = d.re[turn][i][0] - nowtime;
Desk.stage = 1;
d.re_timer[i] = setTimeout(d.show_xiao_settle, t, 1);
}
}
}
set_self(1906, 37, 1, 0, 0);
set_self(1288, 37, 1, 0, 0);
}
d.replay_speed = function (speed) {
if (speed == 0) {
d.h4 = -1;
for (var i = 0; i < d.re_timer.length; i++) {
clearTimeout(d.re_timer[i]);
}
}
else if (speed > 0) {
var turn = d.h4;
var nowtime = d.re[turn][0][0];
var l_start = d.re[turn].length - d.re_timer.length;
if (l_start > 0) {
nowtime = d.re[turn][l_start - 1][0];
}
for (var i = 0; i < d.re_timer.length; i++) {
clearTimeout(d.re_timer[i]);
}
for (var i = l_start; i < d.re[turn].length; i++) {
var n = i - l_start;
if (d.re[turn][i] && d.re[turn][i][1] == 0) {
var t = d.re[turn][i][0] - nowtime;
d.speed = speed;
t = parseInt(t / d.speed);
d.re_timer[n] = setTimeout(d.replay_ReceiveData, t, d.re[turn][i][2]);
}
else if (d.re[turn][i] && d.re[turn][i][1] == 1) {
var t = d.re[turn][i][0] - nowtime;
d.speed = speed;
t = parseInt(t / d.speed);
d.re_timer[n] = setTimeout(d.replay_click, t, d.re[turn][i][2]);
}
else if (d.re[turn][i] && d.re[turn][i][1] == 2) {
var t = d.re[turn][i][0] - nowtime;
d.speed = speed;
t = parseInt(t / d.speed);
Desk.stage = 1;
d.re_timer[n] = setTimeout(d.show_xiao_settle, t, 1);
}
}
}
}

View File

@@ -0,0 +1,49 @@
d.bet_sound = function (sound) {
var sound = d.c(sound);
var sound_num = sound[1];
var seat = sound[0];
if (sound_num != undefined && String(sound_num).length > 0 && sound_num > -1) {
//if(seat!=C_Player.seat || seat==C_Player.seat && sound_num==101)
{
sound_num = parseInt(sound_num);
// var t = new Date().getTime() + d.time_dif;
// var t0 = sound[2];
// if (t - t0 > 8 * 1000 && d.replay == 0) {
// return;
// }
//d.wav[0]=22;//发出声音的最大时间=0之后播其他声音以免2个声音同时播
var sex = Desk.PlayerList[seat].sex || 1;//1男2女
if(sex==0){
sex=2;
}
if (sound_num < 60) {
var sid = 60 + (sex - 1) * 60 + sound_num;
}
else {
var sid = 50 + (sex - 1) * 60 + (sound_num - 100);
}
if (sound_num == 38) {
var sid = (sex - 1) * 10 + sound_num;
}
var tou = "00";
if (String(sid).length == 2) {
tou = "000";
}
else if (String(sid).length == 3) {
tou = "00";
}
if (!sid) {
return;
}
if(Utl.ReadData(Utl.Config.sound)==1){
GameData.isRecord=false;
//play_wav(tou + sid + ".mp3");
Utl.playSound(tou + sid + ".mp3");
}
}
}
}

View File

@@ -0,0 +1,68 @@
//示例:用户选择飘玩法
//显示飘按钮
d.show_piao=function()
{var persons=[4,4,3,2];
var person=persons[Desk.roomtype[6]] || 4;
for(var i=0;i<person;i++)
{
if(d.piao[i]>0)
{set_self(1827+d.pos[i],37,1,0,0);
set_self(1827+d.pos[i],43,d.piao[i]-1+9,0,0);
}
else
{set_self(1827+d.pos[i],37,0,0,0);}
}
}
//飘
d.click_piao=function (spid_up)
{var send={"app":"youle","route":d.route,"rpc":"piao","data":{"agentid":GameData.AgentId,"gameid":GameData.GameId,"playerid":C_Player.playerid,"roomcode":Desk.roomcode,"seat":C_Player.seat,"piao":spid_up-1774}};
Net.ws_tcp.send(JSON.stringify(send));
set_group(238,37,0,0,0);
}
//显示飘动画
d.set_show_piao_pos=function (seat,f)
{var show_spids=[1780,1781,1782,1783];
var persons=[4,4,3,2];
var person=persons[Desk.roomtype[6]] || 4;
var n=0,n1=0;
for(var i=0;i<4;i++)
{
if(get_self(show_spids[i],37,0,0,0)==1)
{n+=1;}
}
var show_spid=show_spids[d.pos[seat]];d.piao_time[d.pos[seat]]=6;
set_self(show_spid,37,1,0,0);
//var f1=[18,13,14,15,16,17];
set_self(show_spid,43,20,0,0);
for(var i=0;i<4;i++)
{
if(get_self(show_spids[i],37,0,0,0)==1)
{n1+=1;}
}
if(n==person-1 && n1==person)
{
d.a.help_txt();
}
}
//显示起手动画
d.set_show_qishou_pos=function ()
{var show_spids=[1784,1791,1798,1805];
var show_ban=0;
for(var j=0;j<4;j++)
{var n=0;
for(var i=0;i<7;i++)
{
if(d.start_hu[j][i]>0)
{var show_spid=show_spids[d.pos[j]]+n;
set_self(show_spid,37,1,0,0);
set_self(show_spid,43,i+1,0,0);
n+=1;
show_ban=1;
}
}
}
if(show_ban==1)
{d.qishou_time=25;}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,328 @@
var gameabc_face = gameabc_face || {};
{
gameabc_face.tag = 12; //定义你的游戏全局内存
gameabc_face.tag1 = 123;//定义你的游戏全局内存
gameabc_face.tag2 = 123;//定义你的游戏全局内存
gameabc_face.tag3 = 123;//定义你的游戏全局内存
gameabc_face.dfwgao = 1;
}
gameabc_face.gamestart = function (gameid) {
jQuery.getScript("http://pv.sohu.com/cityjson?ie=utf-8", function () {
var data = returnCitySN;
gameabc_face.ip = data.cip;
C_Player.ip = gameabc_face.ip;
});
//游戏初始化代码
// var arr0=[1,2,3,11,11,11,12,12,16,16,16,23,33];
// var arrs=[[1,2,3,11,11,11,12,12,16,16,16,23,33]];
// alert(JING_zhen_hu(arr0,23,arrs));
Logic.AppStart();
set_self(800, 57, 1000, 0, 0);
set_self(801, 57, 100, 0, 0);
set_self(802, 57, 150, 0, 0);
set_self(803, 57, 300, 0, 0);
set_self(804, 57, 35, 0, 0);
set_self(805, 57, 600, 0, 0);
set_self(3124, 41, 0, 0, 0);
set_self(694,19,216,0,0);
set_self(43,19,220,0,0);
set_self(695,19,326,0,0);
set_self(44,19,331,0,0);
set_self(356,18,-300,0,0);
set_self(357,18,-300,0,0);
set_self(387,19,435,0,0);
set_self(388,19,437,0,0);
set_self(515,19,346,0,0);
set_self(183,19,440,0,0);
set_self(569,19,510,0,0); //设置声音,语音等位置
logmessage("麻将", 2);
if(get_self(184, 37)){
set_self(184, 18, -500);
set_self(184, 19, -500);
}
app.runmouse("gamestart", gameid);
Game_Modify.sb_Init();
};
gameabc_face.ani_doend = function (id, sx, count, allend) {
//logmessage(id+"/"+sx+"/"+count+"/"+allend);
//play_ani(0,2,18,50,200,0,1000,0,0,0,0,6000,1);//主动关闭
GameUI.utlani_doend(id, sx, count, allend);
gameCombat.utlani_doend(id, sx, count, allend);
d.put_card_doend(id, sx, allend);
d.act_pai_doend(id, sx, allend);
d.show_light_horse_doend(id, sx, allend);
app.runmouse("ani_doend", id, sx, count, allend);
};
gameabc_face.box_doend = function (id, sx, timelen) {
//play_box 结束事件
//showmessage("box_doend:"+id+"/"+sx+"/"+timelen);
//logmessage("box_doend:"+id+"/"+sx+"/"+timelen);
app.runmouse("box_doend", id, sx, timelen);
};
gameabc_face.onloadurl = function (recid, rectype, url, error, count, len) {
//修改为gameabc_face.onloadurl 则自己处理图片加载进度
//资源加载完成函数
//recid:资源id
//rectype:1 图片 2声音
//url :网络地址
//error:是否加载错误
//len:资源大小
//count加载的个数百分比
//logmessage("onload:"+recid+"/"+rectype+"/"+count+"/"+error);
GameUI.onloadurl(recid, rectype, url, error, count, len);
app.runmouse("onloadurl1", recid, rectype, url, error, count, len);
/*
if (rectype==0)
{
open_load("","1.mp3","");
gameabc_face.randombase=0;//使用系统浏览器缓存
}
if (count==100)
{
game_close_zsmsg("");
} else
{
game_open_zsmsg(count+"%"+" 加载中...");
};
*/
};
gameabc_face.chongzhi = function (userid, zt, data) {
//游戏接口代码
app.runmouse("chongzhi", userid, zt, data);
};
gameabc_face.onresize = function (pmw/*屏幕宽*/, pmh/*屏幕宽*/, sjweww/*设计宽*/, sjnewh/*设计宽*/, nweww/*显示宽*/, newh/*显示高*/) {
//屏幕变化
// 在此调整 列表控件的宽高和区域 不是整体缩放
//logmessage("onresize:"+pmw+"/"+pmh+"/"+sjweww+"/"+sjnewh+"/"+nweww+"/"+newh);
app.runmouse("onresize", pmw/*屏幕宽*/, pmh/*屏幕宽*/, sjweww/*设计宽*/, sjnewh/*设计宽*/, nweww/*显示宽*/, newh/*显示高*/);
};
gameabc_face.gamebegindraw = function (gameid, spid, times, timelong) {
//更新开始代码
GameUI.utlgamebegindraw(gameid, spid, times, timelong);
app.runmouse("gamebegindraw", gameid, spid, times, timelong);
};
gameabc_face.gameenddraw = function (gameid, spid, times, timelong) {
//更新完成代码
GameUI.gameenddraw(gameid, spid, times, timelong);
app.runmouse("gameenddraw", gameid, spid, times, timelong);
};
gameabc_face.mousedown = function (gameid, spid, downx, downy, no1, no2, no3, no4, no5, no6) {
//点击代码
GameUI.utlmousedown(gameid, spid, downx, downy, no1, no2, no3, no4, no5, no6);
Game_Modify.utlmousedown(gameid, spid, downx, downy, no1, no2, no3, no4, no5, no6);
gameCombat.utlmousedown(gameid, spid, downx, downy, no1, no2, no3, no4, no5, no6);
app.runmouse("mousedown", gameid, spid, downx, downy, no1, no2, no3, no4, no5, no6);
console.log("mousedown="+d.last_id+","+spid);
if(spid < 936 || spid > 954 || spid >= 936 && spid <= 954 && get_self(spid, 21, 0, 0, 0) < 120)
{d.last_id=0;}
if(RoomFunc.Overtime_chupai()&&d.last_id==0 && d.replay==0 && Desk.stage>0 && d.final_hu[0]==-1&&d.gang_option==0)
{
if (d.status == 2 && d.click_ban == 1 && spid >= 936 && spid <= 954 && get_self(spid, 21, 0, 0, 0) > 120 && d.gang_option == 0 && d.get_hua() == 0&&d.gang_option==0) {// d.user_ctrl[2] == C_Player.seat &&
d.click_chu(spid);
}
}
if(get_self(2233,43) == 1) {
if(spid < 936 || spid > 954 || spid >= 936 && spid <= 954 && get_self(spid, 21, 0, 0, 0) < 120)
{d.last_id=0;}
if(RoomFunc.Overtime_chupai()&&d.last_id==0 && d.replay==0 && Desk.stage>0 && d.final_hu[0]==-1&&d.gang_option==0)
{
if (d.status == 2 && d.click_ban == 1 && spid >= 936 && spid <= 954 && get_self(spid, 21, 0, 0, 0) > 120 && d.gang_option == 0 && d.get_hua() == 0&&d.gang_option==0) {// d.user_ctrl[2] == C_Player.seat &&
d.click_chu(spid);
}
}
}
if (spid == 149 && d.replay != 1) {
for (var i = 0; i < 19; i++) {
if (get_self(936 + i, 21, 0, 0, 0) > 120) {
set_self(936 + i, 19, 585, 0, 0);
}
}d.click_id=0;d.zhenshu=0;
}
app.runmouse("mousedown", gameid, spid, downx, downy, no1, no2, no3, no4, no5, no6);
};
gameabc_face.mousedown_nomove = function (gameid, spid, downx, downy, timelong, no1, no2, no3, no4, no5) {
//点击代没移动代码
GameUI.utlmousedown_nomove(gameid, spid, downx, downy, timelong, no1, no2, no3, no4, no5);
Game_Modify.utlmousedown_nomove(gameid, spid, downx, downy, timelong, no1, no2, no3, no4, no5);
app.runmouse("mousedown_nomove", gameid, spid, downx, downy, timelong, no1, no2, no3, no4, no5);
};
gameabc_face.mouseup = function (gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2) {
//点击弹起代码
//可以通过spid_down和spid_up 的比较 来判断是 点击还是 移动
if (spid_down==spid_up&&spid_up==245){
if (get_self(361,37)==1&&get_self(361,7)=="解散房间不扣房卡,是否解散?") {
d.free_room();
}
}
if(spid_down == 25 && get_self(2061,43) == 1 && Utl.getIsInfinite() == 0 && (!C_Player.addr || C_Player.addr && !C_Player.addr.address)) {
if(Utl.getH5Version()) {
Utl.openTips("网页版暂不支持创建定位房", 3500);
}else{
Func.startlocation(2);
GameUI.OpenTips("请开启定位后重新创建此房间", 0);
}
return;
}
if (RoomFunc.Overtime_chupai()&&spid_down==spid_up&& spid_down >= 936 && spid_down <= 954 && get_self(spid_down, 21, 0, 0, 0) > 120&&d.gang_option==0) {
d.click_chu(spid_down);
}
if((RoomFunc.Overtime_chupai() || get_self(spid_down, 19, 0, 0, 0)<565) && (spid_down!=spid_up || d.last_id>0)&&!get_self(1143,37)&&d.gang_option==0)
{d.click_chu_down(spid_down,spid_up);console.log("gameabc_face.mouseup="+d.last_id+","+spid_down+","+spid_up);
return;
}
if (d.replay == 1) {
if (spid_down >= 256 && spid_down <= 259) {
return;
}
if (spid_down >= 376 && spid_down <= 379) {
return;
}
}
if (spid_up == 183) {
if(d.a.share)
{d.a.share();}
}
if (spid_up == 181 && Utl.getIsInfinite() == 1) {
spid_down = 233;
spid_up = 233;
}
// if(spid_up==80 || GameData.hallConfig.worldRoomList)
// {GameData.hallConfig.worldRoomList=false;}
GameUI.utlmouseup(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2);
Game_Modify.mouseup(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2);
gameCombat.utlmouseup(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2);
d.a.move_up(spid_down);
if(spid_up!=spid_down){return;}
d.click(spid_up, upx, upy, downx, downy, spid_down);
app.runmouse("mouseup", gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2);
};
gameabc_face.mousemove = function (gameid, spid, downx, downy, movex, movey, timelong, offmovex, offmovey, no1) {
//点击后移动代码
//set_self(spid,18,offmovex,1,0);
//set_self(spid,19,offmovey,1,0);
GameUI.utlmousemove(gameid, spid, downx, downy, movex, movey, timelong, offmovex, offmovey, no1);
Game_Modify.utlmousemove(gameid, spid, downx, downy, movex, movey, timelong, offmovex, offmovey, no1);
gameCombat.utlmousemove(gameid, spid, downx, downy, movex, movey, timelong, offmovex, offmovey, no1);
d.set_click_chu(spid,movex,movey);
d.a.move(spid, offmovey);
d.move_hu(spid, offmovex, offmovey);
d.move_chu(spid, offmovey, offmovex);
app.runmouse("mousemove", gameid, spid, downx, downy, movex, movey, timelong, offmovex, offmovey, no1);
};
gameabc_face.gamemydraw = function (gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7) {
//每个精灵更新绘画代码
GameUI.utlgamemydraw(gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7);
Game_Modify.gamemydraw(gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7);
gameCombat.utlgamemydraw(gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7);
d.gamemydraw(spid);
app.runmouse("gamemydraw", gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7);
};
gameabc_face.gamemydrawbegin = function (gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7) {
//每个精灵更新前绘画代码
GameUI.utlgamemydrawbegin(gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7);
Game_Modify.utlgamemydrawbegin(gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7);
gameCombat.utlgamemydrawbegin(gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7);
for (var i = 0; i < 4; i++) {
if (get_self(spid, 44, 0, 0, 0) == 233 + i) {
set_clip(0, 0, 180, get_self(1706 + 5 * i, 19, 0, 0, 0), 1062, 36);
}
}
if (get_self(spid, 44, 0, 0, 0) == 223) {
set_clip(0, 0, 0, get_self(1453, 19, 0, 0, 0), 1280, get_self(1453, 21, 0, 0, 0));
}
if (get_self(spid, 44, 0, 0, 0) == 215) {
set_clip(0, 0, 0, get_self(1570, 19, 0, 0, 0) + 36, 1280, 520);
}
if (get_self(spid, 44, 0, 0, 0) == 217) {
set_clip(0, 0, 0, get_self(1665, 19, 0, 0, 0) + 36, 1280, get_self(1341, 19) - get_self(1665, 19) - get_self(1665, 21));
}
app.runmouse("gamemydrawbegin", gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7);
};
gameabc_face.ontimer = function (gameid, spid, /* 本次间隔多少次了 */ times, /* 本次间隔多久 */ timelong, /* 开启后运行多少次了 */ alltimes) {
/*请在下面输入您的代码
*/
//set_self(1,18,5,1,0);
GameUI.utlontimer(gameid, spid, /* 本次间隔多少次了 */ times, /* 本次间隔多久 */ timelong, /* 开启后运行多少次了 */ alltimes);
d.sieve_flash(spid);
d.show_13card_flash(spid);
d.show_chi_peng_act(spid);
d.show_horse_flash(spid);
d.show_time_flash(spid);
if (spid == 291 && get_self(149, 37) && Game_Modify.roomDes && Game_Modify.roomDes.length > 0 && !get_self(1157,37) ) {
GameUI.openRoomInfo();
set_self(291, 57, 0, 0, 0);
if (Utl.getIsInfinite() == 1) {
GameUI.openRoomInfo();
set_self(110, 7, "系统房");
set_self(512, 37, 0, 0, 0);
var h = get_self(109, 21);
set_self(109, 21, h);
}
}
app.runmouse("ontimer", gameid, spid, /* 本次间隔多少次了 */ times, /* 本次间隔多久 */ timelong, /* 开启后运行多少次了 */ alltimes);
};
gameabc_face.tcpconnected = function (tcpid) {
/*
ifast_tcp_open(1,"127.0.0.1:5414");//连接ws tcp
*/
//logmessage("tcpopen:"+tcpid);
//Logic.tcpconnected(tcpid);
app.runmouse("tcpconnected", tcpid);
};
gameabc_face.tcpmessage = function (tcpid, data) {
//logmessage("tcpread:"+data);
//Net._ReceiveData(data);
//Net_nn.TcpMessage(tcpid,data);
app.runmouse("tcpmessage", tcpid, data);
};
gameabc_face.tcpdisconnected = function (tcpid) {
//logmessage("tcpclose:"+tcpid);
//Logic.DisConnect();
app.runmouse("tcpdisconnected", tcpid);
};
gameabc_face.tcperror = function (tcpid, data) {
//logmessage("tcperror:"+tcpid);
app.runmouse("tcperror", tcpid, data);
};
gameabc_face.httpmessage = function (myid, url, data) {
/*
ifast_http(1,"web/test.txt",1);//获取文件 同域
*/
//logmessage("httpread:"+myid+"/"+url+":"+data);
app.runmouse("httpread", myid, url, data);
};

View File

@@ -0,0 +1 @@
//精灵事件单元...

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,25 @@
//牌
d.jing=[];
d.jing_reduce=0;//还原
d.poker=[];//牌墙
d.pai_num=0;//牌墙
d.hand=[];//各家手牌
d.hand_arrow=[];
d.hu_card=[0,0,0,0];
d.start_hu_card=[[0],[0],[0],[0]];//起手胡的牌
d.sea=[];//牌池
d.sea_hua=[];//花牌池
d.hua_pai=[0,0,0,0];//各家花牌的数量
d.ag=[];//已经亮的暗杠的牌值
d.card_14=0;
d.card_14_pos=0;//摸的牌的位置
d.jishi_chu=0;
d.last_id=0;//移入牌id
d.click_ids=[];
//d.dianjitime=0;
d.ctrl_ting=-2;
d.clicks_an=0;
d.ting_pai = [];//客户端听得牌

View File

@@ -0,0 +1,50 @@
//结算
d.h={};
d.page = 0;
d.h3=-1;//查哪大局的牌
d.h4=-1;//哪小局的回放
d.info2=0;
d.buyHorse=[[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0]];//各家买马
d.winHorse=[[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]];//各家买马
d.Horse_vic_def=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]];
d.contract=[[0,0,0],[0,0,0],[0,0,0],[0,0,0]];//承包了谁
d.start_hu=[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]];//长沙起手胡
d.final_hu=[-1,0,[0]];//最终胡:座位、胡的牌、胡的类型
d.many_hu=[[-1,0,[0]],[-1,0,[0]]];//多响:座位、胡的牌、胡的类型
d.final_hu1=[-1,[0,0],-1];//最终胡:座位、胡的牌、胡的类型
d.many_hu1=[[-1,[0,0],-1],[-1,[0,0],-1]];//多响:座位、胡的牌、胡的类型
d.hu_ready=[0];
d.peng_chi_num=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]];//被每个座位碰吃杠的次数
d.hu_note=[-1,-1,-1,-1,-1,[-1,-1,-1,-1],[-1,-1,[]],[-1,-1,-1,-1],-1,-1,-1,-1];//0点炮自摸胡,1平假胡,2天地胡流局,3杠花,4抄,5海底,6杠炮,7抢杠胡,8地杠,9剩15张点炮全包,10抢杠包,11杠尾
d.hu_note_gang=[[0,0,0,0,0,0],[0,0,0,0,0,0],[0,0,0,0,0,0],[0,0,0,0,0,0]];//明杠、自摸杠、暗杠、点杠、被加杠、被暗杠
d.hu_note_gang_jing=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]];//明精杠、暗精杠、被明精杠、被暗精杠
d.putJing=[0,0,0,0];//是否博精
d.bar_roll=[0];//特殊杠摇
d.put_tail_poker=[0];//是否出掉尾牌
d.tail_poker_hu=[-1,0,[-1,-1,-1,-1],0,[-1,-1,-1,-1]];//胡牌0,[胡牌座位],胡牌1,[胡牌座位]
d.tail_poker=[-1,-1,-1,-1,-1,-1,-1,-1,-1];//0尾牌的位置,1杠补牌1的位置,2杠补牌2的位置,3杠补牌1,4杠补牌2,5筛子1,6筛子2,7补张/杠,8座位
d.tail_ctrl=[0];//尾牌动画控制
d.an_gang_num=[0,0,0,0];//暗杠数量
d.piao=[-1,-1,-1,-1];
d.act_piao=[-1,-1,0,[-1],-1];
d.piao_time=[0,0,0,0];
d.qishou_time=0;
d.makewartime=0;//开战时间
//回放
d.nowtime=0;
d.replay=0;
d.replay_re=0;
d.speed=1;
d.room=[];
d.re=[];
d.re_timer=[];
d.pai14=0;
d.pai15=0;
d.wartime=0;
d.reps=[];
d.p=[];

View File

@@ -0,0 +1,69 @@
//控制
var cd_con=[0,0,0,0,0,0,0,0,0,0,0,0,0];//0筛子,1:13张牌,2-6回合间隔动画,8、9、10发牌动画,11加注倒计时,12发牌动画
d.clear_replay=0;
d.chu_cilck=0;
d.chu_move=0;
d.user_ctrl=[0,-1,-1,-1,0,0,0,0,0,-1,0,0,0];//控制权交接时的时间,上次控制权,当前控制权,第14张牌/新摸的牌跟注数,4-8是否已加注
d.status=0;//第几回合
d.user_eat_bump=[[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0]];//杠碰吃、自摸杠暗杠、胡听
d.throw_card=0;
d.lastbar=[-1,0];//上个操作是否是杠,谁的
d.last_operate=[-1,0,-1];
d.click_ban=0;//是否可以点击出牌
d.click_id=0;//点击出的牌的精灵id
d.gang_option=0;//是否出现杠选项
d.peng_option=0;//是否出现碰选项
d.gang_flame=[];
d.peng_flame=[];
d.ting_status=[0,0,0,0];//是否听牌状态
d.Ting_ui=[];//是否听牌状态
d.Ting_Tip = [];//是否听牌状态
d.ctrl=0;//控制权是否有变动
d.continue_hu=0;
//动画控制
d.act=[-1,-1,0,[-1],-1];//字的动画[1 put\2peng\3chi\4gang\5hu ,seat,计时,上个操作的牌池]
d.act_pai=[-1,-1,0,-1,-1];//牌的动画[1 put\2peng\3chi\4gang\5hu ,本次操作的座位,上个操作的牌,上个操作的牌池,自摸杠的座位]
d.act_put=[0,0,0,0,0,0];//0目标x,1目标y,出牌 2spid
d.show_chipeng=[0,0,0,0];//吃碰文字
d.act_chao_host=[0,0];//抄庄&烂庄,倒计时
d.tail_show_id=[0,0];
d.operate_time=0;//纠正计时器
d.put_time=0;//纠正计时器
d.jing_time=0;//纠正计时器
d.sieve_time=0;
d.show_jing_time=0;//显示上精计时器
d.bw_flash=0;
d.compare_jing=0;//比精0结束1开始
d.compare_jing_time1=0;//回头比精计时器
d.compare_jing_time2=0;//上下翻比精计时器
d.compare_jing_time3=0;//结束比精计时器
d.click_sieves=0;//庄家掷骰子选人选牌蹲专用
d.sieves_time=0;//掷骰子计时器
d.sieves=[0,0,0,-1,0];//0,1骰子2掷骰子模式3 掷骰子的人4掷骰子次数
d.sieve=[0,0];//0,1筛子
d.horse_time=0;//马计时器
d.dong35=0;//方向明暗
d.head35=0;//头像明暗
d.move_hu_l=[0,0,0,0];//胡牌说明的长度
d.flash_ban=0;
d.operate_show_con=0;//控制显示操作按钮的时机
d.user_ctrl0=0;//客户端时间

View File

@@ -0,0 +1,14 @@
d.Time_Quick=70;//快版出牌时间
d.Time_playcard=60;//无限发电不打牌时间
d.Time_initial=160;//初始打牌时间
//player
d.wav=[0];
d.pos=[];//用户ID与显示图片的对应关系
d.pos_un=[];
d.host=-1;//哪个位置是庄
d.turn_direction=[-1];//各个位置上哪个是:庄、东西南北、有人
d.identity=[-1,-1,-1,-1,-1];//各个位置上哪个是:庄、东西南北、有人
d.point=[];
d.user_point=[0,0,0,0];//各用户累积分数
d.turn_point=[];//每局分数

View File

@@ -0,0 +1,10 @@
//重连
d.recon=0;
d.recon1=0;
d.join=0;
d.other_join=-1;
d.backstage=0;
d.time_dif=0;
d.local_time=0;
d.player_offline=[-1,-1,-1,-1];

View File

@@ -0,0 +1,344 @@
var d = {};
d.a = {};
//room
d.agree = [-1, -1, -1, -1];
d.exit = -1;
d.turn = [0, 0, 0];//0当前回合1每局间隔控制 2服务器回合
d.rep = [0, 0, 0];//回放
d.roomcode = 0;
d.roomtype = [];
d.addr = [];
d.ip = [];
d.re_distanse = 0;
d.ip = [];
d.route="jinxianmj";
d.ini_start = function (show_menu) {
show_menu=show_menu || 0;
//初始化房间内存
d.debug_timer = 0;
d.agree = [-1, -1, -1, -1];
d.exit = -1;
d.qishou_time = 0;
d.turn = [0, 0, 0];//0小局1每局间隔控制 2大局
d.rep = [0, 0, 0];//回放
d.reps = [];
d.p = [];
d.roomcode = 0;
d.recon=0;
// d.join=0;
// d.other_join=-1;
d.backstage = 0;
d.wav = 0;
d.time_dif = 0;
d.local_time = 0;
d.player_offline = [-1, -1, -1, -1, -1];
d.wav = [];
d.pos = [];//用户ID与显示图片的对应关系 逆时针
d.pos_un = [];
d.status = 0;//第几回合
d.user_point = [0, 0, 0, 0, 0];//各用户累积分数
d.addr = [];
d.ip = [];
d.roomtype = [];
d.ini(show_menu);
if(show_menu!=2)
{d.re = [];}
d.wartime = 0;
d.re_distanse = 0;
d.statis = [];
for (var i = 0; i < 4; i++) {
d.statis[i] = [0, 0, 0, 0, 0,0];
}
d.continue_hu=0;
}
d.ini = function (show_menu) {
show_menu = show_menu || 0;
ClickBtn=ClickBtn.concat([2509, 2510, 1159, 2998, 1403,1408,810,2999 ]);
//初始化房间
d.set_zt = 0;
d.N = 0 ;
d.M = 0 ;
d.quan = 0;
d.waiq = 0;
d.user_ctrl0=0;//客户端时间
//初始化用户
d.host = -1;//哪个位置是庄
d.turn_point[d.turn[1]] = [];//每局分数
d.turn_direction = [-1];//各个位置上哪个是:庄、东西南北、有人
d.identity = [-1, -1, -1, -1, -1];//各个位置上哪个是庄1、小盲2、大盲3、有人0
d.music=0;//背景音乐
Game_Config.soundList.MainSceneMusic = "00177.mp3";//正常播放音效
//初始化控制
d.clicks_an=0;
d.ting_pai = [];//客户端听得牌
d.ting_statu=0;
set_self(2233,43,1,0,0);
d.p_card = 0;
d.wos = 0;
d.put_card = 0;
d.ctrl_ting=-2;
d.chu_cilck = 0;
d.zhenshu=0;
d.chu_move = 0;
d.click_id = 0;
d.operate_time = 0;//纠正计时器
d.put_time = 0;//纠正计时器
d.jing_time = 0;//纠正计时器
d.sieve_time = 0;
d.tail_show_id = [0, 0];
cd_con = [0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0];//0理牌动画1-6回合间隔动画,8、9、10发牌动画,11加注倒计时,12发牌动画
d.user_ctrl = [0, -1, -1, -1, 0, 0, 0, 0, 0, -1, 0, 0, 0];//控制权交接时的时间,上次控制权,当前控制权,第14张牌/新摸的牌跟注数,4-8是否已加注
d.user_eat_bump = [[0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0]];
;//杠碰吃、自摸杠暗杠、胡听
d.lastbar = [-1, 0];//上个操作是否是杠,谁的
d.last_operate = [-1, 0, -1];//什么操作,操作相关,座位
d.click_ban = 0;
d.gang_option = 0;//是否出现杠选项
d.peng_option = 0;//是否出现碰选项
d.gang_flame = [];
d.peng_flame = [];
d.ting_status = [0, 0, 0, 0];//是否听牌状态
d.Ting_ui = [];//是否听牌状态
d.Ting_Tip = [];//是否听牌状态
d.tips_tp = 0;//胡的牌
d.OverTime = 0;
d.jishi_chu=0;
d.KnownCard = [];
//动画控制
d.act = [-1, -1, 0, [-1], -1];//字的动画[1 put\2peng\3chi\4gang\5hu ,seat,计时,上个操作的牌池]
d.act_pai = [-1, -1, 0, -1, -1];//牌的动画[1 put\2peng\3chi\4gang\5hu ,本次操作的座位,上个操作的牌,上个操作的牌池,自摸杠的座位]
d.act_put = [0, 0, 0, 0, 0, 0];//0目标x,1目标y,出牌 2spid
d.piao = [-1, -1, -1, -1];
d.act_piao = [-1, -1, 0, [-1], -1];
d.piao_time = [0, 0, 0, 0];
d.show_chipeng = [0, 0, 0, 0];//吃碰文字
d.act_chao_host = [0, 0];//抄庄&烂庄
d.horse_time = 0;//马计时器
d.dong35 = 0;//方向明暗
d.head35 = 0;//头像明暗
d.move_hu_l = [0, 0, 0, 0];//胡牌说明的长度
d.flash_ban = 0;
d.operate_show_con=0;//控制显示操作按钮的时机
//初始化牌
d.robot = [];//机器人
d.robot_chu = 0;//机器人可出牌
d.showcard_before=0;//选精之前牌不显示
d.click_sieves=0;//庄家掷骰子选人选牌蹲专用
d.sieves_time=0;//掷骰子计时器
d.getserver_time=0;//掷骰子获得服务器时间
d.sieves=[0,0,0,-1,0];//0,1骰子2掷骰子模式3 掷骰子的人4掷骰子次数
d.jing = [];//癞子
d.baoting =[];//报听
d.baoting_seat=-1;//报听人
//d.upjing = [];//上精
d.downjing = [];//下精
d.song_downjing = [];//同一首歌下精
d.last_up_jing = [];//上局的上精
d.last_down_jing = [];//上局的下精
d.show_jing_time=0;//显示上精计时器
d.bw_flash=0;
d.compare_jing=0;//比精0结束1开始
d.compare_jing_time1=0;//回头比精计时器
d.compare_jing_time2=0;//上下翻比精计时器
d.compare_jing_time3=0;//结束比精计时器
d.huscore = d.huscore || [];//胡牌分数
d.downscore = d.downscore || [];//下精分数
d.upscore = d.upscore || [];//上精分数
d.gangscore = d.gangscore || [];//杠分数
d.smilescore = d.smilescore || [];//回头分数
d.down_score = d.down_score || [];//下精分数,牌值,霸王,冲关
d.up_score = d.up_score || [];//上精分数,牌值,霸王,冲关
d.smile_score = d.smile_score || [];//回头一笑上精分数,牌值,霸王,冲关
d.smile2_score = d.smile2_score || [];//回头两笑下精分数,牌值,霸王,冲关
d.bmob_score = d.bmob_score || [];//埋雷下精分数,牌值,霸王,冲关
d.song_score = d.song_score || [];//同一首歌下精分数
d.jing_reduce = 0;//还原
d.poker = [];//牌墙
d.pai_num = 0;//牌墙
d.throw_card = 0;
d.hu_card = [0, 0, 0, 0];//是否胡牌 胡的是哪张牌
d.start_hu_card = [[0], [0], [0], [0]];//起手胡的牌
d.hand = [];//各家手牌
for (var i = 0; i < 4; i++) {
d.hand[i] = [];
d.hand[i][0] = [];
}
d.hand_arrow = [];//各家副露吃碰方向
for (var i = 0; i < 4; i++) {
d.hand_arrow[i] = [];
}
d.sea = [];
d.sea[0] = [];
d.sea[1] = [];
d.sea[2] = [];
d.sea[3] = [];//牌池
d.sea_hua = [];
d.sea_hua[0] = [];
d.sea_hua[1] = [];
d.sea_hua[2] = [];
d.sea_hua[3] = [];//牌池
d.hua_pai = [0, 0, 0, 0];//各家花牌的数量
d.ag = [];//已经亮的暗杠的牌值
for (var i = 0; i < 4; i++) {
d.ag[i] = [];
}
d.card_14 = 0;
d.card_14_pos = 0;//摸的牌的位置
d.ctrl = 0;//控制权是否有变动
d.last_id=0;//移入牌id
d.click_ids=[];
//初始化结算
d.buyHorse = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]];//各家买马
d.winHorse = [[-1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1]];//各家买马
d.Horse_vic_def = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]];
d.contract = [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]];//承包了谁
d.start_hu = [[0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0]];//长沙起手胡
d.final_hu = [-1, [0, 0], -1];//最终胡:座位、胡的牌、胡的类型
d.many_hu = [[-1, [0, 0], -1], [-1, [0, 0], -1]];//多响:座位、胡的牌、胡的类型
d.hu_ready = [0];
d.peng_chi_num = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]];//被每个座位碰吃杠的次数
d.hu_note = [-1, -1, -1, -1, -1, [-1, -1, -1, -1], [-1, -1, []], [-1, -1, -1, -1], -1, -1, -1, -1];//0点炮自摸胡,1平假胡,2天地胡流局,3杠花,4抄,5海底,6杠炮,7抢杠胡,8地杠,9剩15张点炮全包,10无番抢杠包11杠尾
d.hu_note_gang = [[0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0]];//明杠、自摸杠、暗杠、点杠、被加杠、被暗杠
d.hu_note_gang_jing = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]];//明精杠、暗精杠、被明精杠、被暗精杠
d.putJing = [0, 0, 0, 0];//是否博精
d.bar_roll = [0];//特殊杠摇
d.put_tail_poker = [0];//是否出掉尾牌
d.tail_poker_hu = [-1, 0, [-1, -1, -1, -1], 0, [-1, -1, -1, -1]];//胡牌0,[胡牌座位],胡牌1,[胡牌座位]
d.tail_poker = [-1, -1, -1, -1, -1, -1, -1, -1, -1];//0尾牌的位置,1杠补牌1的位置,2杠补牌2的位置,3杠补牌1,4杠补牌2,5筛子1,6筛子2,7补张/杠,8座位
d.tail_ctrl = [0];//尾牌动画控制
d.an_gang_num = [0, 0, 0, 0];
d.eyes = 0;//眨眼睛动画
//初始化回放
d.nowtime = 0;
d.replay_re = 0;
d.speed = 1;
d.pai14 = 0;
d.pai15 = 0;
//初始化界面
if(d.recon != 1 && d.backstage != 1)
{d.ini_UI();}
d.show_ip();
d.show_distance();
for(var i=0;i<5;i++){
AM.cls_id(2881+i);
set_self(2886+i, 33, 100, 0, 0);
set_self(2881+i, 34, 0, 0, 0);
AM.cls_id(2886+i);
}
}
//初始化界面
d.ini_UI = function () {
//胡
set_self(2490,37,0,0,0);
set_self(2489,37,0,0,0);
set_self(2392,37,0,0,0);
for(var i=0;i<6;i++){
set_self(2394+i,37,0,0,0);
}
set_self(1821, 43, 60);//癞子帧数
set_self(1822, 43, 60);//癞子帧数
set_group(212, 41, 0, 0, 0);
set_self(515,19,346,0,0);
for (var i = 0; i < 15; i++) {
play_ani123(0, 1143 + i, 19);
set_self(936 + i, 43, 60, 0, 0);
}
for (var i = 0; i < 4; i++) {
set_group(207 + i, 37, 0, 0, 0);
set_group(224 + i, 37, 0, 0, 0);
set_group(218 + i, 37, 0, 0, 0);
set_group(201 + i, 37, 0, 0, 0);
}
for (var i = 233; i <= 240; i++) {
set_group(i, 37, 0, 0, 0);
}
set_group(206, 41, 1, 0, 0);
set_group(206, 35, 255, 0, 0);
set_group(205, 41, 0, 0, 0);
for (var i = 0; i < 4; i++) {
set_self(1770 + i, 41, 1, 0, 0);
}
set_group(205, 37, 0, 0, 0);
set_group(230, 37, 0, 0, 0);
//set_self(1012, 37, 1, 0, 0);//方向
set_self(1327, 37, 0, 0, 0);//方向
set_self(1289, 37, 0, 0, 0);
set_self(1289, 7, -1);
set_group(223, 41, 0, 0, 0);
set_group(239, 41, 0, 0, 0);
set_group(240, 41, 0, 0, 0);
set_group(242, 41, 0, 0, 0);
set_group(242, 37, 0, 0, 0);
set_group(243, 41, 0, 0, 0);
set_group(201, 35, 255, 0, 0);
set_self(1850, 41, 0, 0, 0);
for (var i = 0; i < 3; i++)//癞子
{
set_self(1820 + i, 41, 0, 0, 0);
}
}
//初始化头像位置对应的座位
//输入pos to pngid
d.set_png_pos = function (seat) {
if (seat != undefined && seat >= 0 && seat <= 3) {
// if (d.pos == "") {
for (var i = 0; i < 4; i++) {
var j = i - seat;
if (j < 0) {
j = j + 4;
}
else if (j > 3) {
j = j - 4;
}
d.pos[i] = j;
}
// }
}
}
//输入pngid to pos
d.set_png_pos_un = function (seat) {
// if (d.pos_un == "") {
for (var i = 0; i < 4; i++) {
var j = i + seat;
if (j < 0) {
j = j + 4;
}
else if (j > 3) {
j = j - 4;
}
d.pos_un[i] = j;
}
// }
}