目录结构调整

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,650 @@
(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(eval(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);

View File

@@ -0,0 +1,459 @@
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";
var h5RpcList={}
h5RpcList.joinRoom = "joinRoom";
//----------------------------end------------------------------
var ClickBtn = [3,5,6,7,13,14,15,10,11,12,25,17,9,47,51,53,55,58,59,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];
var C_PageOne = {
Tag:1,
X:1100,
Y:160,
H:80
};
var C_PageTwo = {
Tag:1,
X:1100,
Y:160,
H:80
};
var UnClickBtn = [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
];
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:11.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:123,//背景精灵
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:430
};
ConstVal.payConfig = {
enablePay:false
};
ConstVal.netType = 0;
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,
bg_sp_tag_1:1,
bg_sp_tag_2:1,
top_sp_tag_1:5000,
top_sp_tag_2:5000,
des_sp_tag_1:10000,
des_sp_tag_2:10000,
starbg_sp_tag_1:15000,
starbg_sp_tag_2:15000,
star_sp_tag_1:20000,
star_sp_tag_2:20000,
clip_x_1:0,
clip_x_2:0,
clip_y_1:0,
clip_y_2:0,
clip_w_1:1150,
clip_w_2:1150,
clip_h_1:0,
clip_h_2:0,
bg_sp_x_1:0,
bg_sp_x_2:0,
bg_sp_y_1:0,
bg_sp_y_2:0,
bg_sp_space_1:6,
bg_sp_space_2:6,
top_sp_x_1:25,
top_sp_x_2:25,
top_sp_y_1:25,
top_sp_y_2:25,
top_sp_width_1:13,
top_sp_width_2:13,
top_sp_space_1:6,
top_sp_space_2:6,
des_sp_x_1:25,
des_sp_x_2:25,
des_sp_y_1:80,
des_sp_y_2:80,
des_sp_width_1:11,
des_sp_width_2:11,
des_sp_space_1:6,
des_sp_space_2:6,
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,
};
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,
bg_tag:1,
rcode_bg_tag:100,
rcode_tag:200,
close_tag:300,
update_tag:400,
switch_tag:500,
info_tag:600,
profit_tag:700,
clip_x:0,
clip_y:0,
clip_w:900,
clip_h:0,
bg_x:0,
rcode_bg_x:33,
rcode_x:50,
close_x:70,
update_x:20,
switch_x:150,
info_x:25,
profit_x:0,
bg_y:0,
rcode_bg_y:260,
rcode_y:8,
close_y:260,
update_y:90,
switch_y:90,
info_y:90,
profit_y:267,
profit_w:12,
bg_space:30,
rcode_bg_space:35,
rcode_space:50,
close_space:300,
update_space:400,
switch_space:500,
};
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:116
};
ConstVal.MenuScene = {
createBtn_1:[780,182],//有星星场
joinBtn_1:[780,320],
starBtn:[780,458],
createBtn_2:[780,230],
joinBtn_2:[780,405]
};

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,324 @@
/*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.hallConfig = {
enablePay:1,
logoffCallback:0,//不通知
worldRoomList:0,//星星争霸是否可用
max:100,
min:0,
unit:1,
shareMsg:"",
autoWorldRoomList:0,//是否自动弹出星星争霸场
rankList:0,//是否显示排行榜按钮
groupMsg:"",//试玩群信息
isReSetOwnerNote:0,//是否替换签名
activity:0,//是否显示活动如果显示则为[x,y,w,h/*,btnUrl,url,actid*/]
shareButton:1,//是否显示分享到平台
enableQuickEnter:1,//是否隐藏快速加入
};
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 = {
msg:"",
url:"",
};
GameData.advertInfo_2 = {
msg:"",
url:"",
};
GameData.advertInfo_0 = {
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.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 = true;
GameData.shareFrom = 0;//0->框架分享 1->游戏分享
GameData.activityType = 0;//子游戏调用类型
GameData.activityData = null;//子游戏调用类型
GameData.shareTimes = 0;//分享次数
GameData.sharePostUrl = "http://localhost:4477/testurl";//截图分享链接

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,408 @@
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 = "";//吱口令
}
//玩家信息初始化
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 = "";//吱口令
};
}
//玩家微信信息初始化
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){
this.playerid = _playerid;
this.roomcard = _roomcard;
this.taskstate = _taskstate;
this.ip=_ip;
this.score = _score;
this.bean = _bean;
this.initialBean = _bean;
//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.Openupdataroomcard(_msg);
};
}
//修改豆豆
if(typeof(Player.prototype.update_bean) == "undefined"){
Player.prototype.update_bean = function(_msg){
this.bean = _msg.data.bean;
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);
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;
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;
//set_rec(203,this.roomcard);
set_self(157,7,this.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);
};
}
//设置吱口令
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){
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;
this.initialBean = _data.bean;//玩家豆子初始值
this.isprepare = _data.isprepare;//玩家是否准备
if(_data.paycode){
this.paycode = _data.paycode;
}else{
this.paycode = "";
}
};
}
//房间解散
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:
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{
if(!isArray(GameData.hallConfig.activity)){
return;
}
GameData.shareTimes++;
//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>4){
sendUrl = GameData.hallConfig.activity[5];
actId = GameData.hallConfig.activity[6];
}
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();
};
}

View File

