This commit is contained in:
Matt Masters 2023-02-01 10:51:32 -06:00
parent 6cab66badf
commit 0195469165
34 changed files with 1877 additions and 1125 deletions

83
.gitignore vendored
View File

@ -1,54 +1,31 @@
.gradle/7.5.1/checksums/checksums.lock # Compiled class file
.gradle/7.5.1/checksums/md5-checksums.bin *.class
.gradle/7.5.1/checksums/sha1-checksums.bin
.gradle/7.5.1/dependencies-accessors/dependencies-accessors.lock # Log file
.gradle/7.5.1/dependencies-accessors/gc.properties *.log
.gradle/7.5.1/executionHistory/executionHistory.bin
.gradle/7.5.1/executionHistory/executionHistory.lock # BlueJ files
.gradle/7.5.1/fileChanges/last-build.bin *.ctxt
.gradle/7.5.1/fileHashes/fileHashes.bin
.gradle/7.5.1/fileHashes/fileHashes.lock # Mobile Tools for Java (J2ME)
.gradle/7.5.1/fileHashes/resourceHashesCache.bin .mtj.tmp/
.gradle/7.5.1/gc.properties
.gradle/buildOutputCleanup/buildOutputCleanup.lock # Package Files #
.gradle/buildOutputCleanup/cache.properties *.jar
.gradle/buildOutputCleanup/outputFiles.bin *.war
.gradle/vcs-1/gc.properties *.nar
.idea/uiDesigner.xml *.ear
build/classes/java/main/io/github/paldiu/config/ConfigValues.class *.zip
build/classes/java/main/io/github/paldiu/config/YamlWrapper.class *.tar.gz
build/classes/java/main/io/github/paldiu/CraftingListener.class *.rar
build/classes/java/main/io/github/paldiu/CraftingUtils.class
build/classes/java/main/io/github/paldiu/recipes/BarrierRecipe.class # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
build/classes/java/main/io/github/paldiu/recipes/BedrockRecipe.class hs_err_pid*
build/classes/java/main/io/github/paldiu/recipes/BellRecipe.class replay_pid*
build/classes/java/main/io/github/paldiu/recipes/Craftable.class
build/classes/java/main/io/github/paldiu/recipes/CryingObsidianRecipe.class .gradle/
build/classes/java/main/io/github/paldiu/recipes/DragonEggRecipe.class .idea/
build/classes/java/main/io/github/paldiu/recipes/EggRecipes.class gradle/
build/classes/java/main/io/github/paldiu/recipes/ElytraRecipe.class *.xml
build/classes/java/main/io/github/paldiu/recipes/EndFrameRecipe.class .idea/inspectionProfiles/Project_Default.xml
build/classes/java/main/io/github/paldiu/recipes/HorseArmorRecipe.class
build/classes/java/main/io/github/paldiu/recipes/MusicDiscRecipes.class
build/classes/java/main/io/github/paldiu/recipes/NameTagRecipe.class
build/classes/java/main/io/github/paldiu/recipes/NetherStarRecipe.class
build/classes/java/main/io/github/paldiu/recipes/NetherWartRecipe.class
build/classes/java/main/io/github/paldiu/recipes/SaddleRecipe.class
build/classes/java/main/io/github/paldiu/recipes/SpawnerRecipe.class
build/classes/java/main/io/github/paldiu/recipes/TotemRecipe.class
build/classes/java/main/io/github/paldiu/recipes/TridentRecipe.class
build/classes/java/main/io/github/paldiu/ReloadCMD.class
build/classes/java/main/io/github/paldiu/Uncraftables.class
build/classes/java/main/org/bstats/Metrics$1.class
build/classes/java/main/org/bstats/Metrics$AdvancedBarChart.class
build/classes/java/main/org/bstats/Metrics$AdvancedPie.class
build/classes/java/main/org/bstats/Metrics$CustomChart.class
build/classes/java/main/org/bstats/Metrics$DrilldownPie.class
build/classes/java/main/org/bstats/Metrics$MultiLineChart.class
build/classes/java/main/org/bstats/Metrics$SimpleBarChart.class
build/classes/java/main/org/bstats/Metrics$SimplePie.class
build/classes/java/main/org/bstats/Metrics$SingleLineChart.class
build/classes/java/main/org/bstats/Metrics.class
build/libs/Uncraftables-1.1.0.jar
build/libs/Uncraftables-1.2.0.jar

35
build.gradle Normal file
View File

@ -0,0 +1,35 @@
plugins {
id 'java'
id 'maven-publish'
}
repositories {
mavenLocal()
maven {
url = uri('https://papermc.io/repo/repository/maven-public/')
}
maven {
url = uri('https://repo.maven.apache.org/maven2/')
}
}
dependencies {
implementation 'org.jetbrains:annotations:RELEASE'
implementation 'org.jetbrains:annotations:20.1.0'
implementation 'com.google.guava:guava:30.1.1-jre'
compileOnly 'io.papermc.paper:paper-api:1.19.3-R0.1-SNAPSHOT'
}
group = 'io.github.paldiu'
version = '1.2.0'
description = 'Uncraftables'
java.sourceCompatibility = JavaVersion.VERSION_17
publishing {
publications {
maven(MavenPublication) {
from(components.java)
}
}
}

240
gradlew vendored Normal file
View File

@ -0,0 +1,240 @@
#!/bin/sh
#
# Copyright © 2015-2021 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
##############################################################################
#
# Gradle start up script for POSIX generated by Gradle.
#
# Important for running:
#
# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
# noncompliant, but you have some other compliant shell such as ksh or
# bash, then to run this script, type that shell name before the whole
# command line, like:
#
# ksh Gradle
#
# Busybox and similar reduced shells will NOT work, because this script
# requires all of these POSIX shell features:
# * functions;
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
# * compound commands having a testable exit status, especially «case»;
# * various built-in commands including «command», «set», and «ulimit».
#
# Important for patching:
#
# (2) This script targets any POSIX shell, so it avoids extensions provided
# by Bash, Ksh, etc; in particular arrays are avoided.
#
# The "traditional" practice of packing multiple parameters into a
# space-separated string is a well documented source of bugs and security
# problems, so this is (mostly) avoided, by progressively accumulating
# options in "$@", and eventually passing that to Java.
#
# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
# see the in-line comments for details.
#
# There are tweaks for specific operating systems such as AIX, CygWin,
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
#
##############################################################################
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
app_path=$0
# Need this for daisy-chained symlinks.
while
APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
[ -h "$app_path" ]
do
ls=$( ls -ld "$app_path" )
link=${ls#*' -> '}
case $link in #(
/*) app_path=$link ;; #(
*) app_path=$APP_HOME$link ;;
esac
done
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
APP_NAME="Gradle"
APP_BASE_NAME=${0##*/}
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
warn () {
echo "$*"
} >&2
die () {
echo
echo "$*"
echo
exit 1
} >&2
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "$( uname )" in #(
CYGWIN* ) cygwin=true ;; #(
Darwin* ) darwin=true ;; #(
MSYS* | MINGW* ) msys=true ;; #(
NONSTOP* ) nonstop=true ;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD=$JAVA_HOME/jre/sh/java
else
JAVACMD=$JAVA_HOME/bin/java
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD=java
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
case $MAX_FD in #(
'' | soft) :;; #(
*)
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
fi
# Collect all arguments for the java command, stacking in reverse order:
# * args from the command line
# * the main class name
# * -classpath
# * -D...appname settings
# * --module-path (only if needed)
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
# For Cygwin or MSYS, switch paths to Windows format before running java
if "$cygwin" || "$msys" ; then
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
JAVACMD=$( cygpath --unix "$JAVACMD" )
# Now convert the arguments - kludge to limit ourselves to /bin/sh
for arg do
if
case $arg in #(
-*) false ;; # don't mess with options #(
/?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
[ -e "$t" ] ;; #(
*) false ;;
esac
then
arg=$( cygpath --path --ignore --mixed "$arg" )
fi
# Roll the args list around exactly as many times as the number of
# args, so each arg winds up back in the position where it started, but
# possibly modified.
#
# NB: a `for` loop captures its iteration list before it begins, so
# changing the positional parameters here affects neither the number of
# iterations, nor the values presented in `arg`.
shift # remove old arg
set -- "$@" "$arg" # push replacement arg
done
fi
# Collect all arguments for the java command;
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
# shell script including quotes and variable substitutions, so put them in
# double quotes to make sure that they get re-expanded; and
# * put everything else in single quotes, so that it's not re-expanded.
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
org.gradle.wrapper.GradleWrapperMain \
"$@"
# Stop when "xargs" is not available.
if ! command -v xargs >/dev/null 2>&1
then
die "xargs is not available"
fi
# Use "xargs" to parse quoted args.
#
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
#
# In Bash we could simply go:
#
# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
# set -- "${ARGS[@]}" "$@"
#
# but POSIX shell has neither arrays nor command substitution, so instead we
# post-process each arg (as a line of input to sed) to backslash-escape any
# character that might be a shell metacharacter, then use eval to reverse
# that process (while maintaining the separation between arguments), and wrap
# the whole thing up as a single "set" statement.
#
# This will of course break if any of these variables contains a newline or
# an unmatched quote.
#
eval "set -- $(
printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
xargs -n1 |
sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
tr '\n' ' '
)" '"$@"'
exec "$JAVACMD" "$@"

91
gradlew.bat vendored Normal file
View File

@ -0,0 +1,91 @@
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%"=="" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end
@rem End local scope for the variables with windows NT shell
if %ERRORLEVEL% equ 0 goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
set EXIT_CODE=%ERRORLEVEL%
if %EXIT_CODE% equ 0 set EXIT_CODE=1
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
exit /b %EXIT_CODE%
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega

44
pom.xml
View File

@ -1,44 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>dev.coomware</groupId>
<artifactId>Uncraftables</artifactId>
<version>1.1.0</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>papermc</id>
<url>https://papermc.io/repo/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.destroystokyo.paper</groupId>
<artifactId>paper-api</artifactId>
<version>1.16.1-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

5
settings.gradle Normal file
View File

@ -0,0 +1,5 @@
/*
* This file was generated by the Gradle 'init' task.
*/
rootProject.name = 'Uncraftables'

View File

