Skip to content

Commit 73edc99

Browse files
committed
Version bump & Fix Scp Lockers
1 parent 04a298b commit 73edc99

4 files changed

Lines changed: 11 additions & 8 deletions

File tree

RemoteKeycard/API/Extensions/PlayerExtensions.cs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,16 @@ public static class PlayerExtensions
1616
/// </summary>
1717
/// <param name="player"><see cref="Player"/> trying to interact.</param>
1818
/// <param name="permissions">The permission that's gonna be searched for.</param>
19+
/// <param name="requiresAllPermissions">Whether all permissions are required.</param>
1920
/// <returns>Whether the player has the required keycard.</returns>
20-
public static bool HasKeycardPermission(this Player player, KeycardPermissions permissions)
21+
public static bool HasKeycardPermission(this Player player, KeycardPermissions permissions, bool requiresAllPermissions = false)
2122
{
22-
if(RemoteKeycard.Instance.Config.AmnesiaMatters && player.GetEffectActive<Amnesia>())
23+
if (RemoteKeycard.Instance.Config.AmnesiaMatters && player.GetEffectActive<Amnesia>())
2324
return false;
2425

25-
return player.Items.Any(item => item is Keycard keycard && (keycard.Base.Permissions & permissions) != 0);
26+
return requiresAllPermissions ?
27+
player.Items.Any(item => item is Keycard keycard && keycard.Base.Permissions.HasFlagFast(permissions))
28+
: player.Items.Any(item => item is Keycard keycard && (keycard.Base.Permissions & permissions) != 0);
2629
}
2730
}
2831
}

RemoteKeycard/EventsHandler.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ namespace RemoteKeycard
1313
/// </summary>
1414
public class EventsHandler
1515
{
16-
private Config.Config config;
16+
private readonly Config.Config config;
1717

1818
/// <summary>
1919
/// Initializes a new instance of the <see cref="EventsHandler"/> class.
@@ -132,7 +132,7 @@ private void OnLockerInteract(InteractingLockerEventArgs ev)
132132
if(!config.AffectScpLockers)
133133
return;
134134

135-
if(!ev.IsAllowed && ev.Chamber != null && ev.Player.HasKeycardPermission(ev.Chamber.RequiredPermissions))
135+
if(!ev.IsAllowed && ev.Chamber != null && ev.Player.HasKeycardPermission(ev.Chamber.RequiredPermissions, true))
136136
{
137137
if(config.Extras.EnableEvents)
138138
{

RemoteKeycard/RemoteKeycard.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,13 @@ public class RemoteKeycard : Plugin<Config.Config>
2121
public override string Prefix => "remotekeycard";
2222

2323
/// <inheritdoc/>
24-
public override Version RequiredExiledVersion => new Version(3, 0, 0);
24+
public override Version RequiredExiledVersion => new Version(4, 1, 0);
2525

2626
/// <inheritdoc/>
2727
public override string Author => "Beryl";
2828

2929
/// <inheritdoc/>
30-
public override Version Version => new Version(3, 0, 0);
30+
public override Version Version => new Version(3, 1, 0);
3131

3232
/// <inheritdoc cref="EventsHandler"/>
3333
public EventsHandler Handler { get; private set; }

RemoteKeycard/RemoteKeycard.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
</PropertyGroup>
1414

1515
<ItemGroup>
16-
<PackageReference Include="EXILED" Version="3.0.0-alpha.83" />
16+
<PackageReference Include="EXILED" Version="4.1.5" />
1717
</ItemGroup>
1818

1919
<ItemGroup>

0 commit comments

Comments
 (0)