@@ -0,0 +1,859 @@
var Desk=Desk||{};
Desk.PlayerList=[];//玩家列表
Desk.roomcode = "";//房间号
Desk.stage=0;//牌桌阶段 0->未开局 1->已开局
Desk.state=0;//牌桌解散状态 0->正常 1->申请解散状态
Desk.applyresult=-1;//投票结果-1->无结果0->不通过1->通过
Desk.AgreeList=[];//同意解散座位列表
Desk.agreefree=[];
Desk.roomtype = [];
Desk.warcnt=0;//开战条件
Desk.playercnt=0;//玩家总数
Desk.count=0;// 总局数
Desk.deskfree=null;
Desk.starCount = 0;//投降扣除星星数量
Desk.roomMode = 0;//0->普通场 1->星星场
Desk.needprepare = 0;//是否需要准备
Desk.myInfo = null;//自己的信息
Desk.infinite = 0;//无限局
Desk.isSystem = 1;//是否为系统房间
Desk.setMyInfo = function(_data){
Desk.myInfo.seat = _data.seat;
Desk.myInfo.playerid=_data.playerid;
Desk.myInfo.nickname=_data.nickname;
Desk.myInfo.avatar=_data.avatar;
Desk.myInfo.sex=_data.sex;
Desk.myInfo.ip=_data.ip;
Desk.myInfo.onstate=_data.onstate;
Desk.myInfo.bean = _data.bean;
Desk.myInfo.initialBean = _data.bean;//玩家豆子初始值
//Desk.myInfo.paycode = _data.paycode;
}
Desk.setStarCount = function(_value){
Desk.starCount = _value;
}
Desk.setInfinite = function(_value){
Desk.infinite = _value;
//Desk.infinite = 1;
}
Desk.setRoomMode = function(_value){
Desk.roomMode = _value;
}
Desk.Create=function(){//创建牌桌
this.PlayerList.length = Game_Config.Max.PlayerCnt;
for(var i=0;i<Game_Config.Max.PlayerCnt;i++){
this.PlayerList[i] = new Player(i);
}
//Desk.myInfo = new Player(-1);
}
Desk.SetStage=function(v){
this.stage=v;
}
Desk.getPrepareCnt=function(){
if(Desk.needprepare == 1){
var rValue = 0;
for(var i=0;i<Desk.PlayerList.length;i++){
if(Desk.PlayerList[i].isprepare == 1){
rValue++;
}
}
if(C_Player.isprepare == 0){
rValue++;
}
return rValue;
}else{
return Desk.playercnt;
}
}
Desk.inDesk=function(_playerid){
for(var i=0;i<Desk.PlayerList.length;i++){
if(Desk.PlayerList[i].playerid == _playerid){
return true;
}
}
return false;
}
Desk.Init=function(){//牌桌信息初始化
for(var i=0;i<this.PlayerList.length;i++){
var pobj=this.GetPlayerBySeat(i);
pobj.Init(false);
pobj = null;
}
Desk.count=0;// 总局数
this.warcnt=0;//开战条件
this.playercnt=0;//玩家总数
this.applyresult=-1;//投票结果-1->无结果0->不通过1->通过
this.roomcode = "";//房间号
this.stage=0;//牌桌阶段 0->未开局 1->已开局
this.state=0;//牌桌解散状态 0->正常 1->申请解散状态
this.AgreeList=[];//同意解散座位列表
Desk.deskfree=null;
Desk.starCount = 0;//投降扣除星星数量
Desk.roomMode = 0;//0->普通场 1->星星场
Desk.needprepare = 0;//是否需要准备
Desk.infinite = 0;//无限局
//Desk.myInfo.Init();//自己的信息
}
Desk.setRoom=function(roomcode,asetcount,roomtype){//设置房间号
this.roomcode = roomcode;
this.count = asetcount;
this.roomtype = roomtype;
//Game_Modify.setRoomDes(roomcode,asetcount,roomtype);
//set_self(291,7,Game_Modify.roomDes,0,0);
}
Desk.GetPlayerBySeat=function(seat){
return this.PlayerList[seat];
}
Desk.getPlayerIndexByPlayerid=function(_playerid){
_playerid = Number(_playerid);
if(_playerid<0){return -1;}
for(var i=0;i<Desk.PlayerList.length;i++){
if(_playerid == Number(Desk.PlayerList[i].playerid)){
return Logic.ChangeToStatus(C_Player.seat,i);
}
}
return -1;
}
Desk.login=function(_msg){//登录
if(_msg.data.state==0){
//C_Player.Init();
GameData.sendLoginTimes = 0;
Logic.savePlayerId(_msg.data.playerid);
GameData.isLogin=true;
this.Init();
if(!(_msg.data.score)){
_msg.data.score = 0;
}
if(_msg.data.invitecode){
C_Player.setInvitecod(_msg.data.invitecode);
}
C_Player.SetMyInfo(_msg.data.playerid,_msg.data.roomcard,_msg.data.taskstate,_msg.data.ip,_msg.data.score,_msg.data.bean);
if(_msg.data.advanced){
C_Player.advanced = _msg.data.advanced;
}else{
C_Player.advanced = 0;
}
GameData.AgentId=_msg.data.agentid;
GameData.ChannelId=_msg.data.channelid;
if(_msg.data.roomcode){//已在房间中
if(_msg.data.match){
GameData.matchInfo = _msg.data.match;
}else{
GameData.matchInfo = null;
}
if(typeof _msg.data.roommode != "undefined"){
Desk.setRoomMode(Number(_msg.data.roommode));
}
if(_msg.data.beanlimit){
Desk.setStarCount(_msg.data.beanlimit);
}
if(typeof _msg.data.needprepare != "undefined"){
Desk.needprepare = _msg.data.needprepare;
}
if(_msg.data.infinite){
Desk.setInfinite(_msg.data.infinite);
}
C_Player.SetSeat(_msg.data.seat);
this.warcnt=_msg.data.makewar;
Desk.count = _msg.data.asetcount;
this.stage=_msg.data.isbattle;
if(_msg.data.isowner==1){//房主设置
C_Player.status=1;
}else{
C_Player.status=2;
}
if(_msg.data.seat==0){//房主设置
C_Player.isStart=true;
}else{
C_Player.isStart=false;
}
var pobj=this.GetPlayerBySeat(_msg.data.seat);
pobj.SetDeskInfo(C_Player);
pobj = null;
for(var i=0;i<_msg.data.players.length;i++){
if(_msg.data.players[i]!=null){
if(i == C_Player.seat){
C_Player.isprepare = _msg.data.players[i].isprepare;
}
var pobj=this.GetPlayerBySeat(i);
pobj.SetDeskInfo(_msg.data.players[i]);
pobj = null;
this.playercnt++;
GameUI.SetOnState(i,_msg.data.players[i].onstate);
GameUI.SetIsprepare(i,_msg.data.players[i].isprepare);
}
}
//GameData.getbatteryPack = _msg;
//GameData.getbattery = "MainScene.Desk.login";
Desk.setRoom(_msg.data.roomcode,_msg.data.asetcount,_msg.data.roomtype);
GameUI.MainScene(true);
Game_Modify.setRoomDes(_msg.data.roomcode,_msg.data.asetcount,_msg.data.roomtype);
set_self(291,7,Game_Modify.roomDes,0,0);
//if(GameData.userAgent != ConstVal.userAgent.uAgent_3){
if(Desk.infinite == 0){
if(Desk.stage==0){
GameUI.ShowStartScene();
}else{
}
GameUI.showReady();
}else{
GameUI.ShowStartScene();
//if(Desk.stage == 0){
//if(C_Player.isprepare == 1){
GameUI.showReady();
//}
//}
}
if(_msg.data.isbet == 0){
C_Player.ChangeExit(1);
}else{
C_Player.ChangeExit(0);
}
if(Desk.infinite == 1){
C_Player.ChangeExit(1);
}
if(_msg.data.agreefree){
if(_msg.data.agreefree!=null){
var bTemp=false;
Desk.state=1;
Desk.GetPlayerBySeat(_msg.data.seat).ApplyBreakRoom();
Desk.agreefree=_msg.data.agreefree.state;
for(var i=0;i<Desk.agreefree.length;i++){
if(Desk.agreefree[i]==1){
Desk.AgreeList.push(i);
var pobj=Desk.GetPlayerBySeat(C_Player.seat,i);
pobj.state=Desk.agreefree[i];
if(i==C_Player.seat){
C_Player.state = 1;
bTemp=true;
}
}
if(Desk.agreefree[i]==0){
var pobj=Desk.GetPlayerBySeat(C_Player.seat,i);
pobj.state=Desk.agreefree[i];
if(i==C_Player.seat){
C_Player.state = 0;
bTemp=true;
}
}
}
GameUI.OpenApply(bTemp,_msg.data.agreefree.countdown);
}
}
if(_msg.data.deskinfo){
Game_Modify.Reconnect(_msg.data.deskinfo);
}
//}
}else{
Game_Modify.closeGameScene();
GameUI.JumpMenuScene();
if(!GameData.isReconnect){
if(Logic.JudgeShow()){
GameUI.OpenBoard();
}else{
if(GameData.hallConfig.worldRoomList){
var data={};
data.agentid = GameData.AgentId;
data.playerid = C_Player.playerid;
data.gameid = GameData.GameId;
Net.Send_get_share_room(data);
}
}
}
GameData.isReconnect = false;
}
}else{
GameUI.OpenTips("登录失败",ConstVal.Tips.time);
}
}
Desk.create_room=function(_msg){//创建房间
if(_msg.data.state==0){//成功
Desk.Init();
if(_msg.data.match){
GameData.matchInfo = _msg.data.match;
}else{
GameData.matchInfo = null;
}
if(typeof _msg.data.roommode != "undefined"){
Desk.setRoomMode(Number(_msg.data.roommode));
}
if(_msg.data.beanlimit){
Desk.setStarCount(_msg.data.beanlimit);
}
if(_msg.data.infinite){
Desk.setInfinite(_msg.data.infinite);
}
if(typeof _msg.data.needprepare != "undefined"){
Desk.needprepare = _msg.data.needprepare;
}
Utl.saveRoomtype(_msg.data.roomtype);
this.warcnt=_msg.data.makewar;
C_Player.SetSeat(_msg.data.seat);
C_Player.status=1;
C_Player.isprepare = 0;
C_Player.isStart = true;//能否点击按钮开始游戏
this.playercnt=1;
C_Player.ChangeExit(1);
var pobj=this.GetPlayerBySeat(_msg.data.seat);
pobj.SetDeskInfo(C_Player);
//GameData.getbattery = "MainScene.Desk.create_room";
//GameData.getbatteryPack = _msg;
Desk.setRoom(_msg.data.roomcode,_msg.data.asetcount,_msg.data.roomtype);
GameUI.MainScene(true);
Game_Modify.setRoomDes(_msg.data.roomcode,_msg.data.asetcount,_msg.data.roomtype);
set_self(291,7,Game_Modify.roomDes,0,0);
//if(GameData.userAgent != ConstVal.userAgent.uAgent_3){
GameUI.ShowStartScene();
GameUI.showReady();
Desk.count = _msg.data.asetcount;
//}
if(GameData.h5Version == 1){
GameData.isJoinRoomFromH5 = true;
}
}else{//失败
if(_msg.data.showerror==1){
GameUI.OpenTips(_msg.data.error,ConstVal.Tips.time);
}
}
}
Desk.self_join_room=function(_msg){//自己进入房间
switch(_msg.data.state){
case 0://进入房间成功
Desk.Init();
if(String(GameData.shortCode).length<6 && String(GameData.shortCode).length>0){
Logic.saveShortCode(GameData.shortCode);
GameData.shortCode = "";
}else{
GameData.shortCode = "";
Logic.saveShortCode("");
}
if(_msg.data.infinite){
Desk.setInfinite(_msg.data.infinite);
}
if(_msg.data.match){
GameData.matchInfo = _msg.data.match;
}else{
GameData.matchInfo = null;
}
if(typeof _msg.data.roommode != "undefined"){
Desk.setRoomMode(Number(_msg.data.roommode));
}
if(_msg.data.beanlimit){
Desk.setStarCount(_msg.data.beanlimit);
}
if(typeof _msg.data.needprepare != "undefined"){
Desk.needprepare = _msg.data.needprepare;
}
if( _msg.data.ownerNote){
//GameData.ownerNote = _msg.data.ownerNote;
Logic.setOwnerNote(_msg.data.ownerNote);
Utl.SaveData(Utl.Config.ownerNote,_msg.data.ownerNote);
}
Desk.warcnt = _msg.data.makewar;
C_Player.SetSeat(_msg.data.seat);
//if(_msg.data.paycode){
C_Player.setPayCode(_msg.data.paycode);
//}else{
//C_Player.setPayCode("");
//}
//C_Player.status=2;
if(_msg.data.isowner==1){//房主设置
C_Player.status=1;
Logic.removeRoomFromList(Number(_msg.data.roomcode));
}else{
C_Player.status=2;
}
if(_msg.data.seat==0){//房主设置
//C_Player.status=1;
C_Player.isStart = true;//能否点击按钮开始游戏
}else{
//C_Player.status=2;
C_Player.isStart = false;//能否点击按钮开始游戏
}
C_Player.ChangeExit(1);
this.GetPlayerBySeat(_msg.data.seat).SetDeskInfo(C_Player);
this.playercnt=0;
for(var i=0;i<_msg.data.players.length;i++){
//var pobj=this.GetPlayerBySeat(_msg.data.players[i].seat);
if(_msg.data.players[i]!=null){
if(i == C_Player.seat){
C_Player.isprepare = _msg.data.players[i].isprepare;
}
var pobj=this.GetPlayerBySeat(i);
pobj.SetDeskInfo(_msg.data.players[i]);
this.playercnt++;
//if(_msg.data.players[i].seat==0){//房主设置
//pobj.status=1;
//}else{
//pobj.status=2;
//}
GameUI.SetOnState(i,_msg.data.players[i].onstate);
GameUI.SetIsprepare(i,_msg.data.players[i].isprepare);
}
}
//GameData.getbattery = "MainScene.Desk.self_join_room";
//GameData.getbatteryPack = _msg;
Desk.setRoom(_msg.data.roomcode,_msg.data.asetcount,_msg.data.roomtype);
GameUI.MainScene(true);
Game_Modify.setRoomDes(_msg.data.roomcode,_msg.data.asetcount,_msg.data.roomtype);
set_self(291,7,Game_Modify.roomDes,0,0);
//if(GameData.userAgent != ConstVal.userAgent.uAgent_3){
Game_Modify.myJoinRoom(_msg);
if(_msg.data.deskwar){
Desk.stage=1;
C_Player.ChangeExit(0);
if(Desk.infinite == 1){
C_Player.ChangeExit(1);
}
//Desk.setRoom(_msg.data.roomcode,_msg.data.asetcount,_msg.data.roomtype);
Game_Modify.StartWar(_msg);
}else{
//this.stage=0;
//GameUI.ShowStartScene();
//C_Player.ChangeExit(1);
if(_msg.data.deskinfo){
Desk.stage=1;
Game_Modify.DeskInfo(_msg.data.deskinfo);
if(Desk.infinite == 1){
GameUI.ShowStartScene();
}
//C_Player.ChangeExit(0);
}else{
Desk.stage=0;
GameUI.ShowStartScene();
C_Player.ChangeExit(1);
}
//Desk.setRoom(_msg.data.roomcode,_msg.data.asetcount,_msg.data.roomtype);
}
GameUI.showReady();
if(Desk.infinite == 1 && Desk.stage==1){
GameUI.hideReady();
}
////Desk.count/////////
Desk.count = _msg.data.asetcount;
//}
break;
default:
if(_msg.data.showerror==1){
GameUI.OpenTips(_msg.data.error,ConstVal.Tips.time);
}
if(_msg.data.state==99){
Logic.removeRoomFromList(Number(_msg.data.roomcode));
GameUI.updateNoticeBoard();
}
break;
}
if(GameData.h5Version == 1){
GameUI.closeCheck();
GameData.isJoinRoomFromH5 = true;
}
}
Desk.self_break_room=function(_msg){//接收未开局之前房主自己解散房间
GameData.shakeID = Game_Config.shakeList.nil;
Func.stopshake();
this.Init();
if(_msg.data.roomcode){
Logic.removeRoomFromList(Number(_msg.data.roomcode));
//GameUI.updateNoticeBoard();
}
C_Player.BreakRoom();
GameUI.JumpMenuScene();
Game_Modify.stopAllSounds();
}
Desk.other_break_room=function(_msg){//接收未开局之前他人房主解散房间
this.Init();
C_Player.BreakRoom();
Game_Modify.stopAllSounds();
GameUI.JumpMenuScene();
GameUI.OpenTips("房主已解散房间!",ConstVal.Tips.time);
}
Desk.other_join_room=function(_msg){//接收其他玩家加入房间
var pobj=this.GetPlayerBySeat(_msg.data.seat);
pobj.SetDeskInfo(_msg.data);
if(typeof _msg.data.needprepare != "undefined"){
Desk.needprepare = _msg.data.needprepare;
}
GameUI.PlayerJoinRoom(_msg.data.seat);
Game_Modify.playerJoinRoom(_msg.data.seat);
this.playercnt++;
GameUI.showStartButton();
if(C_Player.status == 1 && Desk.playercnt == 2 && Desk.roomMode == 1 && Desk.infinite == 0 && Desk.stage == 0){
GameUI.showEscape();//set_self(513,37,1,0,0);
}else{
GameUI.hideEscape();//set_self(513,37,0,0,0);
if(GameData.checkType==3){
GameUI.closeCheck();
}
}
if(_msg.data.deskwar){
this.makewar(_msg);
}else{
}
}
Desk.self_exit_room=function(_msg){//接收未开局之前自己退出房间
if(Desk.stage==1){
Game_Modify.breakRoom();
}
if(typeof(_msg.data.isowner)!="undefined"){
if(_msg.data.isowner == 1 && Desk.infinite == 0){
Logic.addRoomToList(Number(_msg.data.roomcode));
//GameUI.updateNoticeBoard();
}
}
this.Init();
C_Player.BreakRoom();
GameUI.JumpMenuScene();
Game_Modify.stopAllSounds();
}
Desk.other_exit_room=function(_msg){//接收未开局之前其他玩家退出房间
var pobj=this.GetPlayerBySeat(_msg.data.seat);
pobj.Init(false);
this.playercnt--;
GameUI.showStartButton();
if(C_Player.status == 1 && Desk.playercnt == 2 && Desk.roomMode == 1 && Desk.infinite == 0 && Desk.stage == 0){
GameUI.showEscape();//set_self(513,37,1,0,0);
}else{
GameUI.hideEscape();//set_self(513,37,0,0,0);
if(GameData.checkType==3){
GameUI.closeCheck();
}
}
if(_msg.data.seat == 0 && Desk.infinite == 0){
GameUI.OpenTips("房主已经离开,新进入房间的玩家成为新房主,您也可重进房间成为房主");
}
Game_Modify.playerLeaveRoom(_msg.data.seat);
GameUI.PlayerLeaveRoom(_msg.data.seat);
}
Desk.self_apply_free_room=function(_msg){//接收开局之后自己申请解散房间
C_Player.ApplyBreakRoom();
this.state=1;
this.GetPlayerBySeat(C_Player.seat).ApplyBreakRoom();
this.agreefree=_msg.data.agreefree.state;
for(var i=0;i<this.agreefree.length;i++){
if(this.agreefree[i]==1){
this.AgreeList.push(i);
}
}
GameUI.OpenApply(true,_msg.data.agreefree.countdown);
}
Desk.other_apply_free_room=function(_msg){//接收开局之后其他玩家申请解散房间
this.state=1;
//this.AgreeList.push(_msg.data.seat);
this.GetPlayerBySeat(_msg.data.seat).ApplyBreakRoom();
this.agreefree=_msg.data.agreefree.state;
for(var i=0;i<this.agreefree.length;i++){
if(this.agreefree[i]==1){
this.AgreeList.push(i);
}
}
GameUI.OpenApply(false,_msg.data.agreefree.countdown);
}
Desk.self_agree_free_room=function(_msg){//接收自己同意解散房间
C_Player.AgreeBreakRoom();
this.state=1;
this.AgreeList.push(C_Player.seat);
this.GetPlayerBySeat(C_Player.seat).AgreeBreakRoom();
GameUI.SelfVote(1);
}
Desk.other_agree_free_room=function(_msg){//接收其他玩家同意解散房间
this.state=1;
this.AgreeList.push(_msg.data.seat);
this.GetPlayerBySeat(_msg.data.seat).ApplyBreakRoom();
GameUI.OtherVote(1,_msg);
}
Desk.self_refuse_free_room=function(_msg){//接收自己拒绝解散房间
C_Player.RefuseBreakRoom();
this.state=0;
this.applyresult=0;
this.AgreeList=[];
for(var i=0;i<this.PlayerList.length;i++){
var pobj=this.GetPlayerBySeat(i);
pobj.state=0;
}
GameUI.OpenApplyResult(false,[C_Player.seat]);
}
Desk.other_refuse_free_room=function(_msg){//接收其他玩家拒绝解散房间
C_Player.RefuseBreakRoom();
this.state=0;
this.applyresult=0;
this.AgreeList=[];
for(var i=0;i<this.PlayerList.length;i++){
var pobj=this.GetPlayerBySeat(i);
pobj.state=0;
}
GameUI.OpenApplyResult(false,[_msg.data.seat]);
}
Desk.free_room=function(_msg){//接收解散房间
this.applyresult=1;
GameUI.OpenApplyResult(true,_msg.data.seats);
if(_msg.data.deskfree){
Desk.deskfree=_msg.data.deskfree;
}
if(_msg.data.roomcard){
C_Player.setRoomcard(_msg.data.roomcard);
}
}
Desk.other_offline=function(_msg){//其他玩家离线
var pobj=this.GetPlayerBySeat(_msg.data.seat);
pobj.onstate=1;
GameUI.SetOnState(_msg.data.seat,1);
Game_Modify.playerOffline(_msg.data.seat);
}
Desk.other_online=function(_msg){//其他玩家上线
var pobj=this.GetPlayerBySeat(_msg.data.seat);
pobj.onstate=0;
pobj.ip=_msg.data.ip;
GameUI.SetOnState(_msg.data.seat,0);
Game_Modify.playerOnline(_msg.data.seat);
}
Desk.send_text=function(_msg){//发送消息
GameUI.playTextVoice(_msg.data.text);
GameUI.ShowChat(Logic.ChangeToStatus(C_Player.seat,_msg.data.seat),_msg.data.text);
GameUI.addCommunion(Logic.ChangeToStatus(C_Player.seat,_msg.data.seat),1,_msg.data.text,0);
}
Desk.Start=function(){//开始按钮
}
Desk.get_player_task=function(_msg){//接收任务列表
TaskInfo=_msg.data.tasks;
GameUI.OpenTask();
}
Desk.kick_offline=function(_msg){//玩家踢出
var s_data={};
s_data.loginList = GameData.loginList;
s_data.tcpId = GameData.TcpID;
s_data.tcpState = GameData.isConnected;
Net.submit_error(JSON.stringify(s_data),"收到踢下线包");
GameUI.OpenKick(ConstVal.Kick.text+ConstVal.Kick.tip);
}
Desk.call_phone=function(_msg){//拨打电话
if(C_Player.seat==_msg.data.seat){
C_Player.onstate=2;
}
var pobj=this.GetPlayerBySeat(_msg.data.seat);
pobj.onstate=2;
GameUI.SetOnState(_msg.data.seat,2);
Game_Modify.playerphonestate(_msg.data.seat,1);
}
Desk.hangup_phone=function(_msg){//挂断电话
if(C_Player.seat==_msg.data.seat){
C_Player.onstate=0;
}
var pobj=this.GetPlayerBySeat(_msg.data.seat);
pobj.onstate=0;
GameUI.SetOnState(_msg.data.seat,0);
Game_Modify.playerphonestate(_msg.data.seat,0);
}
Desk.self_makewar=function(_msg){//主动开战
Func.stopshake();
GameData.ShakeID = Game_Config.shakeList.nil;
if(get_self(218,7,0,0,0)=="房主已经离开,新进入房间的玩家成为新房主,您也可重进房间成为房主"){
GameUI.CloseTips();
}
this.stage=1;
if(Desk.needprepare == 1){
if(C_Player.isprepare == 1){
C_Player.ChangeExit(0);
}
}else{
C_Player.ChangeExit(0);
}
if(Desk.infinite == 1){
C_Player.ChangeExit(1);
}
var pobj = Desk.GetPlayerBySeat(0);
pobj.isprepare = 1;
pobj = null;
GameUI.SetIsprepare(0,1);
GameUI.hideReady();
C_Player.isprepare = 1;
GameUI.HideStartScene();
Game_Modify.StartWar(_msg);
}
Desk.makewar=function(_msg){//自动或者他人开战
Func.stopshake();
GameData.ShakeID = Game_Config.shakeList.nil;
if(get_self(218,7,0,0,0)=="房主已经离开,新进入房间的玩家成为新房主,您也可重进房间成为房主"){
GameUI.CloseTips();
}
this.stage=1;
if(Desk.needprepare == 1){
if(C_Player.isprepare == 1){
C_Player.ChangeExit(0);
}
}else{
C_Player.ChangeExit(0);
}
if(Desk.infinite == 1){
C_Player.ChangeExit(1);
}
var pobj = Desk.GetPlayerBySeat(0);
pobj.isprepare = 1;
pobj = null;
GameUI.SetIsprepare(0,1);
if(0 == C_Player.seat){
GameUI.hideReady();
C_Player.isprepare = 1;
}
if(Desk.needprepare == 1 && Desk.infinite == 1){
if(C_Player.isprepare == 1){
GameUI.hideChangeRoom();
GameUI.hideReady();
}
}
GameUI.HideStartScene();
Game_Modify.StartWar(_msg);
}
Desk.send_gift=function(_msg){//互动动画
GameUI.PlayEffect(_msg.data.sendseat,_msg.data.receiveseat,_msg.data.giftid);
}
Desk.send_voice=function(_msg){//语音
// if(Logic.ChangeToStatus(C_Player.seat,_msg.data.seat)!=0){
GameUI.play_voice(_msg.data.voiceurl,1,Logic.ChangeToStatus(C_Player.seat,_msg.data.seat));
// }
GameUI.addCommunion(Logic.ChangeToStatus(C_Player.seat,_msg.data.seat),2,_msg.data.voiceurl,Number(_msg.data.time).toFixed(1));
}
Desk.send_phiz = function(_msg){//表情
GameUI.ShowEmotion(Logic.ChangeToStatus(C_Player.seat,_msg.data.seat),_msg.data.text);
}
Desk.submit_opinion = function(_msg){
if(_msg.data.state==0){//反馈成功
set_self(551,7,"",0,0);
GameUI.OpenTips("已收到您的宝贵意见,我们将尽快处理",ConstVal.Tips.time);
}else{
GameUI.OpenTips("啊哦~网络有点小状况,您的反馈意见没能收到",ConstVal.Tips.time);
}
}
Desk.kick_server = function(_msg){
GameUI.OpenKick(_msg.data.msg);
}
Desk.broadcast = function(_msg){
var type=0;
if(typeof(_msg.data.msgtype) != "undefined"){
type = _msg.data.msgtype;
}
switch(type){
case 0:
GameUI.ShowiMessage(_msg.data.msgcontent);
break;
case 1:
GameUI.addBroadcast(_msg.data.msgcontent);
break;
}
}
Desk.player_prepare = function(_msg){
var pobj = Desk.GetPlayerBySeat(_msg.data.seat);
pobj.isprepare = 1;
pobj = null;
GameUI.SetIsprepare(_msg.data.seat,1);
if(_msg.data.seat == C_Player.seat){
GameUI.hideReady();
C_Player.isprepare = 1;
}
GameUI.showStartButton();
Game_Modify.onReady(_msg.data.seat);
if(_msg.data.deskwar){
GameUI.HideStartScene();
Desk.stage=1;
C_Player.ChangeExit(0);
Game_Modify.StartWar(_msg);
}else{
}
if(Desk.infinite == 1){
C_Player.ChangeExit(1);
}
if(Desk.stage == 1){
Utl.closeMainSceneButton();
}
}
Desk.share_room = function(_msg){
GameUI.OpenTips("已成功分享至平台!",ConstVal.Tips.time);
}
Desk.get_share_room = function(_msg){
GameData.isShowWorldRoomList = false;
GameUI.CloseBoard();
GameUI.closeWorldRoom();
GameUI.setWorldRoom(_msg.data);
GameUI.openWorldRoom();
}
Desk.show_message = function(_msg){
GameUI.OpenTips(_msg.data.msg,Number(_msg.data.time));
}
Desk.advanced_roomlist = function(_msg){
GameData.snrRoomList = _msg.data;
GameUI.openSeniorOptions(GameData.snrOptionMode,GameData.snrOptionRoomtype,GameData.snrOptionDes);
}
Desk.advanced_createroom = function(_msg){
var s_code = GameData.snrRoomList.shortcode;
GameData.snrRoomList = _msg.data;
GameData.snrRoomList.shortcode = s_code;
GameUI.closeSeniorOptions();
GameUI.openSeniorOptions(GameData.snrOptionMode,GameData.snrOptionRoomtype,GameData.snrOptionDes);
}
Desk.update_bean = function(_msg){
if(typeof _msg.data.seat == "undefined"){//自己充值包括大厅
C_Player.update_bean(_msg);
}else{//房间内他人充值
var pobj = Desk.GetPlayerBySeat(_msg.data.seat);
pobj.bean = _msg.data.bean;
pobj = null;
if(_msg.data.seat == GameData.infoSeat){
set_self(511,7,GameData.starName+""+_msg.data.bean,0,0);
}
}
}

