Skip to content

Instantly share code, notes, and snippets.

View RoughlyUnderscore's full-sized avatar
🥲

Roughly_ RoughlyUnderscore

🥲
View GitHub Profile
package /*your-package*/;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.ToString;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
@IllusionTheDev
IllusionTheDev / KnockbackUtil.java
Last active January 8, 2025 06:35
Simulate realistic player knockback
// Ported from Exerosis' kotlin example
public class KnockbackUtil {
private static final double FRICTION = 1.0;
private static final double HORIZONTAL = 0.40;
private static final double VERTICAL = 0.36075;
private static final double EXTRA_VERTICAL = 0.1;
private static final double EXTRA_HORIZONTAL = 1.5;
public static Vector getKnockback(Location entityLoc, Entity attacker) {
@DanielTheDev
DanielTheDev / NPC.java
Last active November 11, 2024 18:55
Advanced NPC Util. [1.17] (Packets)
import com.mojang.authlib.GameProfile;
import com.mojang.authlib.properties.Property;
import com.mojang.datafixers.util.Pair;
import io.netty.buffer.Unpooled;
import net.minecraft.core.BlockPosition;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.PacketDataSerializer;
import net.minecraft.network.chat.IChatBaseComponent;
import net.minecraft.network.protocol.Packet;
import net.minecraft.network.protocol.game.*;
@pedroagrs
pedroagrs / ItemSerializer.java
Last active February 6, 2025 11:46
ItemStack Serializer - Base64
package yourpackage;
import org.bukkit.inventory.ItemStack;
import org.bukkit.util.io.BukkitObjectInputStream;
import org.bukkit.util.io.BukkitObjectOutputStream;
import org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;