81 lines
1.8 KiB
JavaScript
81 lines
1.8 KiB
JavaScript
///////////////////////////////////////////////////
|
|
//////////////cls_youle_room_tcplist: tcp连接列表类///////////
|
|
///////////////////////////////////////////////////
|
|
var cls_youle_room_tcplist = cls_youle_room_tcplist || {
|
|
new: function() {
|
|
var tcplist = {};
|
|
tcplist.list = [];
|
|
|
|
//方法
|
|
tcplist.method = {};
|
|
|
|
//载入tcp连接
|
|
tcplist.method.load_tcp = function(str_tcpid, o_player){
|
|
return cls_youle_room_tcplist.load_tcp(tcplist, str_tcpid, o_player);
|
|
}
|
|
|
|
//查找tcp连接
|
|
tcplist.method.find_tcp = function(str_tcpid){
|
|
return cls_youle_room_tcplist.find_tcp(tcplist, str_tcpid);
|
|
}
|
|
|
|
//删除tcp连接
|
|
tcplist.method.delete_tcp = function(str_tcpid){
|
|
return cls_youle_room_tcplist.delete_tcp(tcplist, str_tcpid);
|
|
}
|
|
|
|
return tcplist;
|
|
},
|
|
|
|
//载入tcp连接
|
|
load_tcp: function(o_tcplsit, str_tcpid, o_player){
|
|
var idx = cls_youle_room_tcplist.aryidx(str_tcpid);
|
|
if (idx == -1){
|
|
return null;
|
|
}
|
|
if (o_tcplsit.list.length <= idx){
|
|
o_tcplsit.list.length = idx + 1;
|
|
}
|
|
var new_tcp = {};
|
|
new_tcp.tcpid = str_tcpid;
|
|
new_tcp.o_player = o_player;
|
|
o_tcplsit.list[idx] = new_tcp;
|
|
return new_tcp;
|
|
},
|
|
|
|
//查找tcp连接
|
|
find_tcp: function(o_tcplsit, str_tcpid){
|
|
var idx = cls_youle_room_tcplist.aryidx(str_tcpid);
|
|
if (idx == -1){
|
|
return null;
|
|
}
|
|
if (o_tcplsit.list.length <= idx){
|
|
return null;
|
|
}
|
|
return o_tcplsit.list[idx];
|
|
},
|
|
|
|
//删除tcp连接
|
|
delete_tcp: function(o_tcplsit, str_tcpid){
|
|
var idx = cls_youle_room_tcplist.aryidx(str_tcpid);
|
|
if (idx == -1){
|
|
return;
|
|
}
|
|
if (o_tcplsit.list.length <= idx){
|
|
return;
|
|
}
|
|
o_tcplsit.list[idx] = null;
|
|
},
|
|
|
|
//计算tcp连接的数组下标
|
|
aryidx: function(str_tcpid){
|
|
var idx = parseInt(str_tcpid.replace("tcp_", ""));
|
|
if (isNaN(idx)){
|
|
return -1;
|
|
}
|
|
return idx - 10000;
|
|
}
|
|
}
|
|
|
|
//tcp连接列表
|
|
youle_room.tcps = cls_youle_room_tcplist.new(); |