View File

@@ -0,0 +1,717 @@
var storage = window.localStorage;
var Utl = Utl||{};
Utl.Config={};
Utl.Config.pre_bgm = "tsgame_bgm_";
Utl.Config.bgm = "";
Utl.Config.pre_sound = "tsgame_sound_";
Utl.Config.sound = "";
Utl.Config.pre_wxinfo = "tsgame_wxinfo_";
Utl.Config.wxinfo = "tsgame_wxinfo";
Utl.Config.maxtime = 48;//小时
Utl.Config.pre_validtime = "tsgame_validtime_";//有效时间(时间戳)
Utl.Config.validtime = "tsgame_validtime";//有效时间(时间戳)
Utl.Config.pre_visitorinfo = "tsgame_visitorinfo_";
Utl.Config.visitorinfo = "tsgame_visitorinfo";
Utl.Config.pre_roomtype = "tsgame_roomtype_";
Utl.Config.roomtype = "";
Utl.Config.pre_multiple = "tsgame_multiple_";
Utl.Config.multiple = "";
Utl.Config.pre_shake = "tsgame_shake_";
Utl.Config.shake = "";
Utl.Config.pre_voice = "tsgame_voice_";
Utl.Config.voice = "";
Utl.Config.pre_roomlist = "tsgame_roomlist_";
Utl.Config.roomlist = "";
Utl.Config.pre_playerid = "tsgame_playerid_";
Utl.Config.playerid = "";
Utl.Config.pre_gradeinfo = "tsgame_gradeinfo_";
Utl.Config.gradeinfo = "";
Utl.Config.pre_shortcode = "tsgame_shortcode_";
Utl.Config.shortcode = "";
Utl.Config.pre_ownerNote = "tsgame_ownerNote_";
Utl.Config.ownerNote = "";
Utl.Config.pre_machineId = "tsgame_machineId_";
Utl.Config.machineId = "";
Utl.SetStorage=function(){
Utl.Config.bgm = Utl.Config.pre_bgm+GameData.GameId;
Utl.Config.sound = Utl.Config.pre_sound+GameData.GameId+GameData.AgentId;
Utl.Config.roomtype = Utl.Config.pre_roomtype+GameData.GameId+GameData.AgentId;
Utl.Config.shake = Utl.Config.pre_shake+GameData.GameId+GameData.AgentId;
Utl.Config.multiple = Utl.Config.pre_multiple+GameData.GameId+GameData.AgentId;
Utl.Config.voice = Utl.Config.pre_voice+GameData.GameId+GameData.AgentId;
Utl.Config.roomlist = Utl.Config.pre_roomlist+GameData.GameId+GameData.AgentId;
Utl.Config.playerid = Utl.Config.pre_playerid+GameData.GameId+GameData.AgentId;
Utl.Config.gradeinfo = Utl.Config.pre_gradeinfo+GameData.GameId+GameData.AgentId;
Utl.Config.shortcode = Utl.Config.pre_shortcode+GameData.GameId+GameData.AgentId;
Utl.Config.ownerNote = Utl.Config.pre_ownerNote+GameData.GameId+GameData.AgentId;
Utl.Config.machineId = Utl.Config.pre_machineId;
}
Utl.SaveData = function(key,data){
storage.setItem(key,data);
}
Utl.checkKey=function(key){
if(storage.getItem(key)==null){
return false;
}else{
return true;
}
}
Utl.ReadData=function(key){
return storage.getItem(key);
}
Utl.RemoveItemByKey=function(key){
if(storage.getItem(key)!=null){
storage.removeItem(key);
}
}
Utl.removeItemFromArray = function(_array,_data){
var index = _array.indexOf(_data);
if(index>-1){
var r_data = _array.splice(index,1);
return r_data;
}else{
return null;
}
}
Utl.ClearStorage=function(){
storage.clear();
}
//对象克隆
Utl.clone = function(myObj){
if(typeof(myObj) != 'object') return myObj;
if(myObj == null) return myObj;
var myNewObj = new Object();
for(var i in myObj)
myNewObj[i] = Utl.clone(myObj[i]);
return myNewObj;
}
Utl.getMyInfo=function(){//获取玩家自身信息
var obj_return = Utl.clone(C_Player);
return obj_return;
}
Utl.setGrade=function(seat,grade){//设置游戏主界面玩家积分信息
var ind=Logic.ChangeToStatus(C_Player.seat,seat);
set_self(436+ind,7,grade,0,0);
if(ind==0){
if(Game_Config.Info.myPositionDefault){
set_self(436+ind,18,get_self(376+ind,18,0,0,0) + get_self(376+ind,20,0,0,0)/2 - String(grade).gblen()*Game_Config.Info.textwidth_2/2,0,0);
}else{
set_self(436+ind,18,Game_Config.Info.myPosition - String(grade).gblen()*Game_Config.Info.textwidth_2/2,0,0);
}
}else{
if(Game_Config.Info.otherPositionDefault){
set_self(436+ind,18,get_self(376+ind,18,0,0,0) + get_self(376+ind,20,0,0,0)/2 - String(grade).gblen()*Game_Config.Info.textwidth_2/2,0,0);
}else{
set_self(436+ind,18,Game_Config.Info.position[ind-1] - String(grade).gblen()*Game_Config.Info.textwidth_2/2,0,0);
}
}
}
//播放背景音乐
Utl.playMusic=function(){
if(Utl.ReadData(Utl.Config.bgm)==1){
if(get_self(149,37,0,0,0)==1){//游戏界面中
Func.play_wav(Game_Config.soundList.MenuSceneMusic,-1);
Func.play_wav(Game_Config.soundList.MainSceneMusic,1);
}else{
Func.play_wav(Game_Config.soundList.MainSceneMusic,-1);
Func.play_wav(Game_Config.soundList.MenuSceneMusic,1);
}
}
}
//播放音效
Utl.playSound=function(src){
if(Utl.ReadData(Utl.Config.sound)==1){
Func.play_wav(src,0);
}
}
//停止播放背景音乐
Utl.stopMusic=function(){
Func.play_wav(Game_Config.soundList.MainSceneMusic,-1);
Func.play_wav(Game_Config.soundList.MenuSceneMusic,-1);
}
//停止播放音效
Utl.stopSound=function(src){
Func.play_wav(src,-1);
}
//获取游戏ID
Utl.getGameID=function(){
return GameData.GameId;
}
//获取代理商ID
Utl.getAgentID=function(){
return GameData.AgentId;
}
//获取房间内某个座位玩家的playerid
Utl.getPlayeridBySeat=function(seat){
var pobj=Desk.GetPlayerBySeat(seat);
return pobj.playerid;
}
//获取房间内某个座位的玩家昵称
Utl.getNicknameBySeat=function(seat){
var pobj=Desk.GetPlayerBySeat(seat);
return pobj.nickname;
}
//获取房间内某个座位的玩家性别
Utl.getSexBySeat=function(seat){
var pobj=Desk.GetPlayerBySeat(seat);
return pobj.sex;
}
//获取玩家playerid
Utl.getMyPlayerid=function(){
return C_Player.playerid;
}
//获取玩家playerid
Utl.getMySex=function(){
return C_Player.sex;
}
//获得房间号
Utl.getRoomcode=function(){
return Desk.roomcode;
}
//获取玩家座位号
Utl.getMySeat=function(){
return C_Player.seat;
}
//玩家退出房间
Utl.Exit=function(){
Desk.Init();
C_Player.BreakRoom();
GameUI.JumpMenuScene(true);
if(GameData.matchInfo){
GameData.matchInfo = null;
Utl.openMatchUrl();
}
}
//设置LocalData
Utl.setCookie=function(name, value, exp_hour) {
if (!exp_hour) {
exp_hour = 48; //默认时效48小时
}
var exp = new Date();
Utl.SaveData(Utl.Config.validtime,exp.getTime() + exp_hour*60*60*1000);
Utl.SaveData(name,value);
}
//读取LocalData
Utl.getCookie=function(name) {
if(GameData.versionState == 0){
var vt=Utl.ReadData(Utl.Config.validtime);
if(vt==null){
return null;
}
var exp = new Date().getTime();
if(exp < vt){//
return Utl.ReadData(name);
}else{
return null;
}
}else{
return Utl.ReadData(name);
}
}
//删除LocalData
Utl.delCookie=function(name) {
Utl.RemoveItemByKey(Utl.Config.validtime);
Utl.RemoveItemByKey(name);
}
Utl.getAppService=function(){//ture为前台状态 false、为后台状态
return GameData.appservice;
}
//关闭所有窗口
Utl.closeWindow=function(){
GameUI.CloseSetting();
set_group(29,37,0,0,0);
set_self(223,37,0,0,0);
GameUI.CloseInfo();
GameUI.CloseChat();
set_self(38,37,0,0,0);
set_self(39,37,0,0,0);
GameUI.CloseHelp();
}
Utl.changeToStatus = function(seat){//将座位转化为方位以自己为原点0逆时针旋转依次往上加
return Logic.ChangeToStatus(C_Player.seat,seat);
}
Utl.isMainScene = function(){//获取是否在游戏主界面
var rt = get_self(149,37,0,0,0);
if(rt==1){
return true;
}
return false;
}
Utl.getMyOpenid = function(){//获取玩家openid
return C_Player.openid;
}
Utl.getOnState = function(status){//获取玩家状态
return GameUI.onstate[status];//1-->离线 2-->通话 其他正常
}
Utl.saveRoomtype = function(_data){//保存创建房间时的房间类型
var rt={};
rt.data = _data;
rt = JSON.stringify(rt);
Utl.SaveData(Utl.Config.roomtype,rt);
}
Utl.getRoomtype = function(){//获取上次创建的房间类型
var roomty = Utl.ReadData(Utl.Config.roomtype);
if(roomty){
roomty = JSON.parse(roomty);
//if(Game_Config.Max.SumOfRoomtype!=roomty.data.length){
//Utl.SaveData(Utl.Config.roomtype,"");
//return null;
//}else{
return roomty.data;
//}
}
return null;
}
Utl.delRoomtype = function(){//删除房间类型
Utl.RemoveItemByKey(Utl.Config.roomtype);
}
//获得计算器计算结果(传入需要计算的数组)
Utl.getMultipleResult = function(inputArr){
var mult = 1;
GameData.OrgArr = [].concat(inputArr);
if(Utl.checkKey(Utl.Config.multiple)){
var rd = Utl.ReadData(Utl.Config.multiple);
if(GameUI.checkNumber(rd)){
var rt = Number(rd);
if(rt>0){
mult = rt;
}else{
Utl.SaveData(Utl.Config.multiple,"1");
}
}else{
Utl.SaveData(Utl.Config.multiple,"1");
}
}else{
Utl.SaveData(Utl.Config.multiple,"1");
}
var rtarr = [];
rtarr.length = inputArr.length;
for(var i=0;i<inputArr.length;i++){
rtarr[i] = Func.accMul(inputArr[i],mult);
}
return rtarr;
}
//打开提示
Utl.openTips = function(_msg,time,mode){
GameUI.OpenTips(_msg,time,mode);
}
//关闭提示
Utl.closeTips = function(){
GameUI.CloseTips();
}
//发送消息
Utl.sendData = function(_app,_route,_rpc,_data){
Net._SendData(_app,_route,_rpc,_data);
}
//获取某个座位玩家的头像资源id
Utl.getHeadimgSrc = function(seat){
var idx = Utl.changeToStatus(seat);
return 116+idx;
}
//开启加载界面
Utl.startLoad = function(){
GameUI.StartLoad();
}
//关闭加载界面
Utl.endLoad = function(){
GameUI.EndLoad();
}
Utl.changePlayerState = function(state){//设置玩家是否可以直接退出房间 0->不可以1->可以
if(Desk.infinite == 1){C_Player.ChangeExit(1);return;}
C_Player.ChangeExit(state);
}
Utl.getGameConfig = function(){//获取游戏配置
return GameData.gameConfig;
}
/*
{"address":"江西省南昌市青云谱区施尧路靠近上海浦东发展银行(长天支行)","city":"南昌市",
"cityCode":"0791","country":"中国","district":"青云谱区","latitude":28.623546,"longitude":115.900333,
"province":"江西省","street":"施尧路"}*/
Utl.getLocation = function(){//获取玩家定位信息
if(C_Player.addr){
return Utl.clone(C_Player.addr);
}else{
return null;
}
}
Utl.getMathInfo = function(){
return Utl.clone(GameData.matchInfo);
}
Utl.getInfMode = function(){
return GameData.infMode;
}
Utl.changeBean = function(_bean,seat){
var ind = Logic.ChangeToStatus(C_Player.seat,seat);
var pobj=Desk.GetPlayerBySeat(seat);
pobj.bean = pobj.initialBean + _bean;
var beanInfo = pobj.bean;
pobj = null;
if(get_self(216,37,0,0,0) == 1 && GameData.infoSeat == seat){
set_self(511,7,GameData.starName+""+beanInfo,0,0);
}
//switch(ind){
//case 0:
//C_Player.changeBean(_bean);
//break;
//default:
//if(get_self(216,37,0,0,0) == 1 && GameData.infoSeat == seat){
//set_self(511,7,GameData.starName+""+beanInfo,0,0);
//}
//break;
//}
}
//关闭邀请显示
Utl.closeInvitation = function(){
set_self(183,37,0,0,0);
set_self(195,37,0,0,0);
}
//关闭互动显示
Utl.closeCommunication = function(){
set_self(152,37,0,0,0);
set_self(153,37,0,0,0);
}
//跳转比赛网页
Utl.openMatchUrl = function(){
Func.OpenurlTitleData(GameData.backUrl,"","");
}
//牌局回放进入主界面
Utl.openVideo = function(_playerList,_seat,_roomcode){
/*
_playerList 格式: [[昵称,头像],[]...]
*/
for(var i=0;i<_playerList.length;i++){
if(_playerList[i]!=null){
var pobj=Desk.GetPlayerBySeat(i);
//pobj.SetDeskInfo(_playerList[i]);
pobj.nickname = _playerList[i][0];
pobj.avatar = _playerList[i][1];
pobj = null;
}
}
C_Player.seat = _seat;
Desk.roomcode = _roomcode;
//GameUI.HideNotice();
//GameData.Battery=Func.getbattery();
GameData.Battery = 1;
if(GameData.Battery<=0.2){
set_self(338,43,3,0,0);
}else{
set_self(338,43,2,0,0);
}
//GameData.NetWork=Func.getnetwork();
GameData.NetWork = 1;
if(GameData.NetWork==2){
set_self(336,43,3,0,0);
Func.getwifisignalLevel();
}else{
set_self(336,43,4,0,0);
}
if(GameData.OS == ConstVal.OS.apple){//苹果
set_self(154,1,174,0,0);
set_self(155,1,174,0,0);
set_self(156,1,173,0,0);
}else if(GameData.OS == ConstVal.OS.android){//安卓
set_self(154,1,69,0,0);
set_self(155,1,69,0,0);
set_self(156,1,70,0,0);
}
set_group(21,37,1,0,0);
set_self(150,37,0,0,0);
set_self(151,37,0,0,0);
set_self(152,37,0,0,0);
set_self(153,37,0,0,0);
for(var i=0;i<Desk.PlayerList.length;i++){
if(Desk.PlayerList[i].nickname!="" ){
var ind=Logic.ChangeToStatus(C_Player.seat,i);
var text=Func.subString(Desk.PlayerList[i].nickname,Game_Config.Info.Mainnickname,true);
set_self(406+ind,7,text,0,0);
if(ind==0){
if(Game_Config.Info.myPositionDefault){
set_self(406+ind,18,get_self(376+ind,18,0,0,0) + get_self(376+ind,20,0,0,0)/2 - text.gblen()*Game_Config.Info.textwidth_1/2,0,0);
}else{
set_self(406+ind,18,Game_Config.Info.myPosition - text.gblen()*Game_Config.Info.textwidth_1/2,0,0);
}
}else{
if(Game_Config.Info.otherPositionDefault){
set_self(406+ind,18,get_self(376+ind,18,0,0,0) + get_self(376+ind,20,0,0,0)/2 - text.gblen()*Game_Config.Info.textwidth_1/2,0,0);
}else{
set_self(406+ind,18,Game_Config.Info.position[ind-1] - text.gblen()*Game_Config.Info.textwidth_1/2,0,0);
}
}
set_self(436+ind,7,0,0,0);
if(ind==0){
if(Game_Config.Info.myPositionDefault){
set_self(436+ind,18,get_self(376+ind,18,0,0,0) + get_self(376+ind,20,0,0,0)/2 - Game_Config.Info.textwidth_2/2,0,0);
}else{
set_self(436+ind,18,Game_Config.Info.myPosition - Game_Config.Info.textwidth_2/2,0,0);
}
}else{
if(Game_Config.Info.otherPositionDefault){
set_self(436+ind,18,get_self(376+ind,18,0,0,0) + get_self(376+ind,20,0,0,0)/2 - Game_Config.Info.textwidth_2/2,0,0);
}else{
set_self(436+ind,18,Game_Config.Info.position[ind-1] - Game_Config.Info.textwidth_2/2,0,0);
}
}
Func.up_imgurl(116+ind,Desk.PlayerList[i].avatar);
set_group(43+ind,37,1,0,0);
}
}
play_ani123(1,156,35,255,100,1000,0,0,1);
Utl.playMusic();
Game_Modify.onEnterVideo();
//GameData.Scene = 2;
//Game_Modify.onEnterMainScene(Desk.roomtype);
}
Utl.closeVideo =function(){
Utl.playMusic();
Desk.Init();
C_Player.BreakRoom();
set_group(21,37,0,0,0);
for(var i=0;i<Game_Config.Max.PlayerCnt;i++){
set_group(43+i,37,0,0,0);
}
}
Utl.getPlayerCnt = function(){
return Desk.playercnt;
}
//存储战绩
Utl.saveGradeInfo = function(_data){
var rData = Utl.readGradeInfo();
if(rData){
rData = JSON.parse(rData);
rData.unshift(_data);
var overLen = rData.length - 10;
for(var i=0;i<overLen;i++){
rData.pop();
}
}
Utl.SaveData(Utl.Config.gradeinfo,JSON.stringify(rData));
}
//读取战绩
Utl.readGradeInfo = function(){
return Utl.ReadData(Utl.Config.gradeinfo);
}
Utl.getPlayerReadyState = function(seat){
var pobj = Desk.GetPlayerBySeat(seat);
return pobj.isprepare;
}
//获取玩家是否拥有高级选项
Utl.getPlayerAdvanced = function(){
return C_Player.advanced;
}
//打开高级选项调用
Utl.openSnrOption = function(mode,roomtype,descrip){
GameData.snrOptionMode = mode;
GameData.snrOptionRoomtype = roomtype;
GameData.snrOptionDes = descrip;
var data = {}
data.agentid = GameData.AgentId;
data.gameid = GameData.GameId;
data.playerid = C_Player.playerid;
Net.Send_advanced_roomlist(data);
}
//获取玩家是否拥有高级选项 0无高级选项>0有高级选项
Utl.getAdvanced = function(){
return C_Player.advanced;
}
//获取游戏是否为审核版本(0非审核1审核)
Utl.getVersionState = function(){
return GameData.versionState;
}
//获取游戏是否为h5版本(0->非h51->h5)
Utl.getH5Version = function(){
return GameData.h5Version;
}
//游戏结算时调用
Utl.onGameFinished = function(inputArray,spidList){//结算信息[[昵称,输赢分数],.......]
if(!spidList){
spidList=[];
}
if(GameData.h5Version == 1){
var title = "";
var desc = "";
if(inputArray.length>3){
for(var i=0;i<5;i++){
if(inputArray.length>i){
if(i<2){
title += inputArray[i][1]+":" +Func.subString(inputArray[i][0],24-String(inputArray[i][1]).length - 3,true) + "\n";
}else{
desc += inputArray[i][1] + ":" +Func.subString(inputArray[i][0],24-String(inputArray[i][1]).length - 3,true) +"\n";
}
}
}
}else{
title = Game_Config.Share.title;
for(var i=0;i<3;i++){
if(inputArray.length>i){
desc += inputArray[i][1] + ":" +Func.subString(inputArray[i][0],24-String(inputArray[i][1]).length - 3,true) +"\n";
}
}
}
GameData.shareAppMessage = Logic.getShareDataObj(title,desc);
GameData.shareTimeline = Logic.getShareDataObj1(Game_Config.Share.title+Game_Config.Share.description,"");
shareLink(GameData.shareTimeline,GameData.shareAppMessage);
for(var i=0;i<Desk.PlayerList.length;i++){
if(Desk.PlayerList[i].playerid != -1 ){
var ind=Logic.ChangeToStatus(C_Player.seat,i);
//up_imgurl(116+ind,"assets/bmp/00170.png",1);
set_self(116+ind,1,170,0,0);
}
}
for(var i=0;i<spidList.length;i++){
set_self(spidList[i],37,0,0,0);
}
}
}
Utl.getBeanBySeat = function(seat){
var pobj = Desk.GetPlayerBySeat(seat);
if(pobj){
return pobj.bean;
}
return -1;
}
Utl.getIsDebugger = function(){
return GameData.isDebugger;
}
//打开数字输入面板
Utl.openInputPanel = function(_msg,_callback){
GameUI.openInputPanel(_msg,_callback);
}
//关闭数字输入面板
Utl.closeInputPanel = function(){
GameUI.closeInputPanel();
}
//获取房卡名称
Utl.getRoomCardName = function(){
return GameData.roomCardName;
}
//获取星星名称名称
Utl.getstarName = function(){
return GameData.starName;
}
//获取房卡图片帧数
Utl.getNameImgFrame_1 = function(){
return Number(GameData.nameImgFrame_1);
}
//获取星星图片帧数
Utl.getNameImgFrame_2 = function(){
return Number(GameData.nameImgFrame_2);
}
//子游戏活动的调用类型(在收到大局结算包调用、重画时不允许调用)
Utl.typeForActivity = function(type,data){
//logmessage("typeForActivity"+type,1);
GameData.activityType = type;
GameData.activityData = data;
GameData.shareTimes = 0;
//switch(type){
//case 1://大赢家
//GameData.activityType = type;
//GameData.activityData = data;
//break;
//}
}
//设置玩家准备状态
Utl.setPlayerPrepare = function(seat,state){
var pobj=Desk.GetPlayerBySeat(seat);
pobj.isprepare = state;
if(seat == C_Player.seat){
C_Player.isprepare = state;
}
GameUI.SetIsprepare(seat,state);
GameUI.showReady();
//switch(state){
//case 0:
//break;
//case 1:
//break;
//}
}
//获取是否为无限局0非无限局1无限局
Utl.getIsInfinite = function(){
return Desk.infinite;
}
//复制到粘贴板
Utl.gameCopytext = function(text){
Func.gameCopytext(text);
}
Utl.openTips2 = function(_msg,time){
GameUI.openTips2(_msg,time);
}
//关闭主界面按钮
Utl.closeMainSceneButton = function(){
GameUI.HideStartScene();
GameUI.hideEscape();
GameUI.hideReady();
GameUI.hideChangeRoom();
}
//更改牌桌开战和玩家是否参与游戏(无限局)
Utl.setDeskStage = function(state){
if(Desk.infinite == 0){return;}
Desk.SetStage(state);
switch(state){
case 0://未开战
GameUI.showReady();
GameUI.showChangeRoom();
GameUI.showExitBtn();
break;
case 1://已开战
if(C_Player.isprepare == 1){
GameUI.hideReady();
GameUI.HideStartScene();
GameUI.hideChangeRoom();
GameUI.hideExitBtn();
}else{
GameUI.hideReady();
GameUI.showExitBtn();
GameUI.showChangeRoom();
}
break;
}
}
//获取吱口令
Utl.getPayCodeBySeat = function(seat){
var pobj = Desk.GetPlayerBySeat(seat);
return pobj.paycode;
}

