50 lines
1.8 KiB
C#
50 lines
1.8 KiB
C#
using LightlessSync.API.Data.Enum;
|
|
|
|
namespace LightlessSync.API.Data.Extensions;
|
|
|
|
public static class GroupUserPermissionsExtensions
|
|
{
|
|
public static bool IsDisableAnimations(this GroupUserPreferredPermissions perm)
|
|
{
|
|
return perm.HasFlag(GroupUserPreferredPermissions.DisableAnimations);
|
|
}
|
|
|
|
public static bool IsDisableSounds(this GroupUserPreferredPermissions perm)
|
|
{
|
|
return perm.HasFlag(GroupUserPreferredPermissions.DisableSounds);
|
|
}
|
|
|
|
public static bool IsDisableVFX(this GroupUserPreferredPermissions perm)
|
|
{
|
|
return perm.HasFlag(GroupUserPreferredPermissions.DisableVFX);
|
|
}
|
|
|
|
public static bool IsPaused(this GroupUserPreferredPermissions perm)
|
|
{
|
|
return perm.HasFlag(GroupUserPreferredPermissions.Paused);
|
|
}
|
|
|
|
public static void SetDisableAnimations(this ref GroupUserPreferredPermissions perm, bool set)
|
|
{
|
|
if (set) perm |= GroupUserPreferredPermissions.DisableAnimations;
|
|
else perm &= ~GroupUserPreferredPermissions.DisableAnimations;
|
|
}
|
|
|
|
public static void SetDisableSounds(this ref GroupUserPreferredPermissions perm, bool set)
|
|
{
|
|
if (set) perm |= GroupUserPreferredPermissions.DisableSounds;
|
|
else perm &= ~GroupUserPreferredPermissions.DisableSounds;
|
|
}
|
|
|
|
public static void SetDisableVFX(this ref GroupUserPreferredPermissions perm, bool set)
|
|
{
|
|
if (set) perm |= GroupUserPreferredPermissions.DisableVFX;
|
|
else perm &= ~GroupUserPreferredPermissions.DisableVFX;
|
|
}
|
|
|
|
public static void SetPaused(this ref GroupUserPreferredPermissions perm, bool set)
|
|
{
|
|
if (set) perm |= GroupUserPreferredPermissions.Paused;
|
|
else perm &= ~GroupUserPreferredPermissions.Paused;
|
|
}
|
|
} |