Skip to content

Instantly share code, notes, and snippets.

View dlsf's full-sized avatar
🗨️
Discord: das_

Daniel Scherf dlsf

🗨️
Discord: das_
  • Dresden, Germany
  • 11:54 (UTC +02:00)
View GitHub Profile
@dlsf
dlsf / AdvancedItemBuilder.java
Last active January 22, 2021 12:34
Advanced Bukkit ItemBuilder
import java.util.Arrays;
import java.util.function.Consumer;
import net.seliba.lobby.listener.InventoryClickListener;
import net.seliba.lobby.listener.PlayerInteractListener;
import org.bukkit.Material;
import org.bukkit.event.block.Action;
import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
@dlsf
dlsf / Config.class
Last active January 12, 2022 11:18
Config Class
import java.io.File;
import java.io.IOException;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.plugin.java.JavaPlugin;
public class Config extends YamlConfiguration {
private final String name;
private final JavaPlugin javaPlugin;
/*
* Copyright (C) Daniel Scherf - All Rights Reserved
* Unauthorized copying of this file, via any medium is strictly prohibited
* Proprietary and confidential
* Written by Daniel Scherf <munita.gavai@gmail.com>, 2019
*/
package net.seliba.dailyquest.configuration;
import java.io.File;
@dlsf
dlsf / RateLimiter.java
Last active March 21, 2021 15:31 — forked from JohnnyJayJay/RateLimiter.java
RateLimiter
import java.util.concurrent.TimeUnit;
import java.util.Map;
import java.util.HashMap;
import java.util.function.Function;
public class RateLimiter<T> {
private final long rateLimit;
private final Function<T, ?> keyMapper;
private final Map<?, Long> timestamps;