2024-08-17 14:27:18 +08:00
|
|
|
|
|
2024-08-22 20:37:39 +08:00
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using AppGame;
|
|
|
|
|
using AppGame.Sync;
|
2024-08-17 14:27:18 +08:00
|
|
|
|
using Cysharp.Threading.Tasks;
|
|
|
|
|
using Plugins.JNGame.Network;
|
2024-08-22 20:37:39 +08:00
|
|
|
|
using Plugins.JNGame.Network.Action;
|
2024-08-17 14:27:18 +08:00
|
|
|
|
|
|
|
|
|
public class JNGSocket : JNSocket
|
|
|
|
|
{
|
2024-08-22 20:37:39 +08:00
|
|
|
|
public override async Task OnInit()
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
AddListener((int)NActionEnum.ServerClientDisconnect,OnServerClientDisconnect);
|
|
|
|
|
|
|
|
|
|
await base.OnInit();
|
|
|
|
|
}
|
|
|
|
|
|
2024-08-17 14:27:18 +08:00
|
|
|
|
protected override async UniTask<string> GetUrl()
|
|
|
|
|
{
|
|
|
|
|
await UniTask.NextFrame();
|
|
|
|
|
return "ws://127.0.0.1:8080/websocket";
|
|
|
|
|
}
|
2024-08-22 20:37:39 +08:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 有客户端断开服务器连接
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="obj"></param>
|
|
|
|
|
private void OnServerClientDisconnect(byte[] data)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
var disconnect = JNClientDisconnect.Parser.ParseFrom(data);
|
|
|
|
|
|
|
|
|
|
//断开Tile服务器连接
|
|
|
|
|
(App.Game.Client as JNGTileClientSystem)?.RemoveSocket(disconnect.ClientId);
|
|
|
|
|
(App.Game.Server as JNGTileServerSystem)?.RemoveSocket(disconnect.ClientId);
|
|
|
|
|
|
|
|
|
|
}
|
2024-08-17 14:27:18 +08:00
|
|
|
|
}
|