Added talisman read limit permission.

This commit is contained in:
Auxilor
2021-01-12 15:48:43 +00:00
parent ddc42e4baa
commit 5561e0fdf3
2 changed files with 24 additions and 0 deletions

View File

@@ -172,6 +172,10 @@ public class TalismanChecks {
continue;
}
if (found.size() >= TalismanUtils.getLimit(player)) {
break;
}
found.add(talisman);
}

View File

@@ -8,6 +8,8 @@ import com.willfp.eco.util.integrations.placeholder.PlaceholderManager;
import com.willfp.talismans.talismans.Talisman;
import com.willfp.talismans.talismans.Talismans;
import lombok.experimental.UtilityClass;
import org.bukkit.entity.Player;
import org.bukkit.permissions.PermissionAttachmentInfo;
import org.jetbrains.annotations.NotNull;
@UtilityClass
@@ -71,4 +73,22 @@ public class TalismanUtils {
);
}
}
/**
* Get limit for talisman reading.
*
* @param player The player to check.
* @return The limit.
*/
public static int getLimit(@NotNull final Player player) {
String prefix = "talismans.limit.";
for (PermissionAttachmentInfo permissionAttachmentInfo : player.getEffectivePermissions()) {
String permission = permissionAttachmentInfo.getPermission();
if (permission.startsWith(prefix)) {
return Integer.parseInt(permission.substring(permission.lastIndexOf(".") + 1));
}
}
return 100000;
}
}