public static void HandleHousingFlagsUpdate(WorldSession session, ClientHousingFlagsUpdate flagsUpdate) { if (session.Player.Map is not ResidenceMapInstance residenceMap) { throw new InvalidPacketValueException(); } residenceMap.UpdateResidenceFlags(flagsUpdate.TargetResidence, session.Player, flagsUpdate); }
public static void HandleHousingFlagsUpdate(WorldSession session, ClientHousingFlagsUpdate flagsUpdate) { if (!(session.Player.Map is ResidenceMap residenceMap)) { throw new InvalidPacketValueException(); } residenceMap.UpdateResidenceFlags(session.Player, flagsUpdate); }
/// <summary> /// UpdateResidenceFlags <see cref="Residence"/>, this is called directly from a packet hander. /// </summary> public void UpdateResidenceFlags(Player player, ClientHousingFlagsUpdate flagsUpdate) { if (!residence.CanModifyResidence(player.CharacterId)) { throw new InvalidPacketValueException(); } residence.Flags = flagsUpdate.Flags; residence.ResourceSharing = flagsUpdate.ResourceSharing; residence.GardenSharing = flagsUpdate.GardenSharing; SendHousingProperties(); }