View File

@@ -0,0 +1,581 @@
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{
Func.AjaxHttp2(GameData.Server,JSON.stringify(_msg),
function(cbData){
console.log(cbData);
},function(){
GameUI.OpenTips("网络状况不好");
});
}
if(Game_Config.Debugger.isDebugger){
console.log("发送数据:"+JSON.stringify(_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.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;
}
_data.machineid = Logic.getMachineId();
_data.machineroom = Utl.getRoomcode();
//alert("进入Net.Send_login方法");
GameUI.StartLoad();
var _playerid = Logic.readPlayerId();
if(_playerid){
_data.playerid = _playerid;
}
GameData.loginList.push(GameData.TcpID);
GameData.isSendLoginState = true;
GameData.sendLoginTimes++;
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);
}
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;
}
GameUI.EndLoad();
GameUI.OpenKick("网络繁忙,请退出游戏,稍后登录! ");
}
Net._SendData(AppList.app,RouteList.agent,RpcList.player_login,_data);
}
//接收登录
Net.player_login = function(_msg){
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){
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){
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){
Game_Modify.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){
Game_Modify.get_player_grade2(_msg);
GameUI.EndLoad();
}
//接收修改房卡
Net.update_roomcard = function(_msg){
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){
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){
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);
}

View File

@@ -0,0 +1,44 @@
var Game=Game||{};
Game.submit_location = function(_msg){
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();
}
}

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,116 @@
var Game_Config = Game_Config||{};//相关配置
Game_Config.Debugger={//调试配置
isDebugger : true,// debugger模式下会将所有收发的包输出到控制台(正式发布改为false)
AutoLogin : true,//debugger模式下是否需要记住登录状态自动登录(正式发布改为true)
isSubmitError : false,//是否需要服务器收集错误信息调试时可根据需要正式发布改为true
visitorLogin : true,//隐藏式游客登录
visiblePay:true,//审核通过后是否显示支付按钮
serverType:0,//服务器0->正式 1->测试 2->本地
gameserver:"http://ovw4mqeln.bkt.clouddn.com/update_json/74update_json.txt"+"?"+ifast_random(100000)
};
Game_Config.Max = {
SumOfRoomtype:3,//创建时房间类型roomtype数组长度
ShowChat:2000,//聊天停留时间
PlayerCnt:3,//房间最大人数
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:11.5,//聊天显示文字的宽度(未改动聊天显示文字大小无需改动无需修改)
textwidth_2:12.5,//聊天显示文字的宽度(未改动聊天显示文字大小无需改动无需修改)
otherPositionDefault:true,//其他主界面玩家信息(昵称、积分)是否采用默认对齐方式对齐居中点为头像中点
myPositionDefault:false,//其他主界面玩家信息(昵称、积分)是否采用默认对齐方式对齐居中点为头像中点
myPosition:700,//自己信息对齐点(根据游戏界面自行修改)
position:[],//其他主界面玩家信息昵称、积分居中对齐的x坐标 注意是其他玩家不包括自己从下家开始
TextContent:["快点吧,我等的花儿都谢了。","离开一下,马上回来","诶。抓得一手烂牌","这牌打得太给力!","二七王,我喜欢玩","不好意思,我又赢啦","我先走了,后会有期"],//常用语内容
TextContentMp3:["","","","","","",""],//常用语对应音效
};
Game_Config.Share={//分享参数
appdownload:"",//下载链接(无需配置,从服务器获取)
title:"",//(分享标题)
description:"最受欢迎的棋牌游戏!",//分享描述
gameTitle:"",//游戏中的分享标题模板工程会自动将游戏名字分享出去、不必写在这个变量里(子游戏需要设置)
gameDescription:""//游戏中分享描述(子游戏需要设置)
};
Game_Config.Chat={//游戏内聊天配置信息
LimitLength:40,//聊天最大长度(字节长度)
textwidth:12.5,//聊天显示文字的宽度(未改动聊天显示文字大小无需改动无需修改)
ChatDis:[30,12],//聊天气泡与内容的间隔0位置左右间隔(最好不要低于30)1位置上下间隔
isLeft:[1,0,1,1,1],//聊天气泡是否为以左边为基准线
ChatLoc:[[660,526],[1090,90],[185,90],[175,105],[175,315]]//聊天气泡的基准点位置(注意是基准点位置!)
};
Game_Config.Voice={//游戏内聊天配置信息
VoiceTime:600,//播放语音动画的时间一般情况无需无需修改
VoiceDis:[30,12],//语音气泡与内容的间隔0位置左右间隔(最好不要低于30)1位置上下间隔
isLeft:[1,0,1,1,1],//气泡是否为以左边为基准线
VoiceLoc:[[518,526],[1090,180],[185,180],[175,105],[175,315]]//气泡的基准点位置(注意是基准点位置!)
};
Game_Config.Setting={
Ads1:"本游戏仅为娱乐休\n闲使用房卡所有\n友乐游戏通用\n\n游戏问题请联系微\n 信公众号:\n",
//Ads2:"\n 或客服号:\n",
board:"",//从后台获取设置无效
info:[" 客服信息","QQ:","手机:","微信:"],//客服QQ提醒
board_blength:24,//通知页面一行最大字节数(无需设置)
charge:"关注友乐微信公众号充值",//充值提示
//BtnLoc : [751,833]//音效设置界面两个按钮的x坐标点
};
Game_Config.Protocol={
x:270,//协议图片初始x坐标
y:70,//协议图片初始y坐标
h:560,//协议图片显示高度
w:729//协议图片显示宽度
};
Game_Config.Help={//帮助
x:300,//帮助图片初始x坐标
y:165,//帮助图片初始y坐标
w:729,//帮助图片显示高度
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:"00101.mp3",//大厅界面背景音
MainSceneMusic:"00102.mp3",//游戏主界面背景音
};
Game_Config.ClickButton = {//需要设置点击音效的按钮(只有有弹窗的按钮设置此音效有效、按钮已经设置好、子游戏不允许修改)
src_1:"00103.mp3",//点击时播放的声音资源文件( 不需要播放则不填,下同)
src_2:""//弹窗时播放的音效
}
Game_Config.loginButton = {//??????
x1:258,//???????????x
x2:113,//??????????x
x3:488,//??????????x
};

