public virtual void HandleMcpeResourcePacksInfo(McpeResourcePacksInfo message) { //McpeResourcePackClientResponse response = new McpeResourcePackClientResponse(); //response.responseStatus = 3; //SendPackage(response); if (message.behahaviorpackinfos.Count != 0) { var resourcePackIds = new ResourcePackIds(); foreach (ResourcePackInfo packInfo in message.behahaviorpackinfos) { resourcePackIds.Add(packInfo.PackIdVersion.Id); } var response = new McpeResourcePackClientResponse(); response.responseStatus = 2; response.resourcepackids = resourcePackIds; Client.SendPacket(response); } else { var response = new McpeResourcePackClientResponse(); response.responseStatus = 3; Client.SendPacket(response); } }
public override void SendResourcePacksInfo() { McpeResourcePacksInfo info = McpeResourcePacksInfo.CreateObject(); if (_serverHaveResources) { info.mustAccept = _plugin.ResourcePackProvider.MustAccept; info.behahaviorpackinfos = new ResourcePackInfos(); info.behahaviorpackinfos.AddRange(_plugin.ResourcePackProvider.GetResourcePackInfos()); } SendPacket(info); }
public override void HandleMcpeResourcePacksInfo(McpeResourcePacksInfo message) { Log.Warn($"HEX: \n{Packet.HexDump(message.Bytes)}"); var sb = new StringBuilder(); sb.AppendLine(); sb.AppendLine("Resource packs:"); foreach (ResourcePackInfo info in message.resourcepackinfos) { sb.AppendLine($"ID={info.PackIdVersion.Id}, Version={info.PackIdVersion.Version}, Unknown={info.Size}"); } sb.AppendLine("Behavior packs:"); foreach (ResourcePackInfo info in message.behahaviorpackinfos) { sb.AppendLine($"ID={info.PackIdVersion.Id}, Version={info.PackIdVersion.Version}"); } Log.Debug(sb.ToString()); base.HandleMcpeResourcePacksInfo(message); }