コード例 #1
0
ファイル: GroupManager.cs プロジェクト: BjkGkh/Jamal2.5
        internal void SerializeGroupInfo(Group Group, ServerMessage Response, GameClient Session, Room Room, bool NewWindow = false)
        {
            DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0);
            DateTime Time = origin.AddSeconds(Group.CreateTime);
            Response.Init(Outgoing.SerializeGroupInfo);
            Response.AppendInt32(Group.Id);
            Response.AppendBoolean(true);
            Response.AppendInt32(Group.State); // Type (0 = 50k users, 1 = Request, 2 = blocked, 3 = ?, 4 = ?..
            Response.AppendString(Group.Name);
            Response.AppendString(Group.Description);
            Response.AppendString(Group.Badge);
            Response.AppendInt32(Group.RoomId);
            Response.AppendString((SilverwaveEnvironment.GetGame().GetRoomManager().GenerateRoomData(Group.RoomId) == null) ? "No room found.." : SilverwaveEnvironment.GetGame().GetRoomManager().GenerateRoomData(Group.RoomId).Name); // room name
            Response.AppendInt32((Group.CreatorId == Session.GetHabbo().Id) ? 3 : (Group.Requests.Contains(Session.GetHabbo().Id)) ? 2 : (Group.Members.ContainsKey(Session.GetHabbo().Id)) ? 1 : 0); //Member
            Response.AppendInt32(Group.Members.Count); // Members
            Response.AppendBoolean(Session.GetHabbo().FavouriteGroup == Group.Id);
            Response.AppendString(Time.Day + "-" + Time.Month + "-" + Time.Year);
            Response.AppendBoolean(Group.CreatorId == Session.GetHabbo().Id);
            Response.AppendBoolean((Group.Admins.ContainsKey(Session.GetHabbo().Id)));
            Response.AppendString((SilverwaveEnvironment.getHabboForId(Group.CreatorId) == null) ? "" : SilverwaveEnvironment.getHabboForId(Group.CreatorId).Username);
            Response.AppendBoolean(NewWindow); // Show group info
            Response.AppendBoolean(Group.AdminOnlyDeco == 0); // Any user can place furni in home room
            Response.AppendInt32(Group.Requests.Count); // Pending users
            Response.AppendBoolean(true);
            if (Room != null)
                Room.SendMessage(Response);
            else if (Session != null)
                Session.SendMessage(Response);

            /*if (Session.GetHabbo().Id == Group.CreatorId)
                SerializeGroupInfo(Group, Response, Session, false);*/
        }
コード例 #2
0
 internal void BroadcastCurrentSongData(Room Instance)
 {
     if (mSong != null)
         Instance.SendMessage(JukeboxComposer.ComposePlayingComposer(mSong.SongData.Id, mSongQueuePosition, 0));
     else
         Instance.SendMessage(JukeboxComposer.ComposePlayingComposer(0, 0, 0));
 }