View File

@@ -0,0 +1,634 @@
var Game_Modify = Game_Modify||{};//子游戏可能会修改的模块
var C_PageOne = {
Tag:1,
X:1050,
Y:160,
H:80
};
var C_PageTwo = {
Tag:1,
X:1050,
Y:160,
H:80
};
Game_Modify.roomDes = "";
Game_Modify.game_config={
};
Game_Modify.Type_1 = [
{id:0,des1:"2局",des2:"(房卡X1)",roomcard:1,type:1},
{id:1,des1:"4局",des2:"(房卡X2)",roomcard:2,type:2}
];
Game_Modify.Type_2 = [
{id:0,des:"叫分的一半升一级",type:1},
{id:1,des:"40分升一级",type:2}
];
Game_Modify.Type_3 = [
{id:0,des:"房主扣卡",type:1},
{id:1,des:"每人扣卡",type:2}
];
Game_Modify.CreateRoomData = {//发送创建房间数据roomtype
//Roomcard:0,
Type_1:0,
Type_2:0,
Type_3:0
//增加房间类型时在下面添加
};
Game_Modify.utlmousedown = function(gameid, spid, downx, downy, no1, no2, no3, no4, no5, no6){
}
Game_Modify.utlmousedown_nomove = function(gameid, spid, downx, downy, timelong, no1, no2, no3, no4, no5){
switch(spid){
//case ConstVal.Task.f_spid:
//GameData.slideTask = false;
//break;
}
}
Game_Modify.mouseup=function(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2){
if(spid_down == 52){
var pos = get_self(50,19,0,0,0);
if(pos > Game_Config.Combat.up_y){
var t = pos - Game_Config.Combat.up_y;
play_ani(1,50,19,pos,Game_Config.Combat.up_y,0,t,0,0,0,1,0,0,0);
for(var i=0;i<C_PageOneBtn.length;i++){
var p = get_self(C_PageOneBtn[i],19,0,0,0);
var d = pos - Game_Config.Combat.up_y;
play_ani(1,C_PageOneBtn[i],19,p,p-d,0,t,0,0,0,1,0,0,0);
}
}else{
if(CombatInfo.length<=5){
if(pos < Game_Config.Combat.up_y){
var t = Game_Config.Combat.up_y - pos;
play_ani(1,50,19,pos,Game_Config.Combat.up_y,0,t,0,0,0,1,0,0,0);
for(var i=0;i<C_PageOneBtn.length;i++){
var p = get_self(C_PageOneBtn[i],19,0,0,0);
var d = pos - Game_Config.Combat.up_y;
play_ani(1,C_PageOneBtn[i],19,p,p-d,0,t,0,0,0,1,0,0,0);
}
}
}else{
var dis = Game_Config.Combat.up_y+5*(Game_Config.Combat.height+2)-CombatInfo.length*(Game_Config.Combat.height+2);
if(pos < dis){
var t = dis - pos;
play_ani(1,50,19,pos,dis,0,t,0,0,0,1,0,0,0);
for(var i=0;i<C_PageOneBtn.length;i++){
var p = get_self(C_PageOneBtn[i],19,0,0,0);
var d = pos - dis;
play_ani(1,C_PageOneBtn[i],19,p,p-d,0,t,0,0,0,1,0,0,0);
}
}
}
}
}
if(spid_down == 56){
var pos = get_self(57,19,0,0,0);
if(pos > Game_Config.Combat.up_y){
var t = pos - Game_Config.Combat.up_y;
play_ani(1,57,19,pos,Game_Config.Combat.up_y,0,t,0,0,0,1,0,0,0);
for(var i=0;i<C_PageTwoBtn.length;i++){
var p = get_self(C_PageTwoBtn[i],19,0,0,0);
var d = pos - Game_Config.Combat.up_y;
play_ani(1,C_PageTwoBtn[i],19,p,p-d,0,t,0,0,0,1,0,0,0);
}
}else{
if(CombatInfo_2.length<=5){
if(pos < Game_Config.Combat.up_y){
var t = Game_Config.Combat.up_y - pos;
play_ani(1,57,19,pos,Game_Config.Combat.up_y,0,t,0,0,0,1,0,0,0);
for(var i=0;i<C_PageTwoBtn.length;i++){
var p = get_self(C_PageTwoBtn[i],19,0,0,0);
var d = pos - Game_Config.Combat.up_y;
play_ani(1,C_PageTwoBtn[i],19,p,p-d,0,t,0,0,0,1,0,0,0);
}
}
}else{
var dis = Game_Config.Combat.up_y+5*(Game_Config.Combat.height+2)-CombatInfo_2.length*(Game_Config.Combat.height+2);
if(pos < dis){
var t = dis - pos;
play_ani(1,57,19,pos,dis,0,t,0,0,0,1,0,0,0);
for(var i=0;i<C_PageTwoBtn.length;i++){
var p = get_self(C_PageTwoBtn[i],19,0,0,0);
var d = pos - dis;
play_ani(1,C_PageTwoBtn[i],19,p,p-d,0,t,0,0,0,1,0,0,0);
}
}
}
}
}
if(spid_down==spid_up){
switch(spid_up){
case 25://创建房间
var data={};
data.agentid = GameData.AgentId;
data.playerid = C_Player.playerid;
data.gameid = GameData.GameId;
data.roomtype = [Game_Modify.Type_1[Game_Modify.CreateRoomData.Type_1].type,Game_Modify.Type_2[Game_Modify.CreateRoomData.Type_2].type,Game_Modify.Type_3[Game_Modify.CreateRoomData.Type_3].type];//发送的房间类型数组
Net.Send_create_room(data);
break;
case 150://游戏内帮助按钮
GameUI.OpenHelp();
break;
case 13://发送战绩请求
var data = {};
data.agentid = GameData.AgentId;
data.playerid = C_Player.playerid;
data.gameid = GameData.GameId;
Game_Modify.Send_get_player_grade1(data);
break;
case 52://战绩页一
var up_id = ifast_check_add(52,upx,upy);
console.log(up_id);
if(up_id>=C_PageOne.Tag&&up_id<=C_PageOne.Tag+CombatInfo.length){
GameData.GradeIdx=CombatInfo[up_id - C_PageOne.Tag].idx;
var data = {};
data.agentid = GameData.AgentId;
data.playerid = C_Player.playerid;
data.gameid = GameData.GameId;
data.idx=GameData.GradeIdx;
Game_Modify.Send_get_player_grade2(data);
}
break;
case 56://战绩页二
var up_id = ifast_check_add(56,upx,upy);
console.log(up_id);
if(up_id>=C_PageTwo.Tag&&up_id<=C_PageOne.Tag+CombatInfo_2.length){
//this.GoCombatPageThree(up_id - C_PageTwo.Tag);
eqw_GameUI.Data.Video_Index=up_id - C_PageTwo.Tag;
eqw_GameUI.SetVideoData();
eqw_GameUI.OpenVideo();
}
break;
case 49:
case 61:
{
Game_Modify.CloseCombat();
}
break;
case 55://战绩返回
if(CombatPage == 0){
Game_Modify.CloseCombat();
}else if(CombatPage == 1){
Game_Modify.GoCombatPageOne();
}else{
Game_Modify.GoCombatPageTwo(CombatPageTwoIndex);
}
break;
}
if(spid_up>=20&&spid_up<=21){//
Game_Modify.CreateRoomData.Type_2 = spid_up-20;
}
if(spid_up>=139&&spid_up<=140){
Game_Modify.CreateRoomData.Type_1 = spid_up-139;
}
if(spid_up>=22&&spid_up<=23){//
Game_Modify.CreateRoomData.Type_3 = spid_up-22;
}
}
}
Game_Modify.utlmousemove = function(gameid, spid, downx, downy, movex,movey ,timelong,offmovex, offmovey, no1){
switch(spid){
case 52://战绩页一
set_self(50,19,offmovey,1,0);
for(var i=0;i<C_PageOneBtn.length;i++){
set_self(C_PageOneBtn[i],19,offmovey,1,0);
}
break;
case 56://战绩页二
set_self(57,19,offmovey,1,0);
for(var i=0;i<C_PageTwoBtn.length;i++){
set_self(C_PageTwoBtn[i],19,offmovey,1,0);
}
break;
}
}
Game_Modify.utlgamemydrawbegin = function(gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7){
if(spid>=50&&spid<=52){
set_clip(0,0,50,Game_Config.Combat.up_y,1200,5*(Game_Config.Combat.height+2));
}
if(spid==54||spid==56||spid==57){
set_clip(0,0,50,Game_Config.Combat.up_y,1200,5*(Game_Config.Combat.height+2));
}
}
Game_Modify.gamemydraw = function(gameid, spid, times, timelong, no2, no3, no4, no5, no6, no7){
switch(spid){
//勾选状态的钩钩是画上去的(如果需要改动勾选图片的尺寸、绘画时的参数自己调整)
//------------------- begin --------------
case 248://协议勾选
if(GameData.ProtocolIndex){
ifast_mydrawbmp(spid,4,5,5,40,40,0,0,40,40);
}
break;
case 139://创建房间时的勾选
if(Game_Modify.CreateRoomData.Type_1 == 0){
ifast_mydrawbmp(spid,4,5,5,40,40,0,0,40,40);
}
break;
case 140://创建房间时的勾选
if(Game_Modify.CreateRoomData.Type_1 == 1){
ifast_mydrawbmp(spid,4,5,5,40,40,0,0,40,40);
}
break;
case 20://创建房间时的勾选
if(Game_Modify.CreateRoomData.Type_2 == 0){
ifast_mydrawbmp(spid,4,5,5,40,40,0,0,40,40);
}
break;
case 21://创建房间时的勾选
if(Game_Modify.CreateRoomData.Type_2 == 1){
ifast_mydrawbmp(spid,4,5,5,40,40,0,0,40,40);
}
break;
case 22://创建房间时的勾选
if(Game_Modify.CreateRoomData.Type_3 == 0){
ifast_mydrawbmp(spid,4,5,5,40,40,0,0,40,40);
}
break;
case 23://创建房间时的勾选
if(Game_Modify.CreateRoomData.Type_3 == 1){
ifast_mydrawbmp(spid,4,5,5,40,40,0,0,40,40);
}
break;
case 48:
if(CombatPage == 0){//战绩页一
ifast_mydrawbmp(spid,1069,40,Game_Config.Combat.bannery,1060,Game_Config.Combat.bannerheight,0,0,999,41);
ifast_mydrawtext(spid,205,130,Game_Config.Combat.bannery+18,50,25);//时间
ifast_mydrawtext(spid,206,270,Game_Config.Combat.bannery+18,75,25);//房间号
ifast_mydrawtext(spid,207,400,Game_Config.Combat.bannery+18,50,25);//局数
ifast_mydrawtext(spid,208,550,Game_Config.Combat.bannery+18,50,25);//玩家
ifast_mydrawtext(spid,208,710,Game_Config.Combat.bannery+18,50,25);//玩家
ifast_mydrawtext(spid,208,870,Game_Config.Combat.bannery+18,50,25);//玩家
//ifast_mydrawtext(spid,228,860,Max.bannery+18,50,25);//玩家
//ifast_mydrawtext(spid,228,990,Max.bannery+18,50,25);//玩家
}else if(CombatPage == 1){//战绩页二
//ifast_mydrawbmp(spid,36,95,Max.bannery,1000,Max.bannerheight,0,0,34,34);
ifast_mydrawbmp(spid,1069,55,Game_Config.Combat.bannery,1040,Game_Config.Combat.bannerheight,0,0,999,41);
ifast_mydrawtext(spid,205,140,Game_Config.Combat.bannery+18,50,25);//局数
ifast_mydrawtext(spid,206,380-String(get_rec(206)).gblen()*6.25,Game_Config.Combat.bannery+18,String(get_rec(206)).gblen()*12.5,25);//玩家1
ifast_mydrawtext(spid,207,610-String(get_rec(207)).gblen()*6.25,Game_Config.Combat.bannery+18,String(get_rec(207)).gblen()*12.5,25);//玩家2
ifast_mydrawtext(spid,208,840-String(get_rec(208)).gblen()*6.25,Game_Config.Combat.bannery+18,String(get_rec(208)).gblen()*12.5,25);//玩家3
//ifast_mydrawtext(spid,229,760,Max.bannery+18,get_rec(229).length*25,25);//玩家4
//ifast_mydrawtext(spid,230,920,Max.bannery+18,get_rec(230).length*25,25);//玩家5
}else{//战绩页三
//ifast_mydrawbmp(spid,5,400,Max.bannery,184,55,0,0,184,55);
ifast_mydrawtext(spid,225,640-get_rec(225).length*25,Game_Config.Combat.bannery+18,get_rec(225).length*50,50);//玩家5
}
break;
case 50://战绩页一底
for(var i=0;i<CombatInfo.length;i++){
ifast_mydrawbmp(spid,1071,0,(i+1)*Game_Config.Combat.height,1084,5,0,0,1084,5);
ifast_mydrawtext(spid,230+i*13,10,i*Game_Config.Combat.height+37,get_rec(230+i*13).gblen()*12.5,25);
ifast_mydrawtext(spid,231+i*13,230,i*Game_Config.Combat.height+37,80,25);
ifast_mydrawtext(spid,232+i*13,380,i*Game_Config.Combat.height+37,100,25);
for(var j=0;j<CombatInfo[i].gameinfo1.players.length;j++){
ifast_mydrawtext(spid,233+i*13+j*2,550+j*160-String(get_rec(233+i*13+j*2)).gblen()*6.25-12.5,i*Game_Config.Combat.height+20,String(get_rec(233+i*13+j*2)).gblen()*12.5,25);
ifast_mydrawtext(spid,234+i*13+j*2,550+j*160-String(get_rec(234+i*13+j*2)).gblen()*6.25-12.5,i*Game_Config.Combat.height+55,String(get_rec(234+i*13+j*2)).gblen()*12.5,25);
}
}
break;
case 57://战绩页二底
for(var i=0;i<CombatInfo_2.length;i++){
//ifast_mydrawbmp(spid,37,0,(i+1)*Max.height,1025,2,0,0,1025,2);
ifast_mydrawbmp(spid,1071,0,(i+1)*Game_Config.Combat.height,1084,5,0,0,1084,5);
ifast_mydrawtext(spid,231+i*6,115,i*Game_Config.Combat.height+30,40,40);
for(var j=0;j<3;j++){
ifast_mydrawtext(spid,232+i*6+j,380+j*230-String(get_rec(232+i*6+j)).gblen()*6.25-33,i*Game_Config.Combat.height+40,String(get_rec(232+i*6+j)).gblen()*12.5,25);
}
}
break;
case 63://战绩页三玩家1
ifast_mydrawtext(spid,226,50,155,get_rec(206).length*30,30);
ifast_mydrawtext(spid,231,111-String(get_rec(231)).length*8,300,String(get_rec(231)).length*30,30);
break;
case 64://战绩页三玩家2
ifast_mydrawtext(spid,227,50,155,get_rec(227).length*30,30);
ifast_mydrawtext(spid,232,111-String(get_rec(232)).length*8,300,String(get_rec(232)).length*30,30);
break;
case 65://战绩页三玩家3
ifast_mydrawtext(spid,228,50,155,get_rec(228).length*30,30);
ifast_mydrawtext(spid,233,111-String(get_rec(233)).length*8,300,String(get_rec(233)).length*30,30);
break;
case 66://战绩页三玩家4
ifast_mydrawtext(spid,229,50,155,get_rec(229).length*30,30);
ifast_mydrawtext(spid,234,111-String(get_rec(234)).length*8,300,String(get_rec(234)).length*30,30);
break;
case 67://战绩页三玩家5
ifast_mydrawtext(spid,230,50,155,get_rec(230).length*30,30);
ifast_mydrawtext(spid,235,111-String(get_rec(235)).length*8,300,String(get_rec(235)).length*30,30);
break;
//------------------- end ------------------
}
}
Game_Modify.OpenCreateRoom=function(){
var roomty = Utl.getRoomtype();//获取到的为创建房间成功时收到的roomtype数组
if(roomty){
Game_Modify.CreateRoomData.Type_1 = roomty[0]-1;
Game_Modify.CreateRoomData.Type_2 = roomty[1]-1;
Game_Modify.CreateRoomData.Type_3 = roomty[2]-1;
}else{
Game_Modify.CreateRoomData.Type_1 = 0;
Game_Modify.CreateRoomData.Type_2 = 0;
Game_Modify.CreateRoomData.Type_3 = 0;
}
//类型一描述
var d1 = Game_Modify.Type_1[0].des1;
var d2 = Game_Modify.Type_1[1].des1;
if(Utl.getVersionState()==0){
d1 += Game_Modify.Type_1[0].des2;
d2 += Game_Modify.Type_1[1].des2;
}
set_self(672,7,d1,0,0);
set_self(673,7,d2,0,0);
//类型二描述
set_self(674,7,Game_Modify.Type_2[0].des,0,0);
set_self(675,7,Game_Modify.Type_2[1].des,0,0);
set_self(1227,7,Game_Modify.Type_3[0].des,0,0);
set_self(1228,7,Game_Modify.Type_3[1].des,0,0);
set_group(4,37,1,0,0);
if(Utl.getVersionState()==1){
set_self(1226,37,0,0,0);
set_self(1227,37,0,0,0);
set_self(1228,37,0,0,0);
set_self(22,37,0,0,0);
set_self(23,37,0,0,0);
}
}
Game_Modify.CloseCreateRoom=function(){
set_group(4,37,0,0,0);
}
//发送获取战绩
Game_Modify.Send_get_player_grade1 = function(_data){
GameUI.StartLoad();
Net.Send_get_player_grade1(_data);
}
//接收获取战绩
Game_Modify.get_player_grade1 = function(_msg){
//CombatInfo = _msg.data.gradeinfo;
CombatCount = _msg.data.asetcount;
//Logic.SetCombatInfo(_msg.data);
CombatInfo = _msg.data.gradeinfo;
for(var i=0;i<CombatInfo.length;i++){
CombatInfo[i].gameinfo1=JSON.parse(CombatInfo[i].gameinfo1);
}
this.OpenCombat();
GameUI.EndLoad();
}
//发送获取战绩2
Game_Modify.Send_get_player_grade2 = function(_data){
GameUI.StartLoad();
Net.Send_get_player_grade2(_data);
}
//接收获取战绩2
Game_Modify.get_player_grade2 = function(_msg){
eqw_Desk.get_player_grade2(_msg);
GameUI.EndLoad();
}
//设置游戏界面房间号显示内容(也是在房间内时分享附加的房间信息)
Game_Modify.setRoomDes = function(roomcode,asetcount,roomtype){
var des1 = "";
var des2 = "";
var des3 = "";
des1 = asetcount+"局";
//if(roomtype[0] == 1){
//Game_Modify.roomDes = "房间号:"+roomcode+"("+asetcount+"局 叫分的一半升一级)";
//}else if(roomtype[0] == 2){
//Game_Modify.roomDes = "房间号:"+roomcode+"("+asetcount+"局 40分升一级)";
//}
if(roomtype[1] == 1){
//Game_Modify.roomDes = "房间号:"+roomcode+"("+asetcount+"局 叫分的一半升一级)";
des2 = Game_Modify.Type_2[0].des;
}else if(roomtype[1] == 2){
//Game_Modify.roomDes = "房间号:"+roomcode+"("+asetcount+"局 40分升一级)";
des2 = Game_Modify.Type_2[1].des;
}
if(roomtype[2] == 1){
//Game_Modify.roomDes = "房间号:"+roomcode+"("+asetcount+"局 叫分的一半升一级)";
des3 = "房主扣卡";
if(Utl.getVersionState()==1){
des3 = "";
}
}else if(roomtype[2] == 2){
//Game_Modify.roomDes = "房间号:"+roomcode+"("+asetcount+"局 40分升一级)";
des3 = "每人扣卡";
if(Utl.getVersionState()==1){
des3 = "";
}
}
Game_Modify.roomDes = "房间号:"+roomcode+"("+des1+" "+des2+" "+des3+")";
Game_Config.Share.gameTitle = "房间号:"+roomcode+"("+des1+")";
Game_Config.Share.gameDescription = des2+" "+des3;
}
Game_Modify.OpenCombat=function(){//打开战绩页
this.SetCombatPageOne();
CombatPage = 0;
//set_self(48,20,1150,0,0);
set_self(50,19,Game_Config.Combat.up_y,0,0);
set_group(7,37,1,0,0);
set_group(8,37,1,0,0);
set_self(55,37,0,0,0);
this.CreateCombatOneBtn(CombatInfo.length);
}
Game_Modify.SetCombatPageOne=function(){//设置战绩页一信息
set_rec(205,"时间");
set_rec(206,"房间号");
set_rec(207,"局数");
set_rec(208,"玩家");
set_self(684,7,CombatCount,0,0);
set_self(684,20,String(CombatCount).length*16,0,0);
for(var i=0;i<CombatInfo.length;i++){
set_rec(230+i*13,CombatInfo[i].overtime);
set_rec(231+i*13,CombatInfo[i].roomcode);
set_rec(232+i*13,CombatInfo[i].gameinfo1.asetcount);
for(var j=0;j<CombatInfo[i].gameinfo1.players.length;j++){
set_rec(233+i*13+j*2,Func.subString(CombatInfo[i].gameinfo1.players[j].name,16,true));//昵称
set_rec(234+i*13+j*2,CombatInfo[i].gameinfo1.players[j].score);//得分
}
}
}
Game_Modify.SetCombatPageTwo=function(v){//设置战绩页二信息
set_rec(205,"局数");
for(var i=0;i<CombatInfo[v].gameinfo1.players.length;i++){
set_rec(206+i,Func.subString(CombatInfo[v].gameinfo1.players[i].name,20,true));
}
for(var i=CombatInfo[v].gameinfo1.players.length;i<5;i++){
set_rec(206+i,"");
}
for(var i=0;i<CombatInfo_2.length;i++){
set_rec(231+i*6,i+1);//局数
for(var j=0;j<5;j++){
set_rec(232+i*6+j,"");
}
for(var j=0;j<CombatInfo_2[i].seatlist.length;j++){
//set_rec(232+i*6+CombatInfo_2[i].round[i][j][0],CombatInfo_2[v].round[i][j][1]);//积分
set_rec(232+i*6+j,CombatInfo_2[i].seatlist[j]);//积分
}
}
}
Game_Modify.SetCombatPageThree=function(v){//设置战绩页三信息
var c=v+1;
set_rec(225,"第"+c+"局");
for(var i=0;i<CombatInfo[CombatPageTwoIndex].round[v].length;i++){
set_rec(226+i,CombatInfo[CombatPageTwoIndex].playerlist[CombatInfo[CombatPageTwoIndex].round[v][i][0]][0]);
//if(CombatInfo[CombatPageTwoIndex].round[v].playerlist[i][0]!=""){
//up_imgurl(60+i,CombatInfo[CombatPageTwoIndex].round[v].playerlist[i][1]);
//}
Func.up_imgurl(60+i,CombatInfo[CombatPageTwoIndex].playerlist[CombatInfo[CombatPageTwoIndex].round[v][i][0]][2]);
set_rec(231+i,CombatInfo[CombatPageTwoIndex].round[v][i][1]);
for(var j=0;j<5;j++){
set_self(87+i*5+j,43,CombatInfo[CombatPageTwoIndex].round[v][i][2+j]+1,0,0);
}
}
}
Game_Modify.CloseCombat=function(){//关闭战绩页
set_group(7,37,0,0,0);
set_group(8,37,0,0,0);
set_group(9,37,0,0,0);
set_group(13,37,0,0,0);
set_group(14,37,0,0,0);
set_group(15,37,0,0,0);
set_group(16,37,0,0,0);
set_group(17,37,0,0,0);
for(var i=0;i<C_PageOneBtn.length;i++){
ifast_dllpritefromspritecopy(52,i+C_PageOne.Tag);
}
for(var i=0;i<C_PageTwoBtn.length;i++){
ifast_dllpritefromspritecopy(56,i+C_PageTwo.Tag);
}
}
Game_Modify.CreateCombatOneBtn=function(n){//创建战绩一按钮
C_PageOneBtn=[];
C_PageOneBtn.length = n;
set_self(52,19,Game_Config.Combat.btnbg,0,0);
for(var i=0;i<n;i++){
var btnid = i+C_PageOne.Tag;
ifast_addtospritefromspritecopy(52,51,C_PageOne.X,C_PageOne.Y+i*C_PageOne.H,btnid);//战绩详情按钮
C_PageOneBtn[i]='52add'+ btnid;
}
set_self(50,21,n*(Game_Config.Combat.height+2),0,0);
}
Game_Modify.GoCombatPageOne=function(){//转换战绩页一
this.SetCombatPageOne();
set_self(50,19,Game_Config.Combat.up_y,0,0);
CombatPage = 0;
set_group(9,37,0,0,0);
set_group(13,37,0,0,0);
set_group(14,37,0,0,0);
set_group(15,37,0,0,0);
set_group(16,37,0,0,0);
set_group(17,37,0,0,0);
set_group(8,37,1,0,0);
for(var i=0;i<C_PageTwoBtn.length;i++){
ifast_dllpritefromspritecopy(56,i+C_PageTwo.Tag);
}
Game_Modify.CreateCombatOneBtn(CombatInfo.length);
}
Game_Modify.GoCombatPageTwo=function(val){//转换战绩页二
var v=0;
for(var i=0;i<CombatInfo.length;i++){
if(CombatInfo[i].idx==val){
v=i;
break;
}
}
CombatPage = 1;
set_self(57,19,Game_Config.Combat.up_y,0,0);
CombatPageTwoIndex = v;
this.SetCombatPageTwo(v);
set_group(8,37,0,0,0);
set_group(13,37,0,0,0);
set_group(14,37,0,0,0);
set_group(15,37,0,0,0);
set_group(16,37,0,0,0);
set_group(17,37,0,0,0);
set_group(9,37,1,0,0);
set_self(55,37,1,0,0);
for(var i=0;i<C_PageOneBtn.length;i++){
ifast_dllpritefromspritecopy(52,i+C_PageOne.Tag);
}
this.CreateCombatTwoBtn(CombatInfo_2.length);
}
Game_Modify.CreateCombatTwoBtn=function(n){//创建战绩二按钮
C_PageTwoBtn=[];
C_PageTwoBtn.length = n;
set_self(56,19,Game_Config.Combat.btnbg,0,0);
for(var i=0;i<n;i++){
var btnid = i+C_PageTwo.Tag;
ifast_addtospritefromspritecopy(56,54,C_PageTwo.X,C_PageTwo.Y+i*C_PageTwo.H,btnid);//战绩详情按钮
C_PageTwoBtn[i]='56add'+ btnid;
}
set_self(57,21,n*(Game_Config.Combat.height+2),0,0);
}
Game_Modify.GoCombatPageThree=function(v){//转换战绩页三
Game_Modify.SetCombatPageThree(v);
CombatPage = 2;
set_group(8,37,0,0,0);
set_group(9,37,0,0,0);
set_group(13,37,0,0,0);
set_group(14,37,0,0,0);
set_group(15,37,0,0,0);
set_group(16,37,0,0,0);
set_group(17,37,0,0,0);
//set_group(10,37,1,0,0);
for(var i=0;i<C_PageTwoBtn.length;i++){
ifast_dllpritefromspritecopy(56,i+C_PageTwo.Tag);
}
for(var i=0;i<CombatInfo[CombatPageTwoIndex].round[v].length;i++){
set_group(13+i,37,1,0,0);
}
}

