mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 11:45:51 +00:00
Merge branch 'rune' into ShulkerShell
This commit is contained in:
commit
65021f7615
@ -33,6 +33,7 @@
|
|||||||
* Added "Red Sand -> Red Sandstone" recipe to the Electric Press
|
* Added "Red Sand -> Red Sandstone" recipe to the Electric Press
|
||||||
* Industrial Miners can now also mine Gilded Blackstone
|
* Industrial Miners can now also mine Gilded Blackstone
|
||||||
* Added a config option to disable Players from burning when exposed to radiation
|
* Added a config option to disable Players from burning when exposed to radiation
|
||||||
|
* Added Nitwit Rune
|
||||||
|
|
||||||
#### Changes
|
#### Changes
|
||||||
* Performance improvement for Programmable Android rotations
|
* Performance improvement for Programmable Android rotations
|
||||||
|
@ -394,6 +394,7 @@ public final class SlimefunItems {
|
|||||||
public static final SlimefunItemStack MAGNET = new SlimefunItemStack("MAGNET", HeadTexture.MAGNET, "&cMagnet");
|
public static final SlimefunItemStack MAGNET = new SlimefunItemStack("MAGNET", HeadTexture.MAGNET, "&cMagnet");
|
||||||
public static final SlimefunItemStack NECROTIC_SKULL = new SlimefunItemStack("NECROTIC_SKULL", Material.WITHER_SKELETON_SKULL, "&cNecrotic Skull");
|
public static final SlimefunItemStack NECROTIC_SKULL = new SlimefunItemStack("NECROTIC_SKULL", Material.WITHER_SKELETON_SKULL, "&cNecrotic Skull");
|
||||||
public static final SlimefunItemStack ESSENCE_OF_AFTERLIFE = new SlimefunItemStack("ESSENCE_OF_AFTERLIFE", Material.GUNPOWDER, "&4Essence of Afterlife");
|
public static final SlimefunItemStack ESSENCE_OF_AFTERLIFE = new SlimefunItemStack("ESSENCE_OF_AFTERLIFE", Material.GUNPOWDER, "&4Essence of Afterlife");
|
||||||
|
public static final SlimefunItemStack STRANGE_NETHER_GOO = new SlimefunItemStack("STRANGE_NETHER_GOO", Material.PURPLE_DYE, "&5Strange Nether Goo", "", "&fA strange bio matter that", "&fcan be acquired from", "&fbartering with Piglins");
|
||||||
public static final SlimefunItemStack ELECTRO_MAGNET = new SlimefunItemStack("ELECTRO_MAGNET", HeadTexture.MAGNET, "&cElectromagnet");
|
public static final SlimefunItemStack ELECTRO_MAGNET = new SlimefunItemStack("ELECTRO_MAGNET", HeadTexture.MAGNET, "&cElectromagnet");
|
||||||
public static final SlimefunItemStack HEATING_COIL = new SlimefunItemStack("HEATING_COIL", HeadTexture.HEATING_COIL, "&cHeating Coil");
|
public static final SlimefunItemStack HEATING_COIL = new SlimefunItemStack("HEATING_COIL", HeadTexture.HEATING_COIL, "&cHeating Coil");
|
||||||
public static final SlimefunItemStack COOLING_UNIT = new SlimefunItemStack("COOLING_UNIT", HeadTexture.COOLING_UNIT, "&bCooling Unit");
|
public static final SlimefunItemStack COOLING_UNIT = new SlimefunItemStack("COOLING_UNIT", HeadTexture.COOLING_UNIT, "&bCooling Unit");
|
||||||
@ -409,6 +410,7 @@ public final class SlimefunItems {
|
|||||||
public static final SlimefunItemStack ANCIENT_ALTAR = new SlimefunItemStack("ANCIENT_ALTAR", Material.ENCHANTING_TABLE, "&dAncient Altar", "", "&5Multi-Block Altar for", "&5magical Crafting Processes");
|
public static final SlimefunItemStack ANCIENT_ALTAR = new SlimefunItemStack("ANCIENT_ALTAR", Material.ENCHANTING_TABLE, "&dAncient Altar", "", "&5Multi-Block Altar for", "&5magical Crafting Processes");
|
||||||
public static final SlimefunItemStack COPPER_WIRE = new SlimefunItemStack("COPPER_WIRE", Material.STRING, "&6Copper Wire", "", "&6Crucial component in electric modules");
|
public static final SlimefunItemStack COPPER_WIRE = new SlimefunItemStack("COPPER_WIRE", Material.STRING, "&6Copper Wire", "", "&6Crucial component in electric modules");
|
||||||
|
|
||||||
|
/* Rainbow blocks */
|
||||||
private static final String RAINBOW = "&dCycles through all Colors of the Rainbow!";
|
private static final String RAINBOW = "&dCycles through all Colors of the Rainbow!";
|
||||||
public static final SlimefunItemStack RAINBOW_WOOL = new SlimefunItemStack("RAINBOW_WOOL", Material.WHITE_WOOL, "&5Rainbow Wool", "", RAINBOW);
|
public static final SlimefunItemStack RAINBOW_WOOL = new SlimefunItemStack("RAINBOW_WOOL", Material.WHITE_WOOL, "&5Rainbow Wool", "", RAINBOW);
|
||||||
public static final SlimefunItemStack RAINBOW_GLASS = new SlimefunItemStack("RAINBOW_GLASS", Material.WHITE_STAINED_GLASS, "&5Rainbow Glass", "", RAINBOW);
|
public static final SlimefunItemStack RAINBOW_GLASS = new SlimefunItemStack("RAINBOW_GLASS", Material.WHITE_STAINED_GLASS, "&5Rainbow Glass", "", RAINBOW);
|
||||||
@ -636,6 +638,7 @@ public final class SlimefunItems {
|
|||||||
public static final SlimefunItemStack LIGHTNING_RUNE = new SlimefunItemStack("ANCIENT_RUNE_LIGHTNING", new ColoredFireworkStar(Color.fromRGB(255, 255, 95), "&7Ancient Rune &8&l[&e&lLightning&8&l]"));
|
public static final SlimefunItemStack LIGHTNING_RUNE = new SlimefunItemStack("ANCIENT_RUNE_LIGHTNING", new ColoredFireworkStar(Color.fromRGB(255, 255, 95), "&7Ancient Rune &8&l[&e&lLightning&8&l]"));
|
||||||
public static final SlimefunItemStack SOULBOUND_RUNE = new SlimefunItemStack("ANCIENT_RUNE_SOULBOUND", new ColoredFireworkStar(Color.fromRGB(47, 0, 117), "&7Ancient Rune &8&l[&5&lSoulbound&8&l]", "&eDrop this rune onto a dropped item to", "&5bind ðat item to your soul.", " ", "&eIt is advised that you only use this rune", "&eon &6important &eitems.", " ", "&eItems bound to your soul won't drop on death."));
|
public static final SlimefunItemStack SOULBOUND_RUNE = new SlimefunItemStack("ANCIENT_RUNE_SOULBOUND", new ColoredFireworkStar(Color.fromRGB(47, 0, 117), "&7Ancient Rune &8&l[&5&lSoulbound&8&l]", "&eDrop this rune onto a dropped item to", "&5bind ðat item to your soul.", " ", "&eIt is advised that you only use this rune", "&eon &6important &eitems.", " ", "&eItems bound to your soul won't drop on death."));
|
||||||
public static final SlimefunItemStack ENCHANTMENT_RUNE = new SlimefunItemStack("ANCIENT_RUNE_ENCHANTMENT", new ColoredFireworkStar(Color.fromRGB(255, 217, 25), "&7Ancient Rune &8&l[&6&lEnchantment&8&l]", "&eDrop this rune onto a dropped item to", "&6enchant ðat item with a random enchantment."));
|
public static final SlimefunItemStack ENCHANTMENT_RUNE = new SlimefunItemStack("ANCIENT_RUNE_ENCHANTMENT", new ColoredFireworkStar(Color.fromRGB(255, 217, 25), "&7Ancient Rune &8&l[&6&lEnchantment&8&l]", "&eDrop this rune onto a dropped item to", "&6enchant ðat item with a random enchantment."));
|
||||||
|
public static final SlimefunItemStack NITWIT_RUNE = new SlimefunItemStack("ANCIENT_RUNE_NITWIT", new ColoredFireworkStar(Color.fromRGB(160, 20, 5), "&7Ancient Rune &8&l[&4&lNitwits&8&l]", "&eRight click a villager to clear", "ðeir current job and trades."));
|
||||||
|
|
||||||
/* Electricity */
|
/* Electricity */
|
||||||
public static final SlimefunItemStack SOLAR_GENERATOR = new SlimefunItemStack("SOLAR_GENERATOR", Material.DAYLIGHT_DETECTOR, "&bSolar Generator", "", LoreBuilder.machine(MachineTier.BASIC, MachineType.GENERATOR), LoreBuilder.powerBuffer(0), LoreBuilder.powerPerSecond(4));
|
public static final SlimefunItemStack SOLAR_GENERATOR = new SlimefunItemStack("SOLAR_GENERATOR", Material.DAYLIGHT_DETECTOR, "&bSolar Generator", "", LoreBuilder.machine(MachineTier.BASIC, MachineType.GENERATOR), LoreBuilder.powerBuffer(0), LoreBuilder.powerPerSecond(4));
|
||||||
|
@ -5,6 +5,7 @@ import org.bukkit.Tag;
|
|||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
import io.github.thebusybiscuit.slimefun4.api.MinecraftVersion;
|
import io.github.thebusybiscuit.slimefun4.api.MinecraftVersion;
|
||||||
|
import io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems;
|
||||||
import io.github.thebusybiscuit.slimefun4.implementation.SlimefunPlugin;
|
import io.github.thebusybiscuit.slimefun4.implementation.SlimefunPlugin;
|
||||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||||
@ -67,6 +68,7 @@ public abstract class BioGenerator extends AGenerator {
|
|||||||
registerFuel(new MachineFuel(4, new ItemStack(Material.SHROOMLIGHT)));
|
registerFuel(new MachineFuel(4, new ItemStack(Material.SHROOMLIGHT)));
|
||||||
registerFuel(new MachineFuel(2, new ItemStack(Material.CRIMSON_FUNGUS)));
|
registerFuel(new MachineFuel(2, new ItemStack(Material.CRIMSON_FUNGUS)));
|
||||||
registerFuel(new MachineFuel(2, new ItemStack(Material.WARPED_FUNGUS)));
|
registerFuel(new MachineFuel(2, new ItemStack(Material.WARPED_FUNGUS)));
|
||||||
|
registerFuel(new MachineFuel(16, SlimefunItems.STRANGE_NETHER_GOO));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Leaves
|
// Leaves
|
||||||
|
@ -0,0 +1,61 @@
|
|||||||
|
package io.github.thebusybiscuit.slimefun4.implementation.items.magical;
|
||||||
|
|
||||||
|
import java.util.concurrent.ThreadLocalRandom;
|
||||||
|
|
||||||
|
import org.bukkit.GameMode;
|
||||||
|
import org.bukkit.Particle;
|
||||||
|
import org.bukkit.Sound;
|
||||||
|
import org.bukkit.entity.Villager;
|
||||||
|
import org.bukkit.entity.Villager.Profession;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
|
import io.github.thebusybiscuit.cscorelib2.inventory.ItemUtils;
|
||||||
|
import io.github.thebusybiscuit.slimefun4.core.handlers.EntityInteractHandler;
|
||||||
|
import io.github.thebusybiscuit.slimefun4.implementation.items.SimpleSlimefunItem;
|
||||||
|
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||||
|
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||||
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
|
||||||
|
import me.mrCookieSlime.Slimefun.api.SlimefunItemStack;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This {@link SlimefunItem} allows you to reset a {@link Villager} profession.
|
||||||
|
* Useful to reset a villager who does not have desirable trades.
|
||||||
|
*
|
||||||
|
* @author dNiym
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class NitwitRune extends SimpleSlimefunItem<EntityInteractHandler> {
|
||||||
|
|
||||||
|
public NitwitRune(Category category, SlimefunItemStack item, RecipeType recipeType, ItemStack[] recipe, ItemStack recipeOutput) {
|
||||||
|
super(category, item, recipeType, recipe, recipeOutput);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EntityInteractHandler getItemHandler() {
|
||||||
|
return (e, item, offhand) -> {
|
||||||
|
if (e.getRightClicked() instanceof Villager) {
|
||||||
|
Villager v = (Villager) e.getRightClicked();
|
||||||
|
|
||||||
|
if (v.getProfession() == Profession.NONE || v.getProfession() == Profession.NITWIT) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (e.getPlayer().getGameMode() != GameMode.CREATIVE) {
|
||||||
|
ItemUtils.consumeItem(item, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reset Villager
|
||||||
|
v.setVillagerExperience(0);
|
||||||
|
v.setVillagerLevel(1);
|
||||||
|
v.setProfession(Profession.NONE);
|
||||||
|
e.setCancelled(true);
|
||||||
|
|
||||||
|
double offset = ThreadLocalRandom.current().nextDouble(0.5);
|
||||||
|
|
||||||
|
v.getWorld().playSound(v.getLocation(), Sound.ENTITY_VILLAGER_CELEBRATE, 1, 1.4F);
|
||||||
|
v.getWorld().spawnParticle(Particle.CRIMSON_SPORE, v.getLocation(), 10, 0, offset / 2, 0, 0);
|
||||||
|
v.getWorld().spawnParticle(Particle.ENCHANTMENT_TABLE, v.getLocation(), 5, 0.04, 1, 0.04);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
@ -93,7 +93,7 @@ public class PiglinListener implements Listener {
|
|||||||
int chance = ((PiglinBarterDrop) sfi).getBarteringLootChance();
|
int chance = ((PiglinBarterDrop) sfi).getBarteringLootChance();
|
||||||
|
|
||||||
if (chance < 1 || chance >= 100) {
|
if (chance < 1 || chance >= 100) {
|
||||||
sfi.warn("The Piglin Bartering chance must be between 1-99%");
|
sfi.warn("The Piglin Bartering chance must be between 1-99% on item: " + sfi.getID());
|
||||||
}
|
}
|
||||||
else if (chance > ThreadLocalRandom.current().nextInt(100)) {
|
else if (chance > ThreadLocalRandom.current().nextInt(100)) {
|
||||||
e.getItemDrop().setItemStack(sfi.getRecipeOutput());
|
e.getItemDrop().setItemStack(sfi.getRecipeOutput());
|
||||||
|
@ -0,0 +1,39 @@
|
|||||||
|
package io.github.thebusybiscuit.slimefun4.implementation.resources;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Piglin;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
|
import io.github.thebusybiscuit.slimefun4.api.items.ItemSetting;
|
||||||
|
import io.github.thebusybiscuit.slimefun4.core.attributes.PiglinBarterDrop;
|
||||||
|
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.NitwitRune;
|
||||||
|
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||||
|
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||||
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
|
||||||
|
import me.mrCookieSlime.Slimefun.api.SlimefunItemStack;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This {@link SlimefunItem} can only be obtained via bartering with a {@link Piglin}, its
|
||||||
|
* only current uses is the recipe for crafting the {@link NitwitRune}.
|
||||||
|
*
|
||||||
|
* @author dNiym
|
||||||
|
*
|
||||||
|
* @see NitwitRune
|
||||||
|
* @see PiglinBarterDrop
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class StrangeNetherGoo extends SlimefunItem implements PiglinBarterDrop {
|
||||||
|
|
||||||
|
private final ItemSetting<Integer> chance = new ItemSetting<>("barter-chance", 7);
|
||||||
|
|
||||||
|
public StrangeNetherGoo(Category category, SlimefunItemStack item, RecipeType recipeType, ItemStack[] recipe) {
|
||||||
|
super(category, item, recipeType, recipe);
|
||||||
|
|
||||||
|
addItemSetting(chance);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getBarteringLootChance() {
|
||||||
|
return chance.getValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -272,6 +272,7 @@ public final class ResearchSetup {
|
|||||||
register("tape_measure", 261, "Tape Measure", 7, SlimefunItems.TAPE_MEASURE);
|
register("tape_measure", 261, "Tape Measure", 7, SlimefunItems.TAPE_MEASURE);
|
||||||
register("iron_golem_assembler", 262, "Automated Iron Golems", 30, SlimefunItems.IRON_GOLEM_ASSEMBLER);
|
register("iron_golem_assembler", 262, "Automated Iron Golems", 30, SlimefunItems.IRON_GOLEM_ASSEMBLER);
|
||||||
register("shulker_shell", 263, "Synthetic Shulkers", 30, SlimefunItems.SYNTHETIC_SHULKER_SHELL);
|
register("shulker_shell", 263, "Synthetic Shulkers", 30, SlimefunItems.SYNTHETIC_SHULKER_SHELL);
|
||||||
|
register("nitwit_rune", 264, "Reset Villager Trades", 26, SlimefunItems.NITWIT_RUNE, SlimefunItems.STRANGE_NETHER_GOO);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void register(String key, int id, String name, int defaultCost, ItemStack... items) {
|
private static void register(String key, int id, String name, int defaultCost, ItemStack... items) {
|
||||||
|
@ -128,6 +128,7 @@ import io.github.thebusybiscuit.slimefun4.implementation.items.magical.Knowledge
|
|||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.KnowledgeTome;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.KnowledgeTome;
|
||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.MagicEyeOfEnder;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.MagicEyeOfEnder;
|
||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.MagicalZombiePills;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.MagicalZombiePills;
|
||||||
|
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.NitwitRune;
|
||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.SoulboundItem;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.SoulboundItem;
|
||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.SoulboundRune;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.SoulboundRune;
|
||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.StormStaff;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.magical.StormStaff;
|
||||||
@ -181,6 +182,7 @@ import io.github.thebusybiscuit.slimefun4.implementation.items.weapons.IcyBow;
|
|||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.weapons.SeismicAxe;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.weapons.SeismicAxe;
|
||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.weapons.SwordOfBeheading;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.weapons.SwordOfBeheading;
|
||||||
import io.github.thebusybiscuit.slimefun4.implementation.items.weapons.VampireBlade;
|
import io.github.thebusybiscuit.slimefun4.implementation.items.weapons.VampireBlade;
|
||||||
|
import io.github.thebusybiscuit.slimefun4.implementation.resources.StrangeNetherGoo;
|
||||||
import io.github.thebusybiscuit.slimefun4.utils.HeadTexture;
|
import io.github.thebusybiscuit.slimefun4.utils.HeadTexture;
|
||||||
import io.github.thebusybiscuit.slimefun4.utils.SlimefunUtils;
|
import io.github.thebusybiscuit.slimefun4.utils.SlimefunUtils;
|
||||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||||
@ -2501,7 +2503,6 @@ public final class SlimefunItemSetup {
|
|||||||
new ItemStack[] {new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), SlimefunItems.RAINBOW_RUNE, new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA)},
|
new ItemStack[] {new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), SlimefunItems.RAINBOW_RUNE, new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA), new ItemStack(Material.WHITE_TERRACOTTA)},
|
||||||
new SlimefunItemStack(SlimefunItems.RAINBOW_CLAY, 8), new RainbowTickHandler(MaterialCollections.getAllTerracottaColors()))
|
new SlimefunItemStack(SlimefunItems.RAINBOW_CLAY, 8), new RainbowTickHandler(MaterialCollections.getAllTerracottaColors()))
|
||||||
.register(plugin);
|
.register(plugin);
|
||||||
|
|
||||||
new RainbowBlock(categories.magicalGadgets, SlimefunItems.RAINBOW_CONCRETE, RecipeType.ANCIENT_ALTAR,
|
new RainbowBlock(categories.magicalGadgets, SlimefunItems.RAINBOW_CONCRETE, RecipeType.ANCIENT_ALTAR,
|
||||||
new ItemStack[] {new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), SlimefunItems.RAINBOW_RUNE, new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE)},
|
new ItemStack[] {new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), SlimefunItems.RAINBOW_RUNE, new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE), new ItemStack(Material.WHITE_CONCRETE)},
|
||||||
new SlimefunItemStack(SlimefunItems.RAINBOW_CONCRETE, 8), new RainbowTickHandler(MaterialCollections.getAllConcreteColors()))
|
new SlimefunItemStack(SlimefunItems.RAINBOW_CONCRETE, 8), new RainbowTickHandler(MaterialCollections.getAllConcreteColors()))
|
||||||
@ -3228,6 +3229,17 @@ public final class SlimefunItemSetup {
|
|||||||
new ItemStack[] {SlimefunItems.SILICON, new ItemStack(Material.YELLOW_DYE), SlimefunItems.SILICON, new ItemStack(Material.YELLOW_DYE), new ItemStack(Material.STRING), new ItemStack(Material.YELLOW_DYE), SlimefunItems.GILDED_IRON, new ItemStack(Material.YELLOW_DYE), SlimefunItems.SILICON})
|
new ItemStack[] {SlimefunItems.SILICON, new ItemStack(Material.YELLOW_DYE), SlimefunItems.SILICON, new ItemStack(Material.YELLOW_DYE), new ItemStack(Material.STRING), new ItemStack(Material.YELLOW_DYE), SlimefunItems.GILDED_IRON, new ItemStack(Material.YELLOW_DYE), SlimefunItems.SILICON})
|
||||||
.register(plugin);
|
.register(plugin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (SlimefunPlugin.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
|
||||||
|
new StrangeNetherGoo(categories.magicalResources, SlimefunItems.STRANGE_NETHER_GOO, RecipeType.BARTER_DROP,
|
||||||
|
new ItemStack[] {null, null, null, null, new CustomItem(HeadTexture.PIGLIN_HEAD.getAsItemStack(), "&fPiglin"), null, null, null, null})
|
||||||
|
.register(plugin);
|
||||||
|
|
||||||
|
new NitwitRune(categories.magicalResources, SlimefunItems.NITWIT_RUNE, RecipeType.ANCIENT_ALTAR,
|
||||||
|
new ItemStack[] {SlimefunItems.MAGIC_LUMP_3, SlimefunItems.MAGICAL_GLASS, new ItemStack(Material.CRYING_OBSIDIAN), SlimefunItems.STRANGE_NETHER_GOO, SlimefunItems.FIRE_RUNE, SlimefunItems.STRANGE_NETHER_GOO, new ItemStack(Material.CRYING_OBSIDIAN), SlimefunItems.MAGICAL_GLASS, SlimefunItems.MAGIC_LUMP_3},
|
||||||
|
new SlimefunItemStack(SlimefunItems.NITWIT_RUNE, 3))
|
||||||
|
.register(plugin);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void registerArmorSet(Category category, ItemStack baseComponent, ItemStack[] items, String idSyntax, boolean vanilla, PotionEffect[][] effects, SlimefunAddon addon) {
|
private static void registerArmorSet(Category category, ItemStack baseComponent, ItemStack[] items, String idSyntax, boolean vanilla, PotionEffect[][] effects, SlimefunAddon addon) {
|
||||||
|
@ -101,7 +101,8 @@ public enum HeadTexture {
|
|||||||
CARGO_ARROW_LEFT("f2599bd986659b8ce2c4988525c94e19ddd39fad08a38284a197f1b70675acc"),
|
CARGO_ARROW_LEFT("f2599bd986659b8ce2c4988525c94e19ddd39fad08a38284a197f1b70675acc"),
|
||||||
CARGO_ARROW_RIGHT("c2f910c47da042e4aa28af6cc81cf48ac6caf37dab35f88db993accb9dfe516"),
|
CARGO_ARROW_RIGHT("c2f910c47da042e4aa28af6cc81cf48ac6caf37dab35f88db993accb9dfe516"),
|
||||||
ADD_NEW_LANGUAGE("3edd20be93520949e6ce789dc4f43efaeb28c717ee6bfcbbe02780142f716"),
|
ADD_NEW_LANGUAGE("3edd20be93520949e6ce789dc4f43efaeb28c717ee6bfcbbe02780142f716"),
|
||||||
IRON_GOLEM("89091d79ea0f59ef7ef94d7bba6e5f17f2f7d4572c44f90f76c4819a714");
|
IRON_GOLEM("89091d79ea0f59ef7ef94d7bba6e5f17f2f7d4572c44f90f76c4819a714"),
|
||||||
|
PIGLIN_HEAD("2882af1294a74023e6919a31d1a027310f2e142afb4667d230d155e7f21dbb41");
|
||||||
|
|
||||||
private final String texture;
|
private final String texture;
|
||||||
|
|
||||||
|
@ -237,6 +237,7 @@ slimefun:
|
|||||||
auto_brewer: Industrial Brewery
|
auto_brewer: Industrial Brewery
|
||||||
shulker_shell: Synthetic Shulkers
|
shulker_shell: Synthetic Shulkers
|
||||||
enchantment_rune: Ancient Enchanting
|
enchantment_rune: Ancient Enchanting
|
||||||
|
unemployment_rune: Reset Villager Trades
|
||||||
lead_clothing: Lead Clothing
|
lead_clothing: Lead Clothing
|
||||||
tape_measure: Tape Measure
|
tape_measure: Tape Measure
|
||||||
iron_golem_assembler: Automated Iron Golems
|
iron_golem_assembler: Automated Iron Golems
|
||||||
|
Loading…
Reference in New Issue
Block a user