Ejemplo n.º 1
0
        public static void HandleHousingSetPrivacyLevel(WorldSession session, ClientHousingSetPrivacyLevel housingSetPrivacyLevel)
        {
            if (!(session.Player.Map is ResidenceMap residenceMap))
            {
                throw new InvalidPacketValueException();
            }

            residenceMap.SetPrivacyLevel(session.Player, housingSetPrivacyLevel);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Set <see cref="ResidencePrivacyLevel"/>, this is called directly from a packet hander.
        /// </summary>
        public void SetPrivacyLevel(Player player, ClientHousingSetPrivacyLevel housingSetPrivacyLevel)
        {
            if (!residence.CanModifyResidence(player.CharacterId))
            {
                throw new InvalidPacketValueException();
            }

            residence.PrivacyLevel = housingSetPrivacyLevel.PrivacyLevel;
            SendHousingPrivacy();
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Set <see cref="ResidencePrivacyLevel"/>, this is called directly from a packet hander.
        /// </summary>
        public void SetPrivacyLevel(Player player, ClientHousingSetPrivacyLevel housingSetPrivacyLevel)
        {
            if (!residence.CanModifyResidence(player.CharacterId))
            {
                throw new InvalidPacketValueException();
            }

            if (housingSetPrivacyLevel.PrivacyLevel == ResidencePrivacyLevel.Public)
            {
                ResidenceManager.RegisterResidenceVists(residence.Id, residence.OwnerName, residence.Name);
            }
            else
            {
                ResidenceManager.DeregisterResidenceVists(residence.Id);
            }

            residence.PrivacyLevel = housingSetPrivacyLevel.PrivacyLevel;
            SendHousingPrivacy();
        }
Ejemplo n.º 4
0
        public static void HandleHousingSetPrivacyLevel(WorldSession session, ClientHousingSetPrivacyLevel housingSetPrivacyLevel)
        {
            if (session.Player.Map is not ResidenceMapInstance)
            {
                throw new InvalidPacketValueException();
            }

            if (session.Player.ResidenceManager.Residence == null)
            {
                throw new InvalidPacketValueException();
            }

            if (housingSetPrivacyLevel.PrivacyLevel == ResidencePrivacyLevel.Public)
            {
                GlobalResidenceManager.Instance.RegisterResidenceVists(session.Player.ResidenceManager.Residence, session.Player);
            }
            else
            {
                GlobalResidenceManager.Instance.DeregisterResidenceVists(session.Player.ResidenceManager.Residence.Id);
            }

            session.Player.ResidenceManager.SetResidencePrivacy(housingSetPrivacyLevel.PrivacyLevel);
        }