View File

@@ -0,0 +1,126 @@
//注ConsttVal中的ChatLoc与isLeft的数组长度一定要与ConstVal.Max.PlayerCnt保持一致否则会导致报错或者聊天气泡位置不对
Game_Modify.StartWar=function(_msg){//开战
}
Game_Modify._ReceiveData=function(_msg){//接收数据包
eqw_Net.ReceiveData(_msg);
}
Game_Modify.createRoom=function(_roomtype,_infinite){//创建房间
}
Game_Modify.myJoinRoom=function(_msg){//自己进入房间
}
Game_Modify.Reconnect=function(_deskinfo){//重连
eqw_Desk.Reconnect(_deskinfo);
}
Game_Modify.stopAllSounds=function(){//关闭所有声音 (游戏声音)
//Utl.stopMusic();
}
Game_Modify.Free=function(_msg){//投票解散结果为同意时,点击结果界面确认的按钮时触发
eqw_Desk.ApplyFree(_msg);
}
Game_Modify.DeskInfo=function(_msg){//开战状态下自己加入是牌桌数据
}
Game_Modify.breakRoom=function(){//游戏已开局情况下自己退出房间触发
}
Game_Modify.playerJoinRoom=function(seat){//其他玩家加入房间
}
Game_Modify.playerLeaveRoom=function(seat){//其他玩家离开房间
}
Game_Modify.updateScene = function(){//更新游戏界面
//根据本地数据重新显示界面
eqw_Desk.updateScene();
}
Game_Modify.closeGameScene=function(){//关闭游戏界面
}
Game_Modify.playerOffline = function(seat){//玩家离线
}
Game_Modify.playerOnline = function(seat){//玩家上线
}
Game_Modify.playerphonestate = function(seat,type){//玩家电话状态type->挂断1->接打电话、有电话进来的状态
}
Game_Modify.shakeEvent = function(){
switch(GameData.shakeID){
case Game_Config.shakeList.startwar://摇一摇开战(如果有主动开战)
// var data={};
// data.agentid=GameData.AgentId;
// data.gameid=GameData.GameId;
// data.playerid=C_Player.playerid;
// data.roomcode=Desk.roomcode;
// Net.Send_self_makewar(data);
// Func.stopshake();
// GameData.shakeID=Game_Config.shakeList.nil;
break;
}
}
Game_Modify.calResult = function(inputArr){
for(var i=0;i<inputArr.length;i++){
if(inputArr[i]>=0){
inputArr[i] = min_replaceAll(String(inputArr[i]), "\\.", "d", false);
set_self(1214+i,7,'b'+inputArr[i],0,0);
set_self(1214+i,20,('b'+inputArr[i]).length*18,0,0);
}else{
inputArr[i] = min_replaceAll(String(Math.abs(inputArr[i])), "\\.", "d", false);
set_self(1214+i,7,'c'+inputArr[i],0,0);
set_self(1214+i,20,('c'+inputArr[i]).length*18,0,0);
}
}
}
Game_Modify.onEnterMainScene = function(){//进入游戏主场景
set_self(1218,37,1,0,0);
}
Game_Modify.onExitMainScene = function(){//退出游戏主场景
set_self(1218,37,0,0,0);
eqw_GameUI.CloseCountDown();
}
Game_Modify.onGameConfig = function(_gameConfig){//获取到游戏配置时调用(只在game_config有数据时才调用)
}
Game_Modify.onEnterVideo = function(){//进入牌局回放触发
}
Game_Modify.onSurrender = function(_msg){//收到投降回包
}
Game_Modify.onReady = function(seat){//玩家准备触发
}
Game_Modify.getRoomInfo = function(roomtype,type){//通过roomtype获取房间描述每行最多18个字符超过需要自己换行
return "";
}
Game_Modify.getStarLimit = function(roomtype){//通过roomtype获取房间星星场下限数量
return 2000;
}
Game_Modify.getMult = function(roomtype,type){//通过roomtype获取房间星星场倍数
console.log("Game_Modify.getStarLimit:"+roomtype);
return 2000;
}
Game_Modify.getFullRoomInfo = function(roomtype){//??roomtype?????????? ????26???????????
console.log("Game_Modify.getFullRoomInfo:"+roomtype);
return "";
}
Game_Modify.onOpenHelp = function(spid){//????????spid?????????
}
Game_Modify.onEnterMainScene = function(roomtype){//???????roomtype????
}
Game_Modify.onCheckInput = function(_result){
}
Game_Modify.onCreateRoom = function(_data){
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,126 @@
var eqw_Const=eqw_Const||{};
eqw_Const.ClickBtn=[295,288,289,918,919,701,801,922,1042,800,1043,1220,1224,1225,744];
eqw_Const.UnClickBtn=[];
eqw_Const.Max={
playercnt:3
};
eqw_Const.Card={
oriwidth:147,
oriheight:202,
Dis1:55,//牌间隔
Dis2:55,
Limit:10,
pushscale:50,
push_y:355,
pushdis:20,
pushlocation:[[640,420],[1100,130],[60,130]],//出牌起始位置
pushlocation_f:[[640,280],[860,130],[360,130]],//出牌最终位置
dealcard:[[30,370],[1050,130],[130,130]],//发牌位置
scale:100,
deskscale:50,
out_y:20,
w1:147,
w2:147,
x1:16,
x2:1116,
y1:445,
y2:525,
y3:470
};
eqw_Const.Search={
//pushlocation_f:[[640,280],[860,130],[360,130]],//出牌最终位置
Location:[[640,300],[860,150],[360,150]],
Dis:20,
scale:50
};
eqw_Const.CountDown={
Location:[[15,360],[985,115],[210,115]],//倒计时显示位置
Width:29,
warning:10
};
eqw_Const.Call={
Width_1:68,
Width_2:22,
Location:[[30,370],[1050,130],[130,130]],//叫分显示位置
y1:278,
y2:350,
Dis:60,
grade:[100,65,45,5],
x:45
};
eqw_Const.Main={
Location_1:[[315,303],[498,303],[681,303],[864,303]],
Location_2:[590,125]
};
eqw_Const.Bottom={
Location:[640,120],
Dis:20
};
eqw_Const.BottomOrGrade={
Location:[640,210],
Dis:25,
scale:50
};
eqw_Const.Balance={
//Location_bg:[[213,227],[527,227],[843,227]],
//Location_set:[[220,233],[538,233],[855,233]],
//Location_setnum:[[249,236],[567,236][855,236]],
//Location_grade:[[361,229],[664,229],[973,229]],
Location_bg:[[0,0],[0,0],[0,0]],
Location_set:[[12,6],[12,6],[12,6]],
Location_setnum:[[41,10],[41,10],[41,10]],
Location_grade:[[130,8],[130,8],[130,8]],
BG_Tag:1,
SET_Tag:100,
SETNUM_Tag:200,
GRADE_Tag:300,
Dis:60,
up_y:227,
Height:240
};
eqw_Const.Video={
timer:3000,
MyCardsDis:30,
MyCardsScale:50,
MyCards_y:500,
pushlocation:[[640,500],[1100,130],[60,130]],//出牌起始位置
pushlocation_f:[[640,360],[1060,200],[240,200]],//出牌最终位置
oriwidth:147,
pushdis:20,
pushscale:50
};
eqw_Const.soundsList={
//MenuSceneMusic:"00101.mp3",
//MainSceneMusic:"00102.mp3",
banker:"00213.mp3",
outpoker:"00104.mp3",
dealcards:"00214.mp3",
burry:"00215.mp3",
timeup:"00216.mp3",
singlebalance:"00217.mp3",
balance:"",
score:"00218.mp3",
man_passcall:["00105.mp3","00106.mp3","00107.mp3","00108.mp3","00109.mp3","00110.mp3"],
woman_passcall:["00111.mp3","00112.mp3","00113.mp3","00114.mp3","00115.mp3","00116.mp3"],
man_call:[["00117.mp3","00118.mp3"],["00119.mp3","00120.mp3"],["00121.mp3","00122.mp3"],["00123.mp3","00124.mp3"],["00125.mp3","00126.mp3"],["00127.mp3","00128.mp3"],
["00129.mp3","00130.mp3"],["00131.mp3","00132.mp3"],["00133.mp3","00134.mp3"],["00135.mp3","00136.mp3"],["00137.mp3","00138.mp3"],["00139.mp3","00140.mp3"],
["00141.mp3","00142.mp3"],["00143.mp3","00144.mp3"],["00145.mp3","00146.mp3"],["00147.mp3","00148.mp3"],["00149.mp3","00150.mp3"],["00151.mp3","00152.mp3"],
["00153.mp3","00154.mp3"],["00155.mp3","00156.mp3"]],
woman_call:[["00157.mp3","00158.mp3"],["00159.mp3","00160.mp3"],["00161.mp3","00162.mp3"],["00163.mp3","00164.mp3"],["00165.mp3","00166.mp3"],["00167.mp3","00168.mp3"],
["00169.mp3","00170.mp3"],["00171.mp3","00172.mp3"],["00173.mp3","00174.mp3"],["00175.mp3","00176.mp3"],["00177.mp3","00178.mp3"],["00179.mp3","00180.mp3"],
["00181.mp3","00182.mp3"],["00183.mp3","00184.mp3"],["00185.mp3","00186.mp3"],["00187.mp3","00188.mp3"],["00189.mp3","00190.mp3"],["00191.mp3","00192.mp3"],
["00193.mp3","00194.mp3"],["00195.mp3","00196.mp3"]],
man_flower:[["00197.mp3","00198.mp3"],["00199.mp3","00200.mp3"],["00201.mp3","00202.mp3"],["00203.mp3","00204.mp3"]],
woman_flower:[["00205.mp3","00206.mp3"],["00207.mp3","00208.mp3"],["00209.mp3","00210.mp3"],["00211.mp3","00212.mp3"]],
};
eqw_Const.ButtonSounds = {
src:"00103.mp3",
buttonList:[860,701]
};

View File

@@ -0,0 +1,44 @@
var eqw_Data=eqw_Data||{};
eqw_Data.Balance_bg_1=[];
eqw_Data.Balance_bg_2=[];
eqw_Data.Balance_bg_3=[];
eqw_Data.Balance_set_1=[];
eqw_Data.Balance_set_2=[];
eqw_Data.Balance_set_3=[];
eqw_Data.Balance_setnum_1=[];
eqw_Data.Balance_setnum_2=[];
eqw_Data.Balance_setnum_3=[];
eqw_Data.Balance_grade_1=[];
eqw_Data.Balance_grade_2=[];
eqw_Data.Balance_grade_3=[];
eqw_Data.Timer = 0;
eqw_Data.isShowmaxseat = true;
eqw_Data.isShowgrade = true;
eqw_Data.isHideCards = true;
eqw_Data.isGetBottom = true;
eqw_Data.pushcards =[null,null,null];
var Debugger={
isSubmitError:false
};
eqw_Data.switchStep = -1;
var CombatInfo_2=null;
eqw_Data.CardSpid = -1;
eqw_Data.CardIndex = false;
eqw_Data.CardsList = [705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740];
eqw_Data.isSlide = false;

View File

@@ -0,0 +1,65 @@
var eqw_Card=eqw_Card||{
new: function(id, flower, number, score, dealowner){
/*
参数说明:
id 绝对id
flower 牌面花色
number 牌面数值
code 牌编码
扑克牌的统一编码规则:
1牌面花色的定义 5:王 4:黑桃 3:红心 2:梅花 1:方块
2牌面数值的定义 01:A 02:2 03:3 ... 09:9 10:10 11:J 12:Q 13:K 53:小王 54:大王
3牌编码的定义
3.1 常主的牌编码定义:
未叫主之前:
2的牌编码定义 黑桃2:2402 红心2:2302 梅花2:2202 方块2:2102
7的牌编码定义 黑桃7:7407 红心2:7307 梅花7:7207 方块7:7107
王的牌编码定义 小王:9553 大王:9554
叫主之后:
主2牌编码定义 原有牌编码的基础上+1000例如红心为主牌则红心2的牌编码变为3302
主7牌编码定义 原有牌编码的基础上+1000例如红心为主牌则红心7的牌编码变为8307
3.2 普通牌的牌编码定义
A的定义14
未叫主之前:
3位数字 第一位为牌面花色 第二三位为牌面数值
叫主之后:
主牌花色 4位数字即在原有牌编码的基础上+1000表示是主牌
非主牌花色 3位数字即原有牌编码不变
3.3 综上所述
牌编码是3位的即小于1000的都是非主牌
牌编码是4位的即大于1000的都是主牌
可根据牌编码进行牌大小的比较和排序
4 牌型定义
>100: 单张, 101一张单张102两张单张111十一张单张 ...
>200: 对子, 201一对202两对203三对 ...
>300: 拖拉机302两连对拖拉机303三连对拖拉机 ...
*/
var pai = {};
pai.id = id; //绝对id即数组下标从0开始计数
pai.flower = flower; //牌面花色
pai.number = number; //牌面数值
pai.score = score; //牌在游戏中的分值
pai.dealowner = dealowner; //发牌状态
//-1:规则去除的牌
// 0:未发的牌,即底牌
//>0:发牌发到谁手上从1开始计数即位置编号+1位置编号是从0开始计数的
pai.playround = -1; //出牌状态
//-1:未出的牌
// 0:埋牌
//>0:牌是第几轮出出去的从1开始计数
pai.playindex = -1; //本轮中的出牌顺序从1开始计数
pai.playowner = -1; //出牌后被谁得到从1开始计数即位置编号+1位置编号是从0开始计数的
return pai;
}
};

View File

@@ -0,0 +1,94 @@
var eqw_Net=eqw_Net||{};
eqw_Net.App="youle";
eqw_Net.Route="erqiwang";
eqw_Net.RpcList={};
eqw_Net.RpcList.fapai="fapai";
eqw_Net.RpcList.jiaofen="jiaofen";
eqw_Net.RpcList.shangzhuang="shangzhuang";
eqw_Net.RpcList.get_player_grade2 = "get_player_grade2";
eqw_Net.RpcList.xuanzhu="xuanzhu";
eqw_Net.RpcList.touxiang="touxiang";
eqw_Net.RpcList.maipai="maipai";
eqw_Net.RpcList.chupai="chupai";
eqw_Net.RpcList.chupai1="chupai1";
eqw_Net.RpcList.chupai2="chupai2";
eqw_Net.RpcList.chupai3="chupai3";
eqw_Net.RpcList.jiesuan="jiesuan";
eqw_Net.RpcList.zhunbei="zhunbei";
eqw_Net._SendData=function(_app,_route,_rpc,_data){
var _msg={};
_msg.data={};
_msg.app=_app;
_msg.route=_route;
_msg.rpc=_rpc;
_msg.data=_data;
console.log("二七王发送数据:"+JSON.stringify(_msg));
try{
Net.ws_tcp.send(JSON.stringify(_msg));
}catch(e){
alert(e);
//alert(e.lineNumber);
alert(e.message);
}
}
eqw_Net.ReceiveData=function(_msg){
// console.log("二七王收到数据:"+JSON.stringify(_msg));
if(min_ExitsFunction(eqw_Desk[_msg.rpc])){
//eqw_Net[_msg.rpc](_msg);
eqw_Desk[_msg.rpc](_msg);
}
}
//发牌
eqw_Net.Send_fapai=function(_data){
this._SendData(this.App,this.Route,this.RpcList.fapai,_data);
}
//叫分
eqw_Net.Send_jiaofen=function(_data){
this._SendData(this.App,this.Route,this.RpcList.jiaofen,_data);
}
//上庄
eqw_Net.Send_shangzhuang=function(_data){
this._SendData(this.App,this.Route,this.RpcList.shangzhuang,_data);
}
//选主
eqw_Net.Send_xuanzhu=function(_data){
this._SendData(this.App,this.Route,this.RpcList.xuanzhu,_data);
}
//埋牌
eqw_Net.Send_maipai=function(_data){
this._SendData(this.App,this.Route,this.RpcList.maipai,_data);
}
//出牌1
eqw_Net.Send_chupai=function(_data){
this._SendData(this.App,this.Route,this.RpcList.chupai,_data);
}
//准备
eqw_Net.Send_zhunbei=function(_data){
this._SendData(this.App,this.Route,this.RpcList.zhunbei,_data);
}
//准备
eqw_Net.Send_get_player_grade2=function(_data){
this._SendData(this.App,this.Route,this.RpcList.get_player_grade2,_data);
}
//投降
eqw_Net.Send_touxiang=function(_data){
Utl.startLoad();
this._SendData(this.App,this.Route,this.RpcList.touxiang,_data);
}

View File

@@ -0,0 +1,183 @@
var eqw_Player=eqw_Player||{};
function eqw_HandCard(id){
this.id=id;
this.isSelect=0;
this.click=1;
this.diff=0;
this.mustpush=0;
}
eqw_HandCard.prototype.GetId=function(){
return this.id;
}
eqw_HandCard.prototype.Select=function(){
this.isSelect=1;
}
eqw_HandCard.prototype.CancelSelect=function(){
this.isSelect=0;
}
eqw_HandCard.prototype.GetSelect=function(){
return this.isSelect;
}
eqw_HandCard.prototype.GetClick=function(){
return this.click;
}
eqw_HandCard.prototype.SetClick=function(){
this.click = 1;
}
eqw_HandCard.prototype.SetUnClick=function(){
this.click = 0;
}
eqw_HandCard.prototype.SetDiff=function(){
this.diff = 1;
}
eqw_HandCard.prototype.SetUnDiff=function(){
this.diff = 0;
}
eqw_HandCard.prototype.SetMust=function(){
this.mustpush = 1;
}
eqw_HandCard.prototype.SetUnMust=function(){
this.mustpush = 0;
}
///////------------------------------eqw_Player------------------------
eqw_Player.HandCards=[];
eqw_Player.call=null;//我的叫分
eqw_Player.status=0;//玩家是否是庄家
eqw_Player.BottomCards=[];//底牌只有庄家才有此属性
eqw_Player.Init=function(){
this.HandCards=[];
this.call=null;
this.status=0;
this.BottomCards=[];
}
eqw_Player.InitCards=function(){
for(var i=0;i<this.HandCards.length;i++){
this.HandCards[i].isSelect=0;
this.HandCards[i].click=1;
this.HandCards[i].diff=0;
this.HandCards[i].mustpush=0;
}
}
//选牌
eqw_Player.SelectCards=function(ind){
this.HandCards[ind].Select();
}
//取消选牌
eqw_Player.CancelSelectCards=function(ind){
this.HandCards[ind].CancelSelect();
}
//得到选中牌数量
eqw_Player.GetNumSelect=function(){
var n=0;
for(var i=0;i<this.HandCards.length;i++){
if(this.HandCards[i].GetSelect()==1){
n++;
}
}
return n;
}
//得到选中牌数量
eqw_Player.GetSelectCards=function(){
var result=[];
for(var i=0;i<this.HandCards.length;i++){
if(this.HandCards[i].GetSelect()==1){
result.push(this.HandCards[i].id);
}
}
return result;
}
//未出牌是设置手牌
eqw_Player.SetHandCards=function(CardList){
for(var i=0;i<eqw_Player.HandCards.length;i++){
eqw_Player.HandCards[i]=null;
}
eqw_Player.HandCards=[];
eqw_Player.HandCards.length=CardList.length;
for(var i=0;i<CardList.length;i++){
eqw_Player.HandCards[i]=new eqw_HandCard(CardList[i]);
}
}
//出牌
eqw_Player.PushCards=function(CardList){
for(var i=0;i<CardList.length;i++){
for(var j=0;j<this.HandCards.length;j++){
if(this.HandCards[j].GetId()==CardList[i]){
}
}
}
}
//设置手牌为未选中状态
eqw_Player.NoSelect=function(){
for(var j=0;j<this.HandCards.length;j++){
if(this.HandCards[j].GetSelect()==1){
this.HandCards[j].CancelSelect();
set_self(705+j,19,eqw_Const.Card.out_y,1,0);
}
}
}
//设置底牌
eqw_Player.SetBottomCards=function(CardList){
eqw_Player.BottomCards.length=CardList.length;
for(var i=0;i<CardList.length;i++){
eqw_Player.BottomCards[i]=CardList[i];
}
}
//获得牌列表
eqw_Player.GetCardsList=function(){
var result=[];
result.length=eqw_Player.HandCards.length;
for(var i=0;i<eqw_Player.HandCards.length;i++){
result[i]=eqw_Player.HandCards[i].id;
}
return result;
}
//设置可出不可出
eqw_Player.SetClickCards=function(CardList){
for(var i=0;i<CardList.length;i++){
for(var j=0;j<this.HandCards.length;j++){
if(this.HandCards[j].GetId()==CardList[i]){
this.HandCards[j].click=0;
}
//else{
//this.HandCards[j].click=0;
//}
}
}
for(var j=0;j<this.HandCards.length;j++){
if(this.HandCards[j].click==1){
this.HandCards[j].click=0;
}else{
this.HandCards[j].click=1;
}
}
}
//设置必出
eqw_Player.SetMustCards=function(CardList){
for(var i=0;i<CardList.length;i++){
for(var j=0;j<this.HandCards.length;j++){
if(this.HandCards[j].GetId()==CardList[i]){
set_self(705+j,19,-eqw_Const.Card.out_y,1,0);
this.HandCards[j].Select();
this.HandCards[j].SetMust();
}
}
}
}
//设置牌区别显示
eqw_Player.SetDiffCards=function(CardList){
for(var i=0;i<CardList.length;i++){
for(var j=0;j<this.HandCards.length;j++){
if(this.HandCards[j].GetId()==CardList[i]){
this.HandCards[j].SetDiff();
}
}
}
}

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,142 @@
var eqw_Logic=eqw_Logic||{};
eqw_Logic.GameStart=function(){
eqw_Desk.Create();
for(var i=0;i<eqw_Const.UnClickBtn.length;i++){
set_self(eqw_Const.UnClickBtn[i],41,0,0,0);
}
}
eqw_Logic.ChangeToStatus=function(seat){//将座位转化为对应位置
return (seat-Utl.getMySeat()+Game_Config.Max.PlayerCnt)%Game_Config.Max.PlayerCnt;
}
eqw_Logic.ChangeToSeat=function(status){//将位置转化为座位
return (status+Utl.getMySeat())%Game_Config.Max.PlayerCnt;
}
eqw_Logic.power2fs=function(x) {
return (x & ( x - 1)) === 0 ? (x == 1 ? 0 : (x-1).toString(2).length): false;
}
//获取某个位置玩家发到手上的牌
eqw_Logic.get_seat_cards_deal = function(cards, seat){
var aryCardIDs = [];
for (var i = 0; i < cards.length; i++){
var o_card = cards[i];
if (o_card[4] == seat + 1){
aryCardIDs.push(o_card[0]);
}
}
return cls_youle_erqiwang_arith.order_cards(eqw_Desk.MainCard, aryCardIDs);
}
//获取某个位置玩家发到手上的牌(庄家包含底牌)
eqw_Logic.get_seat_cards_owner = function(cards, seat){
var aryCardIDs = [];
for (var i = 0; i < cards.length; i++){
var o_card = cards[i];
if ((o_card[4] == seat + 1) || //发到手上
(o_card[4] == 0 && seat == eqw_Desk.BankerSeat)){ //庄家包括底牌
aryCardIDs.push(o_card[0]);
}
}
return cls_youle_erqiwang_arith.order_cards(eqw_Desk.MainCard, aryCardIDs);
}
//获取埋牌
eqw_Logic.get_bury_cards = function(cards){
var aryCardIDs = [];
for (var i = 0; i < cards.length; i++){
var o_card = cards[i];
if (o_card[5] == 0){
aryCardIDs.push(o_card[0]);
}
}
return cls_youle_erqiwang_arith.order_cards(eqw_Desk.MainCard, aryCardIDs);
}
//获取发牌时的底牌
eqw_Logic.get_bottom_cards = function(cards){
var aryCardIDs = [];
for (var i = 0; i < cards.length; i++){
var o_card = cards[i];
if (o_card[4] == 0){
aryCardIDs.push(o_card[0]);
}
}
return cls_youle_erqiwang_arith.order_cards(eqw_Desk.MainCard, aryCardIDs);
}
//判断是否可以发牌
eqw_Logic.CheckDealCards = function(){
}
eqw_Logic.play_bujiao = function(sex){
switch(sex){
default://男
var num = eqw_Const.soundsList.man_passcall.length;
var idx = ifast_random(num);
Utl.playSound(eqw_Const.soundsList.man_passcall[idx]);
break;
case 2://女
var num = eqw_Const.soundsList.woman_passcall.length;
var idx = ifast_random(num);
Utl.playSound(eqw_Const.soundsList.woman_passcall[idx]);
break;
}
}
eqw_Logic.play_jiaofen = function(sex,call){
switch(sex){
default://男
var idx1 = parseInt(call/5)-1;
var num = eqw_Const.soundsList.man_call[idx1].length;
var idx = ifast_random(num);
Utl.playSound(eqw_Const.soundsList.man_call[idx1][idx]);
break;
case 2://女
var idx1 = parseInt(call/5)-1;
var num = eqw_Const.soundsList.woman_call[idx1].length;
var idx = ifast_random(num);
Utl.playSound(eqw_Const.soundsList.woman_call[idx1][idx]);
break;
}
}
eqw_Logic.play_flower = function(sex,flower){
switch(sex){
default://男
var num = eqw_Const.soundsList.man_flower[flower-1].length;
var idx = ifast_random(num);
Utl.playSound(eqw_Const.soundsList.man_flower[flower-1][idx]);
break;
case 2://女
var num = eqw_Const.soundsList.woman_flower[flower-1].length;
var idx = ifast_random(num);
Utl.playSound(eqw_Const.soundsList.woman_flower[flower-1][idx]);
break;
}
}
eqw_Logic.play_banker = function(){
Utl.playSound(eqw_Const.soundsList.banker);
}
eqw_Logic.play_outpoker = function(){
Utl.playSound(eqw_Const.soundsList.outpoker);
}
eqw_Logic.play_dealcards = function(){
Utl.playSound(eqw_Const.soundsList.dealcards);
}
eqw_Logic.play_burry = function(){
Utl.playSound(eqw_Const.soundsList.burry);
}
eqw_Logic.play_timeup = function(){
Utl.playSound(eqw_Const.soundsList.timeup);
}
eqw_Logic.play_singlebalance = function(){
Utl.playSound(eqw_Const.soundsList.singlebalance);
}
eqw_Logic.play_balance = function(){
Utl.playSound(eqw_Const.soundsList.balance);
}
eqw_Logic.play_score = function(){
Utl.playSound(eqw_Const.soundsList.score);
}

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,297 @@
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)
{
//游戏初始化代码
Logic.AppStart();
eqw_Logic.GameStart();
};
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);
};
gameabc_face.box_doend=function(id,sx,timelen)
{
//play_box 结束事件
//showmessage("box_doend:"+id+"/"+sx+"/"+timelen);
//logmessage("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);
eqw_GameUI.onloadurl(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)
{
//游戏接口代码
};
gameabc_face.onresize=function(pmw/*屏幕宽*/,pmh/*屏幕宽*/,sjweww/*设计宽*/,sjnewh/*设计宽*/,nweww/*显示宽*/,newh/*显示高*/)
{
//屏幕变化
// 在此调整 列表控件的宽高和区域 不是整体缩放
//logmessage("onresize:"+pmw+"/"+pmh+"/"+sjweww+"/"+sjnewh+"/"+nweww+"/"+newh);
};
gameabc_face.gamebegindraw=function(gameid, spid, times, timelong)
{
//更新开始代码
GameUI.utlgamebegindraw(gameid, spid, times, timelong);
eqw_GameUI.utlgamebegindraw(gameid, spid, times, timelong);
};
gameabc_face.gameenddraw=function(gameid, spid, times, timelong)
{
//更新完成代码
GameUI.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);
eqw_GameUI.utlmousedown(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);
eqw_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);
};
gameabc_face.mouseup=function(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2)
{
//点击弹起代码
//可以通过spid_down和spid_up 的比较 来判断是 点击还是 移动
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);
eqw_GameUI.utlmouseup(gameid, spid_down, downx, downy, spid_up, upx, upy, timelong, no1, no2);
//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);
eqw_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);
};
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);
eqw_GameUI.utlgamemydraw(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);
eqw_GameUI.utlgamemydrawbegin(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);
eqw_GameUI.utlontimer(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);
};
gameabc_face.tcpmessage=function(tcpid,data)
{
//logmessage("tcpread:"+data);
//Net._ReceiveData(data);
//Net_nn.TcpMessage(tcpid,data);
};
gameabc_face.tcpdisconnected=function(tcpid)
{
//logmessage("tcpclose:"+tcpid);
//Logic.DisConnect();
};
gameabc_face.tcperror=function(tcpid,data)
{
//logmessage("tcperror:"+tcpid);
};
gameabc_face.httpmessage=function(myid,url,data)
{
/*
ifast_http(1,"web/test.txt",1);//获取文件 同域
*/
//logmessage("httpread:"+myid+"/"+url+":"+data);
};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long