public List<string> GetRightsForHabbo(Habbo Habbo) { List<string> UserRights = new List<string>(); UserRights.AddRange(GetRightsForRank(Habbo.Rank)); foreach (string SubscriptionId in Habbo.GetSubscriptionManager().SubList) { UserRights.AddRange(GetRightsForSub(SubscriptionId)); } return UserRights; }
public void Stop() { if (GetHabbo() != null) { Habbo.OnDisconnect(); Habbo = null; } if (GetConnection() != null) { Connection = null; } }
public void Login(string AuthTicket) { try { Habbo NewHabbo = Authenticator.TryLoginHabbo(AuthTicket); UberEnvironment.GetGame().GetClientManager().LogClonesOut(NewHabbo.Username); this.Habbo = NewHabbo; this.Habbo.LoadData(); } catch (IncorrectLoginException e) { SendNotif("Login error: " + e.Message); Disconnect(); return; } try { UberEnvironment.GetGame().GetBanManager().CheckForBanConflicts(this); } catch (ModerationBanException e) { SendBanMessage(e.Message); Disconnect(); return; } using (DatabaseClient dbClient = UberEnvironment.GetDatabase().GetClient()) { dbClient.ExecuteQuery("UPDATE users SET online = '1', auth_ticket = '', ip_last = '" + GetConnection().IPAddress + "' WHERE id = '" + GetHabbo().Id + "' LIMIT 1"); dbClient.ExecuteQuery("UPDATE user_info SET login_timestamp = '" + UberEnvironment.GetUnixTimestamp() + "' WHERE user_id = '" + GetHabbo().Id + "' LIMIT 1"); } List<string> Rights = UberEnvironment.GetGame().GetRoleManager().GetRightsForHabbo(GetHabbo()); ServerPacket _fuse = new ServerPacket(2); _fuse.AppendInt32(Rights.Count); foreach (string Right in Rights) { _fuse.AppendStringWithBreak(Right); } SendPacket(_fuse); if (GetHabbo().HasFuse("fuse_mod")) { SendPacket(UberEnvironment.GetGame().GetModerationTool().SerializeTool()); UberEnvironment.GetGame().GetModerationTool().SendOpenTickets(this); } SendPacket(GetHabbo().GetAvatarEffectsInventoryComponent().Serialize()); ServerPacket packet = new ServerPacket(290); packet.AppendBoolean(true); packet.AppendBoolean(false); SendPacket(packet); SendPacket(new ServerPacket(3)); packet = new ServerPacket(517); packet.AppendBoolean(true); SendPacket(packet); if (UberEnvironment.GetGame().GetPixelManager().NeedsUpdate(this)) { UberEnvironment.GetGame().GetPixelManager().GivePixels(this); } packet = new ServerPacket(455); packet.AppendUInt(GetHabbo().HomeRoom); SendPacket(packet); packet = new ServerPacket(458); packet.AppendInt32(30); packet.AppendInt32(GetHabbo().FavoriteRooms.Count); foreach (uint Id in GetHabbo().FavoriteRooms) { packet.AppendUInt(Id); } SendPacket(packet); WelcomeMesage("Please change your welcome Message in GameClient.cs\n\n-PowahAlert"); UberEnvironment.GetGame().GetAchievementManager().UnlockAchievement(this, 11, 1); }