using System; using System.Collections.Generic; using System.Linq; using System.Text; using DuckEmulator.HabboHotel.Outside.Messages.Types; using DuckEmulator.HabboHotel.Outside.Clients; namespace DuckEmulator.HabboHotel.Outside.Rooms { class RoomEvent { internal uint RoomId; internal string Name; internal string Description; internal int Category; internal List Tags; internal DateTime Started = DateTime.Now; internal uint HabboId; internal string GetTime() { return Started.ToShortTimeString(); } internal RoomEvent(uint RoomId, string Name, string Description, int Category, List Tags) { this.RoomId = RoomId; this.Name = Name; this.Description = Description; this.Category = Category; this.Tags = Tags; this.HabboId = DuckEnvironment.ClientManager.GetIdByUsername(GetRoom().Owner); } internal void Serialize(ServerMessage Message) { Message.AppendStringWithBreak(GetClient().GetHabbo().Id.ToString()); Message.AppendStringWithBreak(GetClient().GetHabbo().CurrentRoomId.ToString()); Message.AppendStringWithBreak(GetClient().GetHabbo().Username); Message.AppendInt32(Category); Message.AppendStringWithBreak(Name); Message.AppendStringWithBreak(Description); Message.AppendStringWithBreak(GetTime()); Message.AppendInt32(Tags.Count); foreach (string Tag in Tags) { Message.AppendStringWithBreak(Tag); } } internal Client GetClient() { return DuckEnvironment.ClientManager.GetClientByHabboId(HabboId); } internal Room GetRoom() { return DuckEnvironment.RoomManager.GetRoom(RoomId); } } }