@ -1,982 +0,0 @@
package dev.coomware;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
import org.bukkit.inventory.ShapelessRecipe;
public class Craftable {
private Uncraftables plugin;
private static final CraftingUtils util = Uncraftables.plugin.util;
public Craftable(Uncraftables instance) {
plugin = instance;
}
public void craftables() {
saddle();
leatherHorseArmor();
ironHorseArmor();
goldHorseArmor();
diamondHorseArmor();
nametag();
eggs();
spawner();
discs();
bedrock();
barrier();
bell();
netherstar();
elytra();
trident();
netherwart();
cryingObsidian();
endFrame();
totem();
}
private void totem() {
ShapedRecipe recipe = util.shaped(Material.TOTEM_OF_UNDYING, "totem_recipe");
recipe.shape("aea","ibi","aga");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('e', Material.EMERALD);
recipe.setIngredient('i', Material.GOLD_INGOT);
recipe.setIngredient('b', Material.GOLD_BLOCK);
recipe.setIngredient('g', Material.GOLDEN_APPLE);
plugin.server.addRecipe(recipe);
}
private void netherwart() {
ShapelessRecipe recipe = util.shapeless(Material.NETHER_WART, "netherwart_recipe");
recipe.addIngredient(1, Material.NETHER_WART_BLOCK);
recipe.getResult().setAmount(9);
plugin.server.addRecipe(recipe);
}
private void cryingObsidian() {
ShapelessRecipe recipe = util.shapeless(Material.CRYING_OBSIDIAN, "crying_obsidian_recipe");
recipe.addIngredient(1, Material.OBSIDIAN);
recipe.addIngredient(4, Material.GHAST_TEAR);
recipe.getResult().setAmount(2);
plugin.server.addRecipe(recipe);
}
private void endFrame() {
ShapedRecipe recipe = util.shaped(Material.END_PORTAL_FRAME, "end_frame_recipe");
recipe.shape("pap","eoe","eee");
recipe.setIngredient('p', Material.ENDER_PEARL);
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('e', Material.END_STONE);
recipe.setIngredient('o', Material.OBSIDIAN);
plugin.server.addRecipe(recipe);
}
private void trident() {
ShapedRecipe recipe = util.shaped(Material.TRIDENT, "trident_recipe");
recipe.shape("add","apd","paa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('p', Material.PRISMARINE_SHARD);
recipe.setIngredient('d', Material.DIAMOND);
plugin.server.addRecipe(recipe);
}
private void elytra() {
ShapedRecipe recipe = util.shaped(Material.ELYTRA, "elytra_recipe");
recipe.shape("sds","mnm","mam");
recipe.setIngredient('s', Material.STRING);
recipe.setIngredient('d', Material.DIAMOND);
recipe.setIngredient('m', Material.PHANTOM_MEMBRANE);
recipe.setIngredient('n', Material.NETHER_STAR);
recipe.setIngredient('a', Material.AIR);
plugin.server.addRecipe(recipe);
}
private void netherstar() {
ShapedRecipe recipe = util.shaped(Material.NETHER_STAR, "netherstar_recipe");
recipe.shape("nwn","sss","bqb");
recipe.setIngredient('n', Material.NETHER_WART);
recipe.setIngredient('w', Material.WITHER_SKELETON_SKULL);
recipe.setIngredient('s', Material.SOUL_SAND);
recipe.setIngredient('b', Material.BLAZE_ROD);
recipe.setIngredient('q', Material.QUARTZ);
plugin.server.addRecipe(recipe);
}
private void saddle() {
ShapedRecipe saddle = util.shaped(Material.SADDLE, "saddle_recipe");
saddle.shape("wlw","sls","wlw");
saddle.setIngredient('w', Material.STICK);
saddle.setIngredient('s', Material.STRING);
saddle.setIngredient('l', Material.LEATHER);
plugin.server.addRecipe(saddle);
}
private void bell() {
ShapedRecipe recipe = util.shaped(Material.BELL, "bell_recipe");
recipe.shape("s*s","sis","sns");
recipe.setIngredient('s', Material.STONE);
recipe.setIngredient('*', Material.STICK);
recipe.setIngredient('i', Material.GOLD_INGOT);
recipe.setIngredient('n', Material.GOLD_NUGGET);
plugin.server.addRecipe(recipe);
}
private void leatherHorseArmor() {
ShapedRecipe armor = util.shaped(Material.LEATHER_HORSE_ARMOR, "leather_horse_armor_recipe");
armor.shape("aal","l*l","lsi");
armor.setIngredient('a', Material.AIR);
armor.setIngredient('s', Material.STRING);
armor.setIngredient('l', Material.LEATHER);
armor.setIngredient('*', Material.SADDLE);
armor.setIngredient('i', Material.IRON_INGOT);
plugin.server.addRecipe(armor);
}
private void ironHorseArmor() {
ShapedRecipe armor = util.shaped(Material.IRON_HORSE_ARMOR, "iron_horse_armor_recipe");
armor.shape("aai","i*i","isi");
armor.setIngredient('a', Material.AIR);
armor.setIngredient('s', Material.STRING);
armor.setIngredient('*', Material.SADDLE);
armor.setIngredient('i', Material.IRON_INGOT);
plugin.server.addRecipe(armor);
}
private void goldHorseArmor() {
ShapedRecipe armor = util.shaped(Material.GOLDEN_HORSE_ARMOR, "golden_horse_armor_recipe");
armor.shape("aag","g*g","gsi");
armor.setIngredient('a', Material.AIR);
armor.setIngredient('s', Material.STRING);
armor.setIngredient('g', Material.GOLD_INGOT);
armor.setIngredient('*', Material.SADDLE);
armor.setIngredient('i', Material.IRON_INGOT);
plugin.server.addRecipe(armor);
}
private void diamondHorseArmor() {
ShapedRecipe armor = util.shaped(Material.DIAMOND_HORSE_ARMOR, "diamond_horse_armor_recipe");
armor.shape("aad","d*d","dsi");
armor.setIngredient('a', Material.AIR);
armor.setIngredient('s', Material.STRING);
armor.setIngredient('d', Material.DIAMOND);
armor.setIngredient('*', Material.SADDLE);
armor.setIngredient('i', Material.IRON_INGOT);
plugin.server.addRecipe(armor);
}
private void nametag() {
ShapedRecipe nametag = util.shaped(Material.NAME_TAG, "nametag_recipe");
nametag.shape("aas","apa","paa");
nametag.setIngredient('a', Material.AIR);
nametag.setIngredient('s', Material.STRING);
nametag.setIngredient('p', Material.PAPER);
plugin.server.addRecipe(nametag);
}
private void spawner() {
ShapedRecipe recipe = util.shaped(Material.SPAWNER, "spawner_recipe");
recipe.shape("ccc","cec","ccc");
recipe.setIngredient('c', Material.CHAIN);
recipe.setIngredient('e', Material.PIG_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void bedrock() {
ShapelessRecipe recipe = util.shapeless(Material.BEDROCK, "bedrock_recipe");
recipe.addIngredient(2, Material.OBSIDIAN);
recipe.addIngredient(2, Material.STONE);
recipe.addIngredient(1, Material.DIAMOND);
recipe.addIngredient(1, Material.IRON_INGOT);
recipe.addIngredient(1, Material.COAL);
recipe.addIngredient(1, Material.WATER_BUCKET);
recipe.addIngredient(1, Material.LAVA_BUCKET);
recipe.getResult().setAmount(4);
plugin.server.addRecipe(recipe);
}
private void barrier() {
ShapedRecipe recipe = util.shaped(Material.BARRIER, "barrier_recipe");
recipe.shape("ggg","gbg","ggg");
recipe.setIngredient('g', Material.GLASS);
recipe.setIngredient('b', Material.BEDROCK);
plugin.server.addRecipe(recipe);
}
// MUSIC DISCS \\
private void discs() {
cd11();
cd13();
cdBLOCKS();
cdCAT();
cdCHIRP();
cdFAR();
cdMALL();
cdMELLOHI();
cdPIGSTEP();
cdSTAL();
cdSTRAD();
cdWAIT();
cdWARD();
}
private void cd13() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_13, "13_recipe");
recipe.shape("fff","fyf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('y', Material.YELLOW_DYE);
plugin.server.addRecipe(recipe);
}
private void cdCAT() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_CAT, "cat_recipe");
recipe.shape("fff","fgf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('g', Material.LIME_DYE);
plugin.server.addRecipe(recipe);
}
private void cdBLOCKS() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_BLOCKS, "blocks_recipe");
recipe.shape("fff","fof","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('o', Material.ORANGE_DYE);
plugin.server.addRecipe(recipe);
}
private void cdCHIRP() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_CHIRP, "chirp_recipe");
recipe.shape("fff","frf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('r', Material.RED_DYE);
plugin.server.addRecipe(recipe);
}
private void cdFAR() {
ShapelessRecipe recipe = util.shapeless(Material.MUSIC_DISC_FAR, "far_recipe");
recipe.addIngredient(2, Material.BONE_MEAL);
recipe.addIngredient(1, Material.MUSIC_DISC_CAT);
plugin.server.addRecipe(recipe);
}
private void cdMALL() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_MALL, "mall_recipe");
recipe.shape("fff","fpf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('p', Material.PURPLE_DYE);
plugin.server.addRecipe(recipe);
}
private void cdMELLOHI() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_MELLOHI, "mellohi_recipe");
recipe.shape("fff","fpf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('p', Material.PINK_DYE);
plugin.server.addRecipe(recipe);
}
private void cdSTAL() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_STAL, "stal_recipe");
recipe.shape("fff","fbf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('b', Material.BLACK_DYE);
plugin.server.addRecipe(recipe);
}
private void cdSTRAD() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_STRAD, "strad_recipe");
recipe.shape("fff","fwf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('w', Material.WHITE_DYE);
plugin.server.addRecipe(recipe);
}
private void cdWARD() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_WARD, "ward_recipe");
recipe.shape("fff","fgf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('g', Material.GREEN_DYE);
plugin.server.addRecipe(recipe);
}
private void cd11() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_11, "11_recipe");
recipe.shape("fff","fbf","ffa");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('b', Material.BLACK_DYE);
recipe.setIngredient('a', Material.AIR);
plugin.server.addRecipe(recipe);
}
private void cdWAIT() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_WAIT, "wait_recipe");
recipe.shape("fff","fbf","fff");
recipe.setIngredient('f', Material.FLINT);
recipe.setIngredient('b', Material.BLUE_DYE);
plugin.server.addRecipe(recipe);
}
private void cdPIGSTEP() {
ShapedRecipe recipe = util.shaped(Material.MUSIC_DISC_PIGSTEP, "pigstep_recipe");
recipe.shape("nqn","qyq","nqn");
recipe.setIngredient('n', Material.NETHER_BRICK);
recipe.setIngredient('q', Material.QUARTZ);
recipe.setIngredient('y', Material.YELLOW_DYE);
plugin.server.addRecipe(recipe);
}
// EGGS --- EGGS --- EGGS --- EGGS --- EGGS \\
private void eggs() {
beeEgg();
blazeEgg();
caveSpiderEgg();
creeperEgg();
dolphinEgg();
drownedEgg();
elderGuardEgg();
endermanEgg();
endermiteEgg();
evokerEgg();
foxEgg();
ghastEgg();
guardianEgg();
hoglinEgg();
huskEgg();
llamaEgg();
magmaCubeEgg();
pandaEgg();
phantomEgg();
piglinEgg();
pillagerEgg();
polarBearEgg();
ravagerEgg();
shulkerEgg();
silverfishEgg();
skeletonEgg();
slimeEgg();
spiderEgg();
strayEgg();
striderEgg();
vexEgg();
vindicatorEgg();
witchEgg();
witherSkeletonEgg();
wolfEgg();
zoglinEgg();
zombieEgg();
zombieVillagerEgg();
zPiglinEgg();
//non-hostile
batEgg();
catEgg();
chickenEgg();
codEgg();
cowEgg();
donkeyEgg();
horseEgg();
mooshroomEgg();
muleEgg();
ocelotEgg();
parrotEgg();
pigEgg();
pufferfishEgg();
rabbitEgg();
salmonEgg();
sheepEgg();
sHorseEgg();
squidEgg();
traderEgg();
traderLlamaEgg();
tropicalFishEgg();
turtleEgg();
villagerEgg();
zHorseEgg();
}
private void beeEgg() {
ShapedRecipe beeEgg = util.shaped(Material.BEE_SPAWN_EGG, "bee_egg_recipe");
beeEgg.shape("aha","heh","aha");
beeEgg.setIngredient('a', Material.AIR);
beeEgg.setIngredient('h', Material.HONEYCOMB);
beeEgg.setIngredient('e', Material.EGG);
plugin.server.addRecipe(beeEgg);
}
private void blazeEgg() {
ShapedRecipe blazeEgg = util.shaped(Material.BLAZE_SPAWN_EGG, "blaze_egg_recipe");
blazeEgg.shape("sbs","beb","sbs");
blazeEgg.setIngredient('s', Material.SOUL_SOIL);
blazeEgg.setIngredient('b', Material.BLAZE_ROD);
blazeEgg.setIngredient('e', Material.EGG);
plugin.server.addRecipe(blazeEgg);
}
private void caveSpiderEgg() {
ShapedRecipe caveSpiderEgg = util.shaped(Material.CAVE_SPIDER_SPAWN_EGG, "cave_spider_egg_recipe");
caveSpiderEgg.shape("afa","ses","afa");
caveSpiderEgg.setIngredient('a', Material.AIR);
caveSpiderEgg.setIngredient('f', Material.FERMENTED_SPIDER_EYE);
caveSpiderEgg.setIngredient('s', Material.SPIDER_EYE);
caveSpiderEgg.setIngredient('e', Material.SPIDER_SPAWN_EGG);
plugin.server.addRecipe(caveSpiderEgg);
}
private void creeperEgg() {
ShapedRecipe creeperEgg = util.shaped(Material.CREEPER_SPAWN_EGG, "creeper_egg_recipe");
creeperEgg.shape("aga","geg","aga");
creeperEgg.setIngredient('a', Material.AIR);
creeperEgg.setIngredient('g', Material.GUNPOWDER);
creeperEgg.setIngredient('e', Material.EGG);
plugin.server.addRecipe(creeperEgg);
}
private void dolphinEgg() {
ShapedRecipe dolphin = util.shaped(Material.DOLPHIN_SPAWN_EGG, "dolphin_egg_recipe");
dolphin.shape("aca","wew","aca");
dolphin.setIngredient('a', Material.AIR);
dolphin.setIngredient('w', Material.WATER_BUCKET);
dolphin.setIngredient('c', Material.COD);
dolphin.setIngredient('e', Material.EGG);
plugin.server.addRecipe(dolphin);
}
private void drownedEgg() {
ShapedRecipe drowned = util.shaped(Material.DROWNED_SPAWN_EGG, "drowned_egg_recipe");
drowned.shape("awa","fef","awa");
drowned.setIngredient('a', Material.AIR);
drowned.setIngredient('w', Material.WATER_BUCKET);
drowned.setIngredient('f', Material.FISHING_ROD);
drowned.setIngredient('e', Material.ZOMBIE_SPAWN_EGG);
plugin.server.addRecipe(drowned);
}
private void elderGuardEgg() {
ShapedRecipe eldGuard = util.shaped(Material.ELDER_GUARDIAN_SPAWN_EGG, "elder_guardian_egg_recipe");
eldGuard.shape("apa","ses","apa");
eldGuard.setIngredient('a', Material.AIR);
eldGuard.setIngredient('p', Material.PRISMARINE_SHARD);
eldGuard.setIngredient('e', Material.GUARDIAN_SPAWN_EGG);
eldGuard.setIngredient('s', Material.SPONGE);
plugin.server.addRecipe(eldGuard);
}
private void endermanEgg() {
ShapedRecipe enderman = util.shaped(Material.ENDERMAN_SPAWN_EGG, "enderman_egg_recipe");
enderman.shape("apa","pep","apa");
enderman.setIngredient('a', Material.AIR);
enderman.setIngredient('p', Material.ENDER_PEARL);
enderman.setIngredient('e', Material.EGG);
plugin.server.addRecipe(enderman);
}
private void endermiteEgg() {
ShapedRecipe endermite = util.shaped(Material.ENDERMITE_SPAWN_EGG, "endermite_egg_recipe");
endermite.shape("apa","cec","apa");
endermite.setIngredient('a', Material.AIR);
endermite.setIngredient('p', Material.ENDER_PEARL);
endermite.setIngredient('c', Material.CHORUS_FRUIT);
endermite.setIngredient('e', Material.EGG);
plugin.server.addRecipe(endermite);
}
private void evokerEgg() {
ShapedRecipe evoker = util.shaped(Material.EVOKER_SPAWN_EGG, "evoker_egg_recipe");
evoker.shape("ata","eve","ata");
evoker.setIngredient('a', Material.AIR);
evoker.setIngredient('t', Material.TOTEM_OF_UNDYING);
evoker.setIngredient('e', Material.EMERALD);
evoker.setIngredient('v', Material.VINDICATOR_SPAWN_EGG);
plugin.server.addRecipe(evoker);
}
private void foxEgg() {
ShapedRecipe recipe = util.shaped(Material.FOX_SPAWN_EGG, "fox_egg_recipe");
recipe.shape("asa","ses","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.SWEET_BERRIES);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void ghastEgg() {
ShapedRecipe recipe = util.shaped(Material.GHAST_SPAWN_EGG, "ghast_egg_recipe");
recipe.shape("sts","geg","sts");
recipe.setIngredient('s', Material.SOUL_SOIL);
recipe.setIngredient('t', Material.GHAST_TEAR);
recipe.setIngredient('g', Material.GUNPOWDER);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void guardianEgg() {
ShapedRecipe recipe = util.shaped(Material.GUARDIAN_SPAWN_EGG, "guardian_egg_recipe");
recipe.shape("apa","pep","apa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('p', Material.PRISMARINE_SHARD);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void hoglinEgg() {
ShapedRecipe recipe = util.shaped(Material.HOGLIN_SPAWN_EGG, "hoglin_egg_recipe");
recipe.shape("sls","pep","sls");
recipe.setIngredient('s', Material.SOUL_SOIL);
recipe.setIngredient('p', Material.PORKCHOP);
recipe.setIngredient('l', Material.LEATHER);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void huskEgg() {
ShapedRecipe recipe = util.shaped(Material.HUSK_SPAWN_EGG, "husk_egg_recipe");
recipe.shape("asa","rer","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.SAND);
recipe.setIngredient('e', Material.ZOMBIE_SPAWN_EGG);
recipe.setIngredient('r', Material.ROTTEN_FLESH);
plugin.server.addRecipe(recipe);
}
private void llamaEgg() {
ShapedRecipe recipe = util.shaped(Material.LLAMA_SPAWN_EGG, "llama_egg_recipe");
recipe.shape("aca","lel","aca");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('c', Material.WHITE_CARPET);
recipe.setIngredient('e', Material.EGG);
recipe.setIngredient('l', Material.LEATHER);
plugin.server.addRecipe(recipe);
}
private void magmaCubeEgg() {
ShapedRecipe recipe = util.shaped(Material.MAGMA_CUBE_SPAWN_EGG, "magma_cube_egg_recipe");
recipe.shape("scs","cec","scs");
recipe.setIngredient('s', Material.SOUL_SOIL);
recipe.setIngredient('c', Material.MAGMA_CREAM);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void pandaEgg() {
ShapedRecipe recipe = util.shaped(Material.PANDA_SPAWN_EGG, "panda_egg_recipe");
recipe.shape("aba","beb","aba");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('b', Material.BAMBOO);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void phantomEgg() {
ShapedRecipe recipe = util.shaped(Material.PHANTOM_SPAWN_EGG, "phantom_egg_recipe");
recipe.shape("ama","mem","ama");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('m', Material.PHANTOM_MEMBRANE);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void piglinEgg() {
ShapedRecipe recipe = util.shaped(Material.PIGLIN_SPAWN_EGG, "piglin_egg_recipe");
recipe.shape("sgs","nen","sgs");
recipe.setIngredient('s', Material.SOUL_SOIL);
recipe.setIngredient('n', Material.GOLD_NUGGET);
recipe.setIngredient('g', Material.GOLD_INGOT);
recipe.setIngredient('e', Material.PIG_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void pillagerEgg() {
ShapedRecipe recipe = util.shaped(Material.PILLAGER_SPAWN_EGG, "pillager_egg_recipe");
recipe.shape("aca","*e*","aca");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('c', Material.CROSSBOW);
recipe.setIngredient('*', Material.ARROW);
recipe.setIngredient('e', Material.VILLAGER_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void polarBearEgg() {
ShapedRecipe recipe = util.shaped(Material.POLAR_BEAR_SPAWN_EGG, "polar_bear_egg_recipe");
recipe.shape("aca","ses","aca");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('c', Material.COD);
recipe.setIngredient('e', Material.EGG);
recipe.setIngredient('s', Material.SALMON);
plugin.server.addRecipe(recipe);
}
private void ravagerEgg() {
ShapedRecipe recipe = util.shaped(Material.RAVAGER_SPAWN_EGG, "ravager_egg_recipe");
recipe.shape("asa","ses","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.SADDLE);
recipe.setIngredient('e', Material.HOGLIN_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void shulkerEgg() {
ShapedRecipe recipe = util.shaped(Material.SHULKER_SPAWN_EGG, "shulker_egg_recipe");
recipe.shape("scs","beb","scs");
recipe.setIngredient('s', Material.END_STONE);
recipe.setIngredient('c', Material.CHORUS_FRUIT);
recipe.setIngredient('b', Material.SHULKER_SHELL);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void silverfishEgg() {
ShapedRecipe recipe = util.shaped(Material.SILVERFISH_SPAWN_EGG, "silverfish_egg_recipe");
recipe.shape("asa","cec","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.STONE_BRICKS);
recipe.setIngredient('c', Material.CHISELED_STONE_BRICKS);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void skeletonEgg() {
ShapedRecipe recipe = util.shaped(Material.SKELETON_SPAWN_EGG, "skeleton_egg_recipe");
recipe.shape("aba","beb","aba");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('b', Material.BONE);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void slimeEgg() {
ShapedRecipe recipe = util.shaped(Material.SLIME_SPAWN_EGG, "slime_egg_recipe");
recipe.shape("asa","ses","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.SLIME_BALL);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void spiderEgg() {
ShapedRecipe recipe = util.shaped(Material.SPIDER_SPAWN_EGG, "spider_egg_recipe");
recipe.shape("aia","ses","aia");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('i', Material.SPIDER_EYE);
recipe.setIngredient('s', Material.STRING);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void strayEgg() {
ShapedRecipe recipe = util.shaped(Material.STRAY_SPAWN_EGG, "stray_egg_recipe");
recipe.shape("asa","iei","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.SNOWBALL);
recipe.setIngredient('e', Material.SKELETON_SPAWN_EGG);
recipe.setIngredient('i', Material.ICE);
plugin.server.addRecipe(recipe);
}
private void striderEgg() {
ShapedRecipe recipe = util.shaped(Material.STRIDER_SPAWN_EGG, "strider_egg_recipe");
recipe.shape("sls","lel","sls");
recipe.setIngredient('s', Material.SOUL_SOIL);
recipe.setIngredient('l', Material.LAVA_BUCKET);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void vexEgg() {
ShapedRecipe recipe = util.shaped(Material.VEX_SPAWN_EGG, "vex_egg_recipe");
recipe.shape("afa","fef","afa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('f', Material.FEATHER);
recipe.setIngredient('e', Material.EVOKER_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void vindicatorEgg() {
ShapedRecipe recipe = util.shaped(Material.VINDICATOR_SPAWN_EGG, "vindicator_egg_recipe");
recipe.shape("axa","*e*","axa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('x', Material.IRON_AXE);
recipe.setIngredient('e', Material.PILLAGER_SPAWN_EGG);
recipe.setIngredient('*', Material.EMERALD);
plugin.server.addRecipe(recipe);
}
private void witchEgg() {
ShapedRecipe recipe = util.shaped(Material.WITCH_SPAWN_EGG, "witch_egg_recipe");
recipe.shape("apa","ses","apa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('p', Material.SPLASH_POTION);
recipe.setIngredient('s', Material.STICK);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void witherSkeletonEgg() {
ShapedRecipe recipe = util.shaped(Material.WITHER_SKELETON_SPAWN_EGG, "wither_skeleton_egg_recipe");
recipe.shape("scs","cec","scs");
recipe.setIngredient('s', Material.SOUL_SOIL);
recipe.setIngredient('c', Material.COAL);
recipe.setIngredient('e', Material.SKELETON_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void wolfEgg() {
ShapedRecipe recipe = util.shaped(Material.WOLF_SPAWN_EGG, "wolf_egg_recipe");
recipe.shape("aba","nen","aba");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('b', Material.BONE);
recipe.setIngredient('n', Material.NAME_TAG);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void zoglinEgg() {
ShapedRecipe recipe = util.shaped(Material.ZOGLIN_SPAWN_EGG, "zoglin_egg_recipe");
recipe.shape("srs","rer","srs");
recipe.setIngredient('s', Material.SOUL_SOIL);
recipe.setIngredient('r', Material.ROTTEN_FLESH);
recipe.setIngredient('e', Material.HOGLIN_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void zombieEgg() {
ShapedRecipe recipe = util.shaped(Material.ZOMBIE_SPAWN_EGG, "zombie_egg_recipe");
recipe.shape("ara","rer","ara");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('r', Material.ROTTEN_FLESH);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void zombieVillagerEgg() {
ShapedRecipe recipe = util.shaped(Material.ZOMBIE_VILLAGER_SPAWN_EGG, "z_villager_egg_recipe");
recipe.shape("ara","rer","ara");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('r', Material.ROTTEN_FLESH);
recipe.setIngredient('e', Material.VILLAGER_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void zPiglinEgg() {
ShapedRecipe recipe = util.shaped(Material.ZOMBIFIED_PIGLIN_SPAWN_EGG, "z_piglin_egg_recipe");
recipe.shape("srs","rer","srs");
recipe.setIngredient('s', Material.SOUL_SOIL);
recipe.setIngredient('r', Material.ROTTEN_FLESH);
recipe.setIngredient('e', Material.PIGLIN_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
// NON-HOSTILE \\
private void batEgg() {
ShapedRecipe recipe = util.shaped(Material.BAT_SPAWN_EGG, "bat_egg_recipe");
recipe.shape("aba","fef","aba");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('b', Material.APPLE);
recipe.setIngredient('e', Material.CHICKEN_SPAWN_EGG);
recipe.setIngredient('f', Material.FEATHER);
plugin.server.addRecipe(recipe);
}
private void catEgg() {
ShapedRecipe recipe = util.shaped(Material.CAT_SPAWN_EGG, "cat_egg_recipe");
recipe.shape("aca","ses","aca");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('c', Material.COD);
recipe.setIngredient('s', Material.SALMON);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void chickenEgg() {
ShapedRecipe recipe = util.shaped(Material.CHICKEN_SPAWN_EGG, "chicken_egg_recipe");
recipe.shape("afa","fef","afa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('f', Material.FEATHER);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void codEgg() {
ShapedRecipe recipe = util.shaped(Material.COD_SPAWN_EGG, "cod_egg_recipe");
recipe.shape("aca","cec","aca");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('c', Material.COD);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void cowEgg() {
ShapedRecipe recipe = util.shaped(Material.COW_SPAWN_EGG, "cow_egg_recipe");
recipe.shape("ala","lel","ala");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('l', Material.LEATHER);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void donkeyEgg() {
ShapelessRecipe recipe = util.shapeless(Material.DONKEY_SPAWN_EGG, "donkey_egg_recipe");
recipe.addIngredient(Material.HORSE_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void horseEgg() {
ShapedRecipe recipe = util.shaped(Material.HORSE_SPAWN_EGG, "horse_egg_recipe");
recipe.shape("asa","lel","ala");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.SADDLE);
recipe.setIngredient('e', Material.EGG);
recipe.setIngredient('l', Material.LEATHER);
plugin.server.addRecipe(recipe);
}
private void mooshroomEgg() {
ShapedRecipe recipe = util.shaped(Material.MOOSHROOM_SPAWN_EGG, "mooshroom_egg_recipe");
recipe.shape("ara","rer","ara");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('r', Material.RED_MUSHROOM);
recipe.setIngredient('e', Material.COW_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void muleEgg() {
ShapelessRecipe recipe = util.shapeless(Material.MULE_SPAWN_EGG, "mule_egg_recipe");
recipe.addIngredient(2, Material.CHEST);
recipe.addIngredient(1, Material.HORSE_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void ocelotEgg() {
ShapedRecipe recipe = util.shaped(Material.OCELOT_SPAWN_EGG, "ocelot_egg_recipe");
recipe.shape("aca","ses","aca");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('c', Material.COCOA_BEANS);
recipe.setIngredient('s', Material.SALMON);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void parrotEgg() {
ShapedRecipe recipe = util.shaped(Material.PARROT_SPAWN_EGG, "parrot_egg_recipe");
recipe.shape("asa","fef","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.WHEAT_SEEDS);
recipe.setIngredient('f', Material.FEATHER);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void pigEgg() {
ShapedRecipe recipe = util.shaped(Material.PIG_SPAWN_EGG, "pig_egg_recipe");
recipe.shape("aca","cec","aca");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('c', Material.PORKCHOP);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void pufferfishEgg() {
ShapedRecipe recipe = util.shaped(Material.PUFFERFISH_SPAWN_EGG, "pufferfish_egg_recipe");
recipe.shape("apa","pep","apa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('p', Material.PUFFERFISH);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void rabbitEgg() {
ShapedRecipe recipe = util.shaped(Material.RABBIT_SPAWN_EGG, "rabbit_egg_recipe");
recipe.shape("aha","heh","afa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('h', Material.RABBIT_HIDE);
recipe.setIngredient('e', Material.EGG);
recipe.setIngredient('f', Material.RABBIT_FOOT);
plugin.server.addRecipe(recipe);
}
private void salmonEgg() {
ShapedRecipe recipe = util.shaped(Material.SALMON_SPAWN_EGG, "salmon_egg_recipe");
recipe.shape("asa","ses","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.SALMON);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void sheepEgg() {
ShapedRecipe recipe = util.shaped(Material.SHEEP_SPAWN_EGG, "sheep_egg_recipe");
recipe.shape("awa","mem","awa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('w', Material.WHITE_WOOL);
recipe.setIngredient('m', Material.MUTTON);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void sHorseEgg() {
ShapelessRecipe recipe = util.shapeless(Material.SKELETON_HORSE_SPAWN_EGG, "s_horse_egg_recipe");
recipe.addIngredient(1, Material.SKELETON_SPAWN_EGG);
recipe.addIngredient(1, Material.HORSE_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void squidEgg() {
ShapedRecipe recipe = util.shaped(Material.SQUID_SPAWN_EGG, "squid_egg_recipe");
recipe.shape("aia","iei","aia");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('i', Material.INK_SAC);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void tropicalFishEgg() {
ShapelessRecipe recipe = util.shapeless(Material.TROPICAL_FISH_SPAWN_EGG, "t_fish_egg_recipe");
recipe.addIngredient(1, Material.COD);
recipe.addIngredient(1, Material.EGG);
recipe.addIngredient(1, Material.PUFFERFISH);
recipe.addIngredient(1, Material.SALMON);
recipe.addIngredient(1, Material.TROPICAL_FISH);
plugin.server.addRecipe(recipe);
}
private void traderLlamaEgg() {
ShapelessRecipe recipe = util.shapeless(Material.TRADER_LLAMA_SPAWN_EGG, "t_llama_egg_recipe");
recipe.addIngredient(1, Material.LLAMA_SPAWN_EGG);
recipe.addIngredient(1, Material.WANDERING_TRADER_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void turtleEgg() {
ShapedRecipe recipe = util.shaped(Material.TURTLE_SPAWN_EGG, "turtle_egg_recipe");
recipe.shape("asa","ses","asa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('s', Material.SCUTE);
recipe.setIngredient('e', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void villagerEgg() {
ShapedRecipe recipe = util.shaped(Material.VILLAGER_SPAWN_EGG, "villager_egg_recipe");
recipe.shape("aea","p*p","aea");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('e', Material.EGG);
recipe.setIngredient('p', Material.POPPY);
recipe.setIngredient('*', Material.EGG);
plugin.server.addRecipe(recipe);
}
private void traderEgg() {
ShapedRecipe recipe = util.shaped(Material.WANDERING_TRADER_SPAWN_EGG, "trader_egg_recipe");
recipe.shape("aea","e*e","aea");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('e', Material.EMERALD);
recipe.setIngredient('*', Material.VILLAGER_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
private void zHorseEgg() {
ShapelessRecipe recipe = util.shapeless(Material.ZOMBIE_HORSE_SPAWN_EGG, "z_horse_egg_recipe");
recipe.addIngredient(1, Material.ZOMBIE_SPAWN_EGG);
recipe.addIngredient(1, Material.HORSE_SPAWN_EGG);
plugin.server.addRecipe(recipe);
}
}

View File

@ -1,35 +0,0 @@
package dev.coomware;
import org.bstats.Metrics;
import org.bukkit.Bukkit;
import org.bukkit.Server;
import org.bukkit.plugin.java.JavaPlugin;
public class Uncraftables extends JavaPlugin {
public static Uncraftables plugin;
public Server server;
public CraftingUtils util;
public int pluginId = 8179;
@Override
public void onLoad() {
plugin = this;
server = getServer();
util = new CraftingUtils(this);
}
@Override
public void onEnable() {
final Metrics metrics = new Metrics(this, pluginId);
Bukkit.getLogger().info("[Uncraftables] Successfully enabled bStats metrics!");
new Craftable(this).craftables();
new CraftingListener(this);
Bukkit.getLogger().info("[Uncraftables] successfully loaded all recipes.");
}
@Override
public void onDisable() {
//
}
}

View File

@ -1,4 +1,4 @@
package dev.coomware; package io.github.paldiu;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;

View File

@ -1,28 +1,32 @@
package dev.coomware; package io.github.paldiu;
import org.bukkit.Material; import org.bukkit.Material;
import org.bukkit.NamespacedKey; import org.bukkit.NamespacedKey;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.ShapedRecipe; import org.bukkit.inventory.ShapedRecipe;
import org.bukkit.inventory.ShapelessRecipe; import org.bukkit.inventory.ShapelessRecipe;
import org.jetbrains.annotations.Contract;
import org.jetbrains.annotations.NotNull;
public class CraftingUtils { public class CraftingUtils {
private Uncraftables plugin; private final Uncraftables plugin;
public CraftingUtils(Uncraftables instance) { public CraftingUtils(Uncraftables instance) {
plugin = instance; plugin = instance;
} }
private NamespacedKey newKey(String string) { @Contract("_ -> new")
private @NotNull
NamespacedKey newKey(String string) {
return new NamespacedKey(plugin, string); return new NamespacedKey(plugin, string);
} }
public ShapedRecipe shaped(Material result, String key) { public final @NotNull ShapedRecipe shaped(Material result, String key) {
ItemStack is = new ItemStack(result); ItemStack is = new ItemStack(result);
return new ShapedRecipe(newKey(key), is); return new ShapedRecipe(newKey(key), is);
} }
public ShapelessRecipe shapeless(Material result, String key) { public final @NotNull ShapelessRecipe shapeless(Material result, String key) {
ItemStack is = new ItemStack(result); ItemStack is = new ItemStack(result);
return new ShapelessRecipe(newKey(key), is); return new ShapelessRecipe(newKey(key), is);
} }

View File

@ -0,0 +1,30 @@
package io.github.paldiu;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.jetbrains.annotations.NotNull;
public class ReloadCMD implements CommandExecutor {
private final Uncraftables crf;
public ReloadCMD(@NotNull Uncraftables crf) {
this.crf = crf;
crf.getPlugin().getCommand("reload").setExecutor(this);
}
@Override
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
if (sender.hasPermission("uncraftables.reload")) {
crf.getYamlWrapper().load();
sender.sendMessage(Component.text("[Uncraftables] Reloaded configurations!").color(NamedTextColor.GREEN));
} else {
sender.sendMessage(Component.text("You do not have permission to use this command!").color(NamedTextColor.RED));
}
return true;
}
}

View File

@ -0,0 +1,71 @@
package io.github.paldiu;
import io.github.paldiu.config.YamlWrapper;
import io.github.paldiu.recipes.*;
import org.bstats.Metrics;
import org.bukkit.Bukkit;
import org.bukkit.plugin.java.JavaPlugin;
public class Uncraftables extends JavaPlugin {
private final int pluginId = 8179;
private Uncraftables plugin;
private CraftingUtils util;
private YamlWrapper yamlWrapper;
@Override
public void onLoad() {
plugin = this;
util = new CraftingUtils(this);
}
@Override
public void onEnable() {
yamlWrapper = new YamlWrapper(this);
new Metrics(this, pluginId);
Bukkit.getLogger().info("[Uncraftables] Successfully enabled bStats metrics!");
register();
new CraftingListener(this);
Bukkit.getLogger().info("[Uncraftables] successfully loaded all recipes.");
new ReloadCMD(this);
}
@Override
public void onDisable() {
yamlWrapper.save();
}
public void register() {
new BarrierRecipe(this);
new BedrockRecipe(this);
new BellRecipe(this);
new CryingObsidianRecipe(this);
new DragonEggRecipe(this);
new EggRecipes(this);
new ElytraRecipe(this);
new EndFrameRecipe(this);
new HorseArmorRecipe(this);
new MusicDiscRecipes(this);
new NameTagRecipe(this);
new NetherStarRecipe(this);
new NetherWartRecipe(this);
new SaddleRecipe(this);
new SpawnerRecipe(this);
new TotemRecipe(this);
new TridentRecipe(this);
}
public YamlWrapper getYamlWrapper() {
return yamlWrapper;
}
public Uncraftables getPlugin() {
return plugin;
}
public CraftingUtils getUtil() {
return util;
}
}

View File

@ -0,0 +1,79 @@
package io.github.paldiu.config;
import io.github.paldiu.Uncraftables;
public class ConfigValues {
private final Uncraftables plugin;
public ConfigValues(Uncraftables plugin) {
this.plugin = plugin;
}
public boolean barrierEnabled() {
return plugin.getYamlWrapper().getBoolean("barrier");
}
public boolean bedrockEnabled() {
return plugin.getYamlWrapper().getBoolean("bedrock");
}
public boolean bellEnabled() {
return plugin.getYamlWrapper().getBoolean("bell");
}
public boolean cryingObsidianEnabled() {
return plugin.getYamlWrapper().getBoolean("crying_obsidian");
}
public boolean dragonEggEnabled() {
return plugin.getYamlWrapper().getBoolean("dragon_egg");
}
public boolean elytraEnabled() {
return plugin.getYamlWrapper().getBoolean("elytra");
}
public boolean endFrameEnabled() {
return plugin.getYamlWrapper().getBoolean("end_frame");
}
public boolean eggsEnabled() {
return plugin.getYamlWrapper().getBoolean("eggs");
}
public boolean horseArmorEnabled() {
return plugin.getYamlWrapper().getBoolean("horse_armor");
}
public boolean musicDiscsEnabled() {
return plugin.getYamlWrapper().getBoolean("music_discs");
}
public boolean nameTagEnabled() {
return plugin.getYamlWrapper().getBoolean("name_tag");
}
public boolean netherStarEnabled() {
return plugin.getYamlWrapper().getBoolean("nether_star");
}
public boolean netherWartEnabled() {
return plugin.getYamlWrapper().getBoolean("nether_wart");
}
public boolean saddleEnabled() {
return plugin.getYamlWrapper().getBoolean("saddle");
}
public boolean spawnerEnabled() {
return plugin.getYamlWrapper().getBoolean("spawner");
}
public boolean totemEnabled() {
return plugin.getYamlWrapper().getBoolean("totem");
}
public boolean tridentEnabled() {
return plugin.getYamlWrapper().getBoolean("trident");
}
}

View File

@ -0,0 +1,88 @@
package io.github.paldiu.config;
import io.github.paldiu.Uncraftables;
import org.bukkit.Bukkit;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.YamlConfiguration;
import org.jetbrains.annotations.NotNull;
import java.io.File;
import java.io.IOException;
public class YamlWrapper {
private final YamlConfiguration config;
private final File configFile;
private final ConfigValues configValues;
public YamlWrapper(@NotNull Uncraftables plugin) {
String FILE_NAME = "config.yml";
File dataFolder = plugin.getDataFolder();
this.configFile = new File(dataFolder, FILE_NAME);
try {
if (configFile.createNewFile()) {
plugin.saveResource(FILE_NAME, true);
}
} catch (IOException ex) {
Bukkit.getLogger().severe(ex.getMessage());
}
this.config = YamlConfiguration.loadConfiguration(configFile);
this.configValues = new ConfigValues(plugin);
}
public void save() {
try {
config.save(configFile);
} catch (IOException ex) {
Bukkit.getLogger().severe(ex.getMessage());
}
}
public void load() {
try {
config.load(configFile);
} catch (IOException | InvalidConfigurationException ex) {
Bukkit.getLogger().severe(ex.getMessage());
}
}
public void set(String path, Object value) {
config.set(path, value);
}
public Object get(String path) {
return config.get(path);
}
public String getString(String path) {
return config.getString(path);
}
public int getInt(String path) {
return config.getInt(path);
}
public boolean getBoolean(String path) {
return config.getBoolean(path);
}
public double getDouble(String path) {
return config.getDouble(path);
}
public long getLong(String path) {
return config.getLong(path);
}
public float getFloat(String path) {
return (float) config.getDouble(path);
}
public YamlConfiguration getConfig() {
return config;
}
public ConfigValues getConfigValues() {
return configValues;
}
}

View File

@ -0,0 +1,19 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class BarrierRecipe extends Craftable {
public BarrierRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().barrierEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.BARRIER, "barrier_recipe");
recipe.shape("ggg", "gbg", "ggg");
recipe.setIngredient('g', Material.GLASS);
recipe.setIngredient('b', Material.BEDROCK);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,24 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapelessRecipe;
public class BedrockRecipe extends Craftable {
public BedrockRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().bedrockEnabled()) return;
ShapelessRecipe recipe = getUtil().shapeless(Material.BEDROCK, "bedrock_recipe");
recipe.addIngredient(2, Material.OBSIDIAN);
recipe.addIngredient(2, Material.STONE);
recipe.addIngredient(1, Material.DIAMOND);
recipe.addIngredient(1, Material.IRON_INGOT);
recipe.addIngredient(1, Material.COAL);
recipe.addIngredient(1, Material.WATER_BUCKET);
recipe.addIngredient(1, Material.LAVA_BUCKET);
recipe.getResult().setAmount(4);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,21 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class BellRecipe extends Craftable {
public BellRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().bellEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.BELL, "bell_recipe");
recipe.shape("sks", "sis", "sns");
recipe.setIngredient('s', Material.STONE);
recipe.setIngredient('k', Material.STICK);
recipe.setIngredient('i', Material.GOLD_INGOT);
recipe.setIngredient('n', Material.GOLD_NUGGET);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,29 @@
package io.github.paldiu.recipes;
import io.github.paldiu.CraftingUtils;
import io.github.paldiu.Uncraftables;
import io.github.paldiu.config.ConfigValues;
public abstract class Craftable {
private final Uncraftables plugin;
private final CraftingUtils util;
private final ConfigValues configValues;
public Craftable(Uncraftables plugin) {
this.plugin = plugin;
this.util = getPlugin().getUtil();
this.configValues = plugin.getYamlWrapper().getConfigValues();
}
protected Uncraftables getPlugin() {
return plugin;
}
protected CraftingUtils getUtil() {
return util;
}
protected ConfigValues getConfigValues() {
return configValues;
}
}

View File

@ -0,0 +1,19 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapelessRecipe;
public class CryingObsidianRecipe extends Craftable {
public CryingObsidianRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().cryingObsidianEnabled()) return;
ShapelessRecipe recipe = getUtil().shapeless(Material.CRYING_OBSIDIAN, "crying_obsidian_recipe");
recipe.addIngredient(1, Material.OBSIDIAN);
recipe.addIngredient(4, Material.GHAST_TEAR);
recipe.getResult().setAmount(2);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,21 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class DragonEggRecipe extends Craftable {
public DragonEggRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().dragonEggEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.DRAGON_EGG, "dragon_egg_recipe");
recipe.shape("obo", "beb", "obo");
recipe.setIngredient('o', Material.OBSIDIAN);
recipe.setIngredient('b', Material.DRAGON_BREATH);
recipe.setIngredient('e', Material.DRAGON_HEAD);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,666 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
import org.bukkit.inventory.ShapelessRecipe;
public class EggRecipes extends Craftable {
public EggRecipes(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().eggsEnabled()) return;
beeEgg();
blazeEgg();
caveSpiderEgg();
creeperEgg();
dolphinEgg();
drownedEgg();
elderGuardEgg();
endermanEgg();
endermiteEgg();
evokerEgg();
foxEgg();
ghastEgg();
guardianEgg();
hoglinEgg();
huskEgg();
llamaEgg();
magmaCubeEgg();
pandaEgg();
phantomEgg();
piglinEgg();
pillagerEgg();
polarBearEgg();
ravagerEgg();
shulkerEgg();
silverfishEgg();
skeletonEgg();
slimeEgg();
spiderEgg();
strayEgg();
striderEgg();
vexEgg();
vindicatorEgg();
witchEgg();
witherSkeletonEgg();
wolfEgg();
zoglinEgg();
zombieEgg();
zombieVillagerEgg();
zPiglinEgg();
//non-hostile
batEgg();
catEgg();
chickenEgg();
codEgg();
cowEgg();
donkeyEgg();
horseEgg();
mooshroomEgg();
muleEgg();
ocelotEgg();
parrotEgg();
pigEgg();
pufferfishEgg();
rabbitEgg();
salmonEgg();
sheepEgg();
sHorseEgg();
squidEgg();
traderEgg();
traderLlamaEgg();
tropicalFishEgg();
turtleEgg();
villagerEgg();
zHorseEgg();
}
private void beeEgg() {
ShapedRecipe beeEgg = getUtil().shaped(Material.BEE_SPAWN_EGG, "bee_egg_recipe");
beeEgg.shape("aha","heh","aha");
beeEgg.setIngredient('a', Material.AIR);
beeEgg.setIngredient('h', Material.HONEYCOMB);
beeEgg.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(beeEgg);
}
private void blazeEgg() {
ShapedRecipe blazeEgg = getUtil().shaped(Material.BLAZE_SPAWN_EGG, "blaze_egg_recipe");
blazeEgg.shape("sbs","beb","sbs");
blazeEgg.setIngredient('s', Material.SOUL_SOIL);
blazeEgg.setIngredient('b', Material.BLAZE_ROD);
blazeEgg.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(blazeEgg);
}
private void caveSpiderEgg() {
ShapedRecipe caveSpiderEgg = getUtil().shaped(Material.CAVE_SPIDER_SPAWN_EGG, "cave_spider_egg_recipe");
caveSpiderEgg.shape("afa","ses","afa");
caveSpiderEgg.setIngredient('a', Material.AIR);
caveSpiderEgg.setIngredient('f', Material.FERMENTED_SPIDER_EYE);
caveSpiderEgg.setIngredient('s', Material.SPIDER_EYE);
caveSpiderEgg.setIngredient('e', Material.SPIDER_SPAWN_EGG);
getPlugin().getServer().addRecipe(caveSpiderEgg);
}
private void creeperEgg() {
ShapedRecipe creeperEgg = getUtil().shaped(Material.CREEPER_SPAWN_EGG, "creeper_egg_recipe");
creeperEgg.shape("aga","geg","aga");
creeperEgg.setIngredient('a', Material.AIR);
creeperEgg.setIngredient('g', Material.GUNPOWDER);
creeperEgg.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(creeperEgg);
}
private void dolphinEgg() {
ShapedRecipe dolphin = getUtil().shaped(Material.DOLPHIN_SPAWN_EGG, "dolphin_egg_recipe");
dolphin.shape("aca","wew","aca");
dolphin.setIngredient('a', Material.AIR);
dolphin.setIngredient('w', Material.WATER_BUCKET);
dolphin.setIngredient('c', Material.COD);
dolphin.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(dolphin);
}
private void drownedEgg() {
ShapedRecipe drowned = getUtil().shaped(Material.DROWNED_SPAWN_EGG, "drowned_egg_recipe");
drowned.shape("awa","fef","awa");
drowned.setIngredient('a', Material.AIR);
drowned.setIngredient('w', Material.WATER_BUCKET);
drowned.setIngredient('f', Material.FISHING_ROD);
drowned.setIngredient('e', Material.ZOMBIE_SPAWN_EGG);
getPlugin().getServer().addRecipe(drowned);
}
private void elderGuardEgg() {
ShapedRecipe eldGuard = getUtil().shaped(Material.ELDER_GUARDIAN_SPAWN_EGG, "elder_guardian_egg_recipe");
eldGuard.shape("apa","ses","apa");
eldGuard.setIngredient('a', Material.AIR);
eldGuard.setIngredient('p', Material.PRISMARINE_SHARD);
eldGuard.setIngredient('e', Material.GUARDIAN_SPAWN_EGG);
eldGuard.setIngredient('s', Material.SPONGE);
getPlugin().getServer().addRecipe(eldGuard);
}
private void endermanEgg() {
ShapedRecipe enderman = getUtil().shaped(Material.ENDERMAN_SPAWN_EGG, "enderman_egg_recipe");
enderman.shape("apa","pep","apa");
enderman.setIngredient('a', Material.AIR);
enderman.setIngredient('p', Material.ENDER_PEARL);
enderman.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(enderman);
}
private void endermiteEgg() {
ShapedRecipe endermite = getUtil().shaped(Material.ENDERMITE_SPAWN_EGG, "endermite_egg_recipe");
endermite.shape("apa","cec","apa");
endermite.setIngredient('a', Material.AIR);
endermite.setIngredient('p', Material.ENDER_PEARL);
endermite.setIngredient('c', Material.CHORUS_FRUIT);
endermite.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(endermite);
}
private void evokerEgg() {
ShapedRecipe evoker = getUtil().shaped(Material.EVOKER_SPAWN_EGG, "evoker_egg_recipe");
evoker.shape("ata","eve","ata");
evoker.setIngredient('a', Material.AIR);
evoker.setIngredient('t', Material.TOTEM_OF_UNDYING);
evoker.setIngredient('e', Material.EMERALD);
evoker.setIngredient('v', Material.VINDICATOR_SPAWN_EGG);
getPlugin().getServer().addRecipe(evoker);
}
private void foxEgg() {
ShapedRecipe fox = getUtil().shaped(Material.FOX_SPAWN_EGG, "fox_egg_recipe");
fox.shape("asa","ses","asa");
fox.setIngredient('a', Material.AIR);
fox.setIngredient('s', Material.SWEET_BERRIES);
fox.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(fox);
}
private void ghastEgg() {
ShapedRecipe ghast = getUtil().shaped(Material.GHAST_SPAWN_EGG, "ghast_egg_recipe");
ghast.shape("sts","geg","sts");
ghast.setIngredient('s', Material.SOUL_SOIL);
ghast.setIngredient('t', Material.GHAST_TEAR);
ghast.setIngredient('g', Material.GUNPOWDER);
ghast.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(ghast);
}
private void guardianEgg() {
ShapedRecipe guardian = getUtil().shaped(Material.GUARDIAN_SPAWN_EGG, "guardian_egg_recipe");
guardian.shape("apa","pep","apa");
guardian.setIngredient('a', Material.AIR);
guardian.setIngredient('p', Material.PRISMARINE_SHARD);
guardian.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(guardian);
}
private void hoglinEgg() {
ShapedRecipe hoglin = getUtil().shaped(Material.HOGLIN_SPAWN_EGG, "hoglin_egg_recipe");
hoglin.shape("sls","pep","sls");
hoglin.setIngredient('s', Material.SOUL_SOIL);
hoglin.setIngredient('p', Material.PORKCHOP);
hoglin.setIngredient('l', Material.LEATHER);
hoglin.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(hoglin);
}
private void huskEgg() {
ShapedRecipe husk = getUtil().shaped(Material.HUSK_SPAWN_EGG, "husk_egg_recipe");
husk.shape("asa","rer","asa");
husk.setIngredient('a', Material.AIR);
husk.setIngredient('s', Material.SAND);
husk.setIngredient('e', Material.ZOMBIE_SPAWN_EGG);
husk.setIngredient('r', Material.ROTTEN_FLESH);
getPlugin().getServer().addRecipe(husk);
}
private void llamaEgg() {
ShapedRecipe llama = getUtil().shaped(Material.LLAMA_SPAWN_EGG, "llama_egg_recipe");
llama.shape("aca","lel","aca");
llama.setIngredient('a', Material.AIR);
llama.setIngredient('c', Material.WHITE_CARPET);
llama.setIngredient('e', Material.EGG);
llama.setIngredient('l', Material.LEATHER);
getPlugin().getServer().addRecipe(llama);
}
private void magmaCubeEgg() {
ShapedRecipe magma_cube = getUtil().shaped(Material.MAGMA_CUBE_SPAWN_EGG, "magma_cube_egg_recipe");
magma_cube.shape("scs","cec","scs");
magma_cube.setIngredient('s', Material.SOUL_SOIL);
magma_cube.setIngredient('c', Material.MAGMA_CREAM);
magma_cube.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(magma_cube);
}
private void pandaEgg() {
ShapedRecipe panda = getUtil().shaped(Material.PANDA_SPAWN_EGG, "panda_egg_recipe");
panda.shape("aba","beb","aba");
panda.setIngredient('a', Material.AIR);
panda.setIngredient('b', Material.BAMBOO);
panda.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(panda);
}
private void phantomEgg() {
ShapedRecipe phantom = getUtil().shaped(Material.PHANTOM_SPAWN_EGG, "phantom_egg_recipe");
phantom.shape("ama","mem","ama");
phantom.setIngredient('a', Material.AIR);
phantom.setIngredient('m', Material.PHANTOM_MEMBRANE);
phantom.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(phantom);
}
private void piglinEgg() {
ShapedRecipe piglin = getUtil().shaped(Material.PIGLIN_SPAWN_EGG, "piglin_egg_recipe");
piglin.shape("sgs","nen","sgs");
piglin.setIngredient('s', Material.SOUL_SOIL);
piglin.setIngredient('n', Material.GOLD_NUGGET);
piglin.setIngredient('g', Material.GOLD_INGOT);
piglin.setIngredient('e', Material.PIG_SPAWN_EGG);
getPlugin().getServer().addRecipe(piglin);
}
private void pillagerEgg() {
ShapedRecipe pillager = getUtil().shaped(Material.PILLAGER_SPAWN_EGG, "pillager_egg_recipe");
pillager.shape("aca","*e*","aca");
pillager.setIngredient('a', Material.AIR);
pillager.setIngredient('c', Material.CROSSBOW);
pillager.setIngredient('*', Material.ARROW);
pillager.setIngredient('e', Material.VILLAGER_SPAWN_EGG);
getPlugin().getServer().addRecipe(pillager);
}
private void polarBearEgg() {
ShapedRecipe polar_bear = getUtil().shaped(Material.POLAR_BEAR_SPAWN_EGG, "polar_bear_egg_recipe");
polar_bear.shape("aca","ses","aca");
polar_bear.setIngredient('a', Material.AIR);
polar_bear.setIngredient('c', Material.COD);
polar_bear.setIngredient('e', Material.EGG);
polar_bear.setIngredient('s', Material.SALMON);
getPlugin().getServer().addRecipe(polar_bear);
}
private void ravagerEgg() {
ShapedRecipe ravager = getUtil().shaped(Material.RAVAGER_SPAWN_EGG, "ravager_egg_recipe");
ravager.shape("asa","ses","asa");
ravager.setIngredient('a', Material.AIR);
ravager.setIngredient('s', Material.SADDLE);
ravager.setIngredient('e', Material.HOGLIN_SPAWN_EGG);
getPlugin().getServer().addRecipe(ravager);
}
private void shulkerEgg() {
ShapedRecipe shulker = getUtil().shaped(Material.SHULKER_SPAWN_EGG, "shulker_egg_recipe");
shulker.shape("scs","beb","scs");
shulker.setIngredient('s', Material.END_STONE);
shulker.setIngredient('c', Material.CHORUS_FRUIT);
shulker.setIngredient('b', Material.SHULKER_SHELL);
shulker.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(shulker);
}
private void silverfishEgg() {
ShapedRecipe silverfish = getUtil().shaped(Material.SILVERFISH_SPAWN_EGG, "silverfish_egg_recipe");
silverfish.shape("asa","cec","asa");
silverfish.setIngredient('a', Material.AIR);
silverfish.setIngredient('s', Material.STONE_BRICKS);
silverfish.setIngredient('c', Material.CHISELED_STONE_BRICKS);
silverfish.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(silverfish);
}
private void skeletonEgg() {
ShapedRecipe skeleton = getUtil().shaped(Material.SKELETON_SPAWN_EGG, "skeleton_egg_recipe");
skeleton.shape("aba","beb","aba");
skeleton.setIngredient('a', Material.AIR);
skeleton.setIngredient('b', Material.BONE);
skeleton.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(skeleton);
}
private void slimeEgg() {
ShapedRecipe slime = getUtil().shaped(Material.SLIME_SPAWN_EGG, "slime_egg_recipe");
slime.shape("asa","ses","asa");
slime.setIngredient('a', Material.AIR);
slime.setIngredient('s', Material.SLIME_BALL);
slime.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(slime);
}
private void spiderEgg() {
ShapedRecipe spider = getUtil().shaped(Material.SPIDER_SPAWN_EGG, "spider_egg_recipe");
spider.shape("aia","ses","aia");
spider.setIngredient('a', Material.AIR);
spider.setIngredient('i', Material.SPIDER_EYE);
spider.setIngredient('s', Material.STRING);
spider.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(spider);
}
private void strayEgg() {
ShapedRecipe stray = getUtil().shaped(Material.STRAY_SPAWN_EGG, "stray_egg_recipe");
stray.shape("asa","iei","asa");
stray.setIngredient('a', Material.AIR);
stray.setIngredient('s', Material.SNOWBALL);
stray.setIngredient('e', Material.SKELETON_SPAWN_EGG);
stray.setIngredient('i', Material.ICE);
getPlugin().getServer().addRecipe(stray);
}
private void striderEgg() {
ShapedRecipe strider = getUtil().shaped(Material.STRIDER_SPAWN_EGG, "strider_egg_recipe");
strider.shape("sls","lel","sls");
strider.setIngredient('s', Material.SOUL_SOIL);
strider.setIngredient('l', Material.LAVA_BUCKET);
strider.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(strider);
}
private void vexEgg() {
ShapedRecipe vex = getUtil().shaped(Material.VEX_SPAWN_EGG, "vex_egg_recipe");
vex.shape("afa","fef","afa");
vex.setIngredient('a', Material.AIR);
vex.setIngredient('f', Material.FEATHER);
vex.setIngredient('e', Material.EVOKER_SPAWN_EGG);
getPlugin().getServer().addRecipe(vex);
}
private void vindicatorEgg() {
ShapedRecipe vindicator = getUtil().shaped(Material.VINDICATOR_SPAWN_EGG, "vindicator_egg_recipe");
vindicator.shape("axa","*e*","axa");
vindicator.setIngredient('a', Material.AIR);
vindicator.setIngredient('x', Material.IRON_AXE);
vindicator.setIngredient('e', Material.PILLAGER_SPAWN_EGG);
vindicator.setIngredient('*', Material.EMERALD);
getPlugin().getServer().addRecipe(vindicator);
}
private void witchEgg() {
ShapedRecipe witch = getUtil().shaped(Material.WITCH_SPAWN_EGG, "witch_egg_recipe");
witch.shape("apa","ses","apa");
witch.setIngredient('a', Material.AIR);
witch.setIngredient('p', Material.SPLASH_POTION);
witch.setIngredient('s', Material.STICK);
witch.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(witch);
}
private void witherSkeletonEgg() {
ShapedRecipe wither_skeleton = getUtil().shaped(Material.WITHER_SKELETON_SPAWN_EGG, "wither_skeleton_egg_recipe");
wither_skeleton.shape("scs","cec","scs");
wither_skeleton.setIngredient('s', Material.SOUL_SOIL);
wither_skeleton.setIngredient('c', Material.COAL);
wither_skeleton.setIngredient('e', Material.SKELETON_SPAWN_EGG);
getPlugin().getServer().addRecipe(wither_skeleton);
}
private void wolfEgg() {
ShapedRecipe wolf = getUtil().shaped(Material.WOLF_SPAWN_EGG, "wolf_egg_recipe");
wolf.shape("aba","nen","aba");
wolf.setIngredient('a', Material.AIR);
wolf.setIngredient('b', Material.BONE);
wolf.setIngredient('n', Material.NAME_TAG);
wolf.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(wolf);
}
private void zoglinEgg() {
ShapedRecipe zoglin = getUtil().shaped(Material.ZOGLIN_SPAWN_EGG, "zoglin_egg_recipe");
zoglin.shape("srs","rer","srs");
zoglin.setIngredient('s', Material.SOUL_SOIL);
zoglin.setIngredient('r', Material.ROTTEN_FLESH);
zoglin.setIngredient('e', Material.HOGLIN_SPAWN_EGG);
getPlugin().getServer().addRecipe(zoglin);
}
private void zombieEgg() {
ShapedRecipe zombie = getUtil().shaped(Material.ZOMBIE_SPAWN_EGG, "zombie_egg_recipe");
zombie.shape("ara","rer","ara");
zombie.setIngredient('a', Material.AIR);
zombie.setIngredient('r', Material.ROTTEN_FLESH);
zombie.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(zombie);
}
private void zombieVillagerEgg() {
ShapedRecipe zombie_villager = getUtil().shaped(Material.ZOMBIE_VILLAGER_SPAWN_EGG, "z_villager_egg_recipe");
zombie_villager.shape("ara","rer","ara");
zombie_villager.setIngredient('a', Material.AIR);
zombie_villager.setIngredient('r', Material.ROTTEN_FLESH);
zombie_villager.setIngredient('e', Material.VILLAGER_SPAWN_EGG);
getPlugin().getServer().addRecipe(zombie_villager);
}
private void zPiglinEgg() {
ShapedRecipe zombie_piglin = getUtil().shaped(Material.ZOMBIFIED_PIGLIN_SPAWN_EGG, "z_piglin_egg_recipe");
zombie_piglin.shape("srs","rer","srs");
zombie_piglin.setIngredient('s', Material.SOUL_SOIL);
zombie_piglin.setIngredient('r', Material.ROTTEN_FLESH);
zombie_piglin.setIngredient('e', Material.PIGLIN_SPAWN_EGG);
getPlugin().getServer().addRecipe(zombie_piglin);
}
// NON-HOSTILE \\
private void batEgg() {
ShapedRecipe bat = getUtil().shaped(Material.BAT_SPAWN_EGG, "bat_egg_recipe");
bat.shape("aba","fef","aba");
bat.setIngredient('a', Material.AIR);
bat.setIngredient('b', Material.APPLE);
bat.setIngredient('e', Material.CHICKEN_SPAWN_EGG);
bat.setIngredient('f', Material.FEATHER);
getPlugin().getServer().addRecipe(bat);
}
private void catEgg() {
ShapedRecipe cat = getUtil().shaped(Material.CAT_SPAWN_EGG, "cat_egg_recipe");
cat.shape("aca","ses","aca");
cat.setIngredient('a', Material.AIR);
cat.setIngredient('c', Material.COD);
cat.setIngredient('s', Material.SALMON);
cat.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(cat);
}
private void chickenEgg() {
ShapedRecipe chimken = getUtil().shaped(Material.CHICKEN_SPAWN_EGG, "chicken_egg_recipe");
chimken.shape("afa","fef","afa");
chimken.setIngredient('a', Material.AIR);
chimken.setIngredient('f', Material.FEATHER);
chimken.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(chimken);
}
private void codEgg() {
ShapedRecipe cod = getUtil().shaped(Material.COD_SPAWN_EGG, "cod_egg_recipe");
cod.shape("aca","cec","aca");
cod.setIngredient('a', Material.AIR);
cod.setIngredient('c', Material.COD);
cod.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(cod);
}
private void cowEgg() {
ShapedRecipe coo = getUtil().shaped(Material.COW_SPAWN_EGG, "cow_egg_recipe");
coo.shape("ala","lel","ala");
coo.setIngredient('a', Material.AIR);
coo.setIngredient('l', Material.LEATHER);
coo.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(coo);
}
private void donkeyEgg() {
ShapelessRecipe donkeh = getUtil().shapeless(Material.DONKEY_SPAWN_EGG, "donkey_egg_recipe");
donkeh.addIngredient(Material.HORSE_SPAWN_EGG);
getPlugin().getServer().addRecipe(donkeh);
}
private void horseEgg() {
ShapedRecipe hoarse = getUtil().shaped(Material.HORSE_SPAWN_EGG, "horse_egg_recipe");
hoarse.shape("asa","lel","ala");
hoarse.setIngredient('a', Material.AIR);
hoarse.setIngredient('s', Material.SADDLE);
hoarse.setIngredient('e', Material.EGG);
hoarse.setIngredient('l', Material.LEATHER);
getPlugin().getServer().addRecipe(hoarse);
}
private void mooshroomEgg() {
ShapedRecipe coo_pat = getUtil().shaped(Material.MOOSHROOM_SPAWN_EGG, "mooshroom_egg_recipe");
coo_pat.shape("ara","rer","ara");
coo_pat.setIngredient('a', Material.AIR);
coo_pat.setIngredient('r', Material.RED_MUSHROOM);
coo_pat.setIngredient('e', Material.COW_SPAWN_EGG);
getPlugin().getServer().addRecipe(coo_pat);
}
private void muleEgg() {
ShapelessRecipe muhle = getUtil().shapeless(Material.MULE_SPAWN_EGG, "mule_egg_recipe");
muhle.addIngredient(2, Material.CHEST);
muhle.addIngredient(1, Material.HORSE_SPAWN_EGG);
getPlugin().getServer().addRecipe(muhle);
}
private void ocelotEgg() {
ShapedRecipe ocky_way = getUtil().shaped(Material.OCELOT_SPAWN_EGG, "ocelot_egg_recipe");
ocky_way.shape("aca","ses","aca");
ocky_way.setIngredient('a', Material.AIR);
ocky_way.setIngredient('c', Material.COCOA_BEANS);
ocky_way.setIngredient('s', Material.SALMON);
ocky_way.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(ocky_way);
}
private void parrotEgg() {
ShapedRecipe garrote = getUtil().shaped(Material.PARROT_SPAWN_EGG, "parrot_egg_recipe");
garrote.shape("asa","fef","asa");
garrote.setIngredient('a', Material.AIR);
garrote.setIngredient('s', Material.WHEAT_SEEDS);
garrote.setIngredient('f', Material.FEATHER);
garrote.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(garrote);
}
private void pigEgg() {
ShapedRecipe pidge = getUtil().shaped(Material.PIG_SPAWN_EGG, "pig_egg_recipe");
pidge.shape("aca","cec","aca");
pidge.setIngredient('a', Material.AIR);
pidge.setIngredient('c', Material.PORKCHOP);
pidge.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(pidge);
}
private void pufferfishEgg() {
ShapedRecipe paisson = getUtil().shaped(Material.PUFFERFISH_SPAWN_EGG, "pufferfish_egg_recipe");
paisson.shape("apa","pep","apa");
paisson.setIngredient('a', Material.AIR);
paisson.setIngredient('p', Material.PUFFERFISH);
paisson.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(paisson);
}
private void rabbitEgg() {
ShapedRecipe rebillet = getUtil().shaped(Material.RABBIT_SPAWN_EGG, "rabbit_egg_recipe");
rebillet.shape("aha","heh","afa");
rebillet.setIngredient('a', Material.AIR);
rebillet.setIngredient('h', Material.RABBIT_HIDE);
rebillet.setIngredient('e', Material.EGG);
rebillet.setIngredient('f', Material.RABBIT_FOOT);
getPlugin().getServer().addRecipe(rebillet);
}
private void salmonEgg() {
ShapedRecipe slammin_salmon = getUtil().shaped(Material.SALMON_SPAWN_EGG, "salmon_egg_recipe");
slammin_salmon.shape("asa","ses","asa");
slammin_salmon.setIngredient('a', Material.AIR);
slammin_salmon.setIngredient('s', Material.SALMON);
slammin_salmon.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(slammin_salmon);
}
private void sheepEgg() {
ShapedRecipe haggis = getUtil().shaped(Material.SHEEP_SPAWN_EGG, "sheep_egg_recipe");
haggis.shape("awa","mem","awa");
haggis.setIngredient('a', Material.AIR);
haggis.setIngredient('w', Material.WHITE_WOOL);
haggis.setIngredient('m', Material.MUTTON);
haggis.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(haggis);
}
private void sHorseEgg() {
ShapelessRecipe spooky_horse = getUtil().shapeless(Material.SKELETON_HORSE_SPAWN_EGG, "s_horse_egg_recipe");
spooky_horse.addIngredient(1, Material.SKELETON_SPAWN_EGG);
spooky_horse.addIngredient(1, Material.HORSE_SPAWN_EGG);
getPlugin().getServer().addRecipe(spooky_horse);
}
private void squidEgg() {
ShapedRecipe squidge = getUtil().shaped(Material.SQUID_SPAWN_EGG, "squid_egg_recipe");
squidge.shape("aia","iei","aia");
squidge.setIngredient('a', Material.AIR);
squidge.setIngredient('i', Material.INK_SAC);
squidge.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(squidge);
}
private void tropicalFishEgg() {
ShapelessRecipe trop_fish = getUtil().shapeless(Material.TROPICAL_FISH_SPAWN_EGG, "t_fish_egg_recipe");
trop_fish.addIngredient(1, Material.COD);
trop_fish.addIngredient(1, Material.EGG);
trop_fish.addIngredient(1, Material.PUFFERFISH);
trop_fish.addIngredient(1, Material.SALMON);
trop_fish.addIngredient(1, Material.TROPICAL_FISH);
getPlugin().getServer().addRecipe(trop_fish);
}
private void traderLlamaEgg() {
ShapelessRecipe fancy_llama = getUtil().shapeless(Material.TRADER_LLAMA_SPAWN_EGG, "t_llama_egg_recipe");
fancy_llama.addIngredient(1, Material.LLAMA_SPAWN_EGG);
fancy_llama.addIngredient(1, Material.WANDERING_TRADER_SPAWN_EGG);
getPlugin().getServer().addRecipe(fancy_llama);
}
private void turtleEgg() {
ShapedRecipe tortuga = getUtil().shaped(Material.TURTLE_SPAWN_EGG, "turtle_egg_recipe");
tortuga.shape("asa","ses","asa");
tortuga.setIngredient('a', Material.AIR);
tortuga.setIngredient('s', Material.SCUTE);
tortuga.setIngredient('e', Material.EGG);
getPlugin().getServer().addRecipe(tortuga);
}
private void villagerEgg() {
ShapedRecipe moron = getUtil().shaped(Material.VILLAGER_SPAWN_EGG, "villager_egg_recipe");
moron.shape("aea","p*p","aea");
moron.setIngredient('a', Material.AIR);
moron.setIngredient('e', Material.EGG);
moron.setIngredient('p', Material.POPPY);
moron.setIngredient('*', Material.EGG);
getPlugin().getServer().addRecipe(moron);
}
private void traderEgg() {
ShapedRecipe dinkhead = getUtil().shaped(Material.WANDERING_TRADER_SPAWN_EGG, "trader_egg_recipe");
dinkhead.shape("aea","e*e","aea");
dinkhead.setIngredient('a', Material.AIR);
dinkhead.setIngredient('e', Material.EMERALD);
dinkhead.setIngredient('*', Material.VILLAGER_SPAWN_EGG);
getPlugin().getServer().addRecipe(dinkhead);
}
private void zHorseEgg() {
ShapelessRecipe scary_horus = getUtil().shapeless(Material.ZOMBIE_HORSE_SPAWN_EGG, "z_horse_egg_recipe");
scary_horus.addIngredient(1, Material.ZOMBIE_SPAWN_EGG);
scary_horus.addIngredient(1, Material.HORSE_SPAWN_EGG);
getPlugin().getServer().addRecipe(scary_horus);
}
}

View File

@ -0,0 +1,22 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class ElytraRecipe extends Craftable {
public ElytraRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().elytraEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.ELYTRA, "elytra_recipe");
recipe.shape("sds","mnm","mam");
recipe.setIngredient('s', Material.STRING);
recipe.setIngredient('d', Material.DIAMOND);
recipe.setIngredient('m', Material.PHANTOM_MEMBRANE);
recipe.setIngredient('n', Material.NETHER_STAR);
recipe.setIngredient('a', Material.AIR);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,21 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class EndFrameRecipe extends Craftable {
public EndFrameRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().endFrameEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.END_PORTAL_FRAME, "end_frame_recipe");
recipe.shape("pap","eoe","eee");
recipe.setIngredient('p', Material.ENDER_PEARL);
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('e', Material.END_STONE);
recipe.setIngredient('o', Material.OBSIDIAN);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,49 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class HorseArmorRecipe extends Craftable {
public HorseArmorRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().horseArmorEnabled()) return;
ShapedRecipe leather = getUtil().shaped(Material.LEATHER_HORSE_ARMOR, "leather_horse_armor_recipe");
leather.shape("aal","lcl","lsi");
leather.setIngredient('a', Material.AIR);
leather.setIngredient('s', Material.STRING);
leather.setIngredient('l', Material.LEATHER);
leather.setIngredient('c', Material.SADDLE);
leather.setIngredient('i', Material.IRON_INGOT);
getPlugin().getServer().addRecipe(leather);
ShapedRecipe iron = getUtil().shaped(Material.IRON_HORSE_ARMOR, "iron_horse_armor_recipe");
iron.shape("aai","ici","isi");
iron.setIngredient('a', Material.AIR);
iron.setIngredient('s', Material.STRING);
iron.setIngredient('c', Material.SADDLE);
iron.setIngredient('i', Material.IRON_INGOT);
getPlugin().getServer().addRecipe(iron);
ShapedRecipe gold = getUtil().shaped(Material.GOLDEN_HORSE_ARMOR, "golden_horse_armor_recipe");
gold.shape("aag","g*g","gsi");
gold.setIngredient('a', Material.AIR);
gold.setIngredient('s', Material.STRING);
gold.setIngredient('g', Material.GOLD_INGOT);
gold.setIngredient('*', Material.SADDLE);
gold.setIngredient('i', Material.IRON_INGOT);
getPlugin().getServer().addRecipe(gold);
ShapedRecipe diamond = getUtil().shaped(Material.DIAMOND_HORSE_ARMOR, "diamond_horse_armor_recipe");
diamond.shape("aad","d*d","dsi");
diamond.setIngredient('a', Material.AIR);
diamond.setIngredient('s', Material.STRING);
diamond.setIngredient('d', Material.DIAMOND);
diamond.setIngredient('*', Material.SADDLE);
diamond.setIngredient('i', Material.IRON_INGOT);
getPlugin().getServer().addRecipe(diamond);
}
}

View File

@ -0,0 +1,133 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
import org.bukkit.inventory.ShapelessRecipe;
public class MusicDiscRecipes extends Craftable {
public MusicDiscRecipes(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().musicDiscsEnabled()) return;
cd11();
cd13();
cdCAT();
cdBLOCKS();
cdCHIRP();
cdFAR();
cdMALL();
cdMELLOHI();
cdSTAL();
cdSTRAD();
cdWARD();
cdWAIT();
cdPIGSTEP();
}
private void cd13() {
ShapedRecipe thirteen = getUtil().shaped(Material.MUSIC_DISC_13, "13_recipe");
thirteen.shape("fff", "fyf", "fff");
thirteen.setIngredient('f', Material.FLINT);
thirteen.setIngredient('y', Material.YELLOW_DYE);
getPlugin().getServer().addRecipe(thirteen);
}
private void cdCAT() {
ShapedRecipe cat = getUtil().shaped(Material.MUSIC_DISC_CAT, "cat_recipe");
cat.shape("fff", "fgf", "fff");
cat.setIngredient('f', Material.FLINT);
cat.setIngredient('g', Material.LIME_DYE);
getPlugin().getServer().addRecipe(cat);
}
private void cdBLOCKS() {
ShapedRecipe blocks = getUtil().shaped(Material.MUSIC_DISC_BLOCKS, "blocks_recipe");
blocks.shape("fff", "fof", "fff");
blocks.setIngredient('f', Material.FLINT);
blocks.setIngredient('o', Material.ORANGE_DYE);
getPlugin().getServer().addRecipe(blocks);
}
private void cdCHIRP() {
ShapedRecipe chirp = getUtil().shaped(Material.MUSIC_DISC_CHIRP, "chirp_recipe");
chirp.shape("fff", "frf", "fff");
chirp.setIngredient('f', Material.FLINT);
chirp.setIngredient('r', Material.RED_DYE);
getPlugin().getServer().addRecipe(chirp);
}
private void cdFAR() {
ShapelessRecipe far = getUtil().shapeless(Material.MUSIC_DISC_FAR, "far_recipe");
far.addIngredient(2, Material.BONE_MEAL);
far.addIngredient(1, Material.MUSIC_DISC_CAT);
getPlugin().getServer().addRecipe(far);
}
private void cdMALL() {
ShapedRecipe mall = getUtil().shaped(Material.MUSIC_DISC_MALL, "mall_recipe");
mall.shape("fff", "fpf", "fff");
mall.setIngredient('f', Material.FLINT);
mall.setIngredient('p', Material.PURPLE_DYE);
getPlugin().getServer().addRecipe(mall);
}
private void cdMELLOHI() {
ShapedRecipe mellohi = getUtil().shaped(Material.MUSIC_DISC_MELLOHI, "mellohi_recipe");
mellohi.shape("fff", "fpf", "fff");
mellohi.setIngredient('f', Material.FLINT);
mellohi.setIngredient('p', Material.PINK_DYE);
getPlugin().getServer().addRecipe(mellohi);
}
private void cdSTAL() {
ShapedRecipe stal = getUtil().shaped(Material.MUSIC_DISC_STAL, "stal_recipe");
stal.shape("fff", "fbf", "fff");
stal.setIngredient('f', Material.FLINT);
stal.setIngredient('b', Material.BLACK_DYE);
getPlugin().getServer().addRecipe(stal);
}
private void cdSTRAD() {
ShapedRecipe strad = getUtil().shaped(Material.MUSIC_DISC_STRAD, "strad_recipe");
strad.shape("fff", "fwf", "fff");
strad.setIngredient('f', Material.FLINT);
strad.setIngredient('w', Material.WHITE_DYE);
getPlugin().getServer().addRecipe(strad);
}
private void cdWARD() {
ShapedRecipe ward = getUtil().shaped(Material.MUSIC_DISC_WARD, "ward_recipe");
ward.shape("fff", "fgf", "fff");
ward.setIngredient('f', Material.FLINT);
ward.setIngredient('g', Material.GREEN_DYE);
getPlugin().getServer().addRecipe(ward);
}
private void cd11() {
ShapedRecipe eleven = getUtil().shaped(Material.MUSIC_DISC_11, "11_recipe");
eleven.shape("fff", "fbf", "ffa");
eleven.setIngredient('f', Material.FLINT);
eleven.setIngredient('b', Material.BLACK_DYE);
eleven.setIngredient('a', Material.AIR);
getPlugin().getServer().addRecipe(eleven);
}
private void cdWAIT() {
ShapedRecipe wait = getUtil().shaped(Material.MUSIC_DISC_WAIT, "wait_recipe");
wait.shape("fff", "fbf", "fff");
wait.setIngredient('f', Material.FLINT);
wait.setIngredient('b', Material.BLUE_DYE);
getPlugin().getServer().addRecipe(wait);
}
private void cdPIGSTEP() {
ShapedRecipe pigstep = getUtil().shaped(Material.MUSIC_DISC_PIGSTEP, "pigstep_recipe");
pigstep.shape("nqn", "qyq", "nqn");
pigstep.setIngredient('n', Material.NETHER_BRICK);
pigstep.setIngredient('q', Material.QUARTZ);
pigstep.setIngredient('y', Material.YELLOW_DYE);
getPlugin().getServer().addRecipe(pigstep);
}
}

View File

@ -0,0 +1,20 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class NameTagRecipe extends Craftable {
public NameTagRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().nameTagEnabled()) return;
ShapedRecipe nametag = getUtil().shaped(Material.NAME_TAG, "nametag_recipe");
nametag.shape("aas","apa","paa");
nametag.setIngredient('a', Material.AIR);
nametag.setIngredient('s', Material.STRING);
nametag.setIngredient('p', Material.PAPER);
getPlugin().getServer().addRecipe(nametag);
}
}

View File

@ -0,0 +1,22 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class NetherStarRecipe extends Craftable {
public NetherStarRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().netherStarEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.NETHER_STAR, "nether_star_recipe");
recipe.shape("nwn","sss","bqb");
recipe.setIngredient('n', Material.NETHER_WART);
recipe.setIngredient('w', Material.WITHER_SKELETON_SKULL);
recipe.setIngredient('s', Material.SOUL_SAND);
recipe.setIngredient('b', Material.BLAZE_ROD);
recipe.setIngredient('q', Material.QUARTZ);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,18 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapelessRecipe;
public class NetherWartRecipe extends Craftable {
public NetherWartRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().netherWartEnabled()) return;
ShapelessRecipe recipe = getUtil().shapeless(Material.NETHER_WART, "netherwart_recipe");
recipe.addIngredient(1, Material.NETHER_WART_BLOCK);
recipe.getResult().setAmount(9);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,21 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class SaddleRecipe extends Craftable {
public SaddleRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().saddleEnabled()) return;
ShapedRecipe saddle = getUtil().shaped(Material.SADDLE, "saddle_recipe");
saddle.shape("wlw", "sls", "wlw");
saddle.setIngredient('w', Material.STICK);
saddle.setIngredient('s', Material.STRING);
saddle.setIngredient('l', Material.LEATHER);
getPlugin().getServer().addRecipe(saddle);
}
}

View File

@ -0,0 +1,19 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class SpawnerRecipe extends Craftable {
public SpawnerRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().spawnerEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.SPAWNER, "spawner_recipe");
recipe.shape("ccc","cec","ccc");
recipe.setIngredient('c', Material.CHAIN);
recipe.setIngredient('e', Material.PIG_SPAWN_EGG);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,22 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class TotemRecipe extends Craftable {
public TotemRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().totemEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.TOTEM_OF_UNDYING, "totem_recipe");
recipe.shape("aea","ibi","aga");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('e', Material.EMERALD);
recipe.setIngredient('i', Material.GOLD_INGOT);
recipe.setIngredient('b', Material.GOLD_BLOCK);
recipe.setIngredient('g', Material.GOLDEN_APPLE);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,20 @@
package io.github.paldiu.recipes;
import io.github.paldiu.Uncraftables;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class TridentRecipe extends Craftable {
public TridentRecipe(Uncraftables plugin) {
super(plugin);
if (!getConfigValues().tridentEnabled()) return;
ShapedRecipe recipe = getUtil().shaped(Material.TRIDENT, "trident_recipe");
recipe.shape("add","apd","paa");
recipe.setIngredient('a', Material.AIR);
recipe.setIngredient('p', Material.PRISMARINE_SHARD);
recipe.setIngredient('d', Material.DIAMOND);
getPlugin().getServer().addRecipe(recipe);
}
}

View File

@ -0,0 +1,17 @@
barrier: true
bedrock: true
bell: true
crying_obsidian: true
dragon_egg: true
eggs: true
elytra: true
end_frame: true
horse_armor: true
music_discs: true
name_tag: true
nether_star: true
nether_wart: true
saddle: true
spawner: true
totem: true
trident: true

View File

@ -1,6 +1,16 @@
name: Uncraftables name: Uncraftables
main: dev.coomware.Uncraftables main: io.github.paldiu.Uncraftables
version: 1.1.0 version: 1.2.0
author: CoomWare author: Paldiu
description: Adds in crafting recipes for all uncraftable items. description: Adds in crafting recipes for uncraftable items.
api-version: 1.16 api-version: 1.19
commands:
reload:
description: Reloads the plugin.
permission: uncraftables.reload
permissions:
uncraftables.reload:
description: Allows the user to reload the plugin.
default: op