using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using Chop.Rooms; namespace Chop.Game.Rooms { /// /// This is not an actual room. It's more like an advertisement in the "offical" tab. /// public class OfficialRoom { public const int TYPE_ROOMTAG = 1; public const int TYPE_GUESTROOM = 2; public const int TYPE_PUBLICROOM = 3; public const int TYPE_CATEGORY = 4; public int _index; public string _popupCaption; public string _popupDesc; public bool _showDetails; public string _picText; public string _picRef; public int _folderID; public string _tag; public int _type; public int _userCount; public bool _open; public int _roomID; public NavigatorRoom _room; public void AddToPacket(ResponseBuilder message) { message.AppendInt32(_index); message.AppendString(_popupCaption); message.AppendString(_popupDesc); message.AppendInt32(_showDetails ? 1 : 0); message.AppendString(_picText); message.AppendString(_picRef); message.AppendInt32(_folderID); message.AppendInt32(_userCount); message.AppendInt32(_type); switch (_type) { case TYPE_ROOMTAG: message.AppendString(_tag); break; case TYPE_GUESTROOM: case TYPE_PUBLICROOM: _room.AddToPacket(message); break; case TYPE_CATEGORY: message.AppendBoolean(_open); break; } } public OfficialRoom(DataRow row) { _index = Convert.ToInt32(row["id"]); _popupCaption = Convert.ToString(row["popup_caption"]); _popupDesc = Convert.ToString(row["popup_desc"]); _showDetails = Convert.ToString(row["show_details"]) == "1"; _picText = Convert.ToString(row["picture_text"]); _picRef = Convert.ToString(row["picture_ref"]); _folderID = Convert.ToInt32(row["folder_id"]); _tag = Convert.ToString(row["tag"]); _type = Convert.ToInt32(row["type"]); _open = Convert.ToString(row["open"]) == "1"; _roomID = Convert.ToInt32(row["room_id"]); _room = Core.NavigatorManager.GetRoom(_roomID); } } }