48 lines
1.1 KiB
Plaintext
48 lines
1.1 KiB
Plaintext
/*
|
|
文件名:Socket.nut
|
|
路径:Core/ExtraCalss/Socket/Socket.nut
|
|
创建日期:2024-11-30 19:55
|
|
文件用途:
|
|
*/
|
|
_Socket_Map_ <- [];
|
|
class Socket {
|
|
//监听器
|
|
Listeners = null;
|
|
//客户端
|
|
Client = null;
|
|
|
|
constructor() {
|
|
//创建监听器
|
|
this.Listeners = Socket_CreateListener();
|
|
//创建客户端
|
|
this.Client = Socket_CreateClient(this.Listeners);
|
|
}
|
|
|
|
/*
|
|
* @函数作用: 绑定函数
|
|
* @参数 Type 绑定类型
|
|
* @参数 Func 绑定函数
|
|
*/
|
|
function BindFunc(Type, Func) {
|
|
Socket_BindFunc(Client, Type, Func);
|
|
}
|
|
|
|
/*
|
|
* @函数作用: 连接到服务器
|
|
* @参数 IpAddr 服务器IP地址
|
|
* @参数 Port 服务器端口
|
|
* @参数 AsyncConnect 是否异步连接
|
|
* @返回值 连接结果
|
|
*/
|
|
function Connect(IpAddr, Port, AsyncConnect) {
|
|
_Socket_Map_.push(this);
|
|
return Socket_Connect(this.Client, IpAddr, Port, AsyncConnect);
|
|
}
|
|
|
|
/*
|
|
* @函数作用: 执行包逻辑
|
|
*/
|
|
function DispatchPacket() {
|
|
Socket_DispatchPacket(this.Client);
|
|
}
|
|
} |