private static void GetData(GetDataEventArgs args) { var type = args.MsgID; var player = TShock.Players[args.Msg.whoAmI]; if (player == null) { args.Handled = true; return; } if (!player.ConnectionAlive) { args.Handled = true; return; } using (var data = new MemoryStream(args.Msg.readBuffer, args.Index, args.Length)) { try { if (GetDataHandlers.HandlerGetData(type, player, data)) { args.Handled = true; } } catch (Exception ex) { Log.ConsoleError(ex.ToString()); } } }
public override void Initialize() { ServerApi.Hooks.GameUpdate.Register(this, OnUpdate); ServerApi.Hooks.NetGreetPlayer.Register(this, OnGreetPlayer); ServerApi.Hooks.NetSendBytes.Register(this, OnSendBytes); ServerApi.Hooks.NetGetData.Register(this, GetData); ServerApi.Hooks.GameInitialize.Register(this, OnInitialize); ServerApi.Hooks.ServerLeave.Register(this, OnLeave); ServerApi.Hooks.ServerChat.Register(this, OnChat); GetDataHandlers.InitGetDataHandler(); Config = new CTGConfig(); }