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);
 | |
|     }
 | |
| } |