2020-01-16 12:35:46 +01:00
|
|
|
package com.minelittlepony.unicopia;
|
2018-09-12 01:29:49 +02:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.item.AlicornAmuletItem;
|
|
|
|
import com.minelittlepony.unicopia.item.SugaryItem;
|
2020-01-16 16:46:24 +01:00
|
|
|
import com.minelittlepony.unicopia.item.AppleItem;
|
|
|
|
import com.minelittlepony.unicopia.item.CloudPlacerItem;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.item.ExtendedShearsItem;
|
|
|
|
import com.minelittlepony.unicopia.item.CursedMagicGemItem;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.item.EnchantedStaffItem;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.item.MossItem;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.item.BagOfHoldingItem;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.item.RottenAppleItem;
|
|
|
|
import com.minelittlepony.unicopia.item.RottenTomatoItem;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.item.SpearItem;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.item.MagicGemItem;
|
|
|
|
import com.minelittlepony.unicopia.item.SpellbookItem;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.item.StaffItem;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.item.TomatoItem;
|
|
|
|
import com.minelittlepony.unicopia.item.TomatoSeedsItem;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.item.ZapAppleItem;
|
2020-01-16 16:46:24 +01:00
|
|
|
import com.minelittlepony.unicopia.item.PredicatedBlockItem;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.item.StickItem;
|
2019-03-08 21:55:27 +01:00
|
|
|
import com.minelittlepony.unicopia.item.URecord;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.item.consumables.BushToxicityDeterminent;
|
|
|
|
import com.minelittlepony.unicopia.item.consumables.CookedToxicityDeterminent;
|
|
|
|
import com.minelittlepony.unicopia.item.consumables.FlowerToxicityDeterminent;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.item.consumables.DelegatedEdibleItem;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.item.consumables.Toxicity;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.item.consumables.DelegateFoodItem;
|
2020-01-16 16:46:24 +01:00
|
|
|
import com.minelittlepony.unicopia.magic.spells.SpellRegistry;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.magic.spells.SpellScorch;
|
2020-01-16 16:46:24 +01:00
|
|
|
|
2018-09-12 01:29:49 +02:00
|
|
|
import net.minecraft.item.Item;
|
2020-01-16 16:46:24 +01:00
|
|
|
import net.minecraft.item.ItemGroup;
|
|
|
|
import net.minecraft.block.Block;
|
|
|
|
import net.minecraft.block.Blocks;
|
|
|
|
import net.minecraft.client.MinecraftClient;
|
|
|
|
import net.minecraft.client.color.item.ItemColors;
|
|
|
|
import net.minecraft.item.BlockItem;
|
2020-01-27 11:05:22 +01:00
|
|
|
import net.minecraft.item.FoodComponent;
|
2020-01-16 16:46:24 +01:00
|
|
|
import net.minecraft.item.FoodComponents;
|
2018-09-12 01:29:49 +02:00
|
|
|
import net.minecraft.item.ItemStack;
|
2020-01-16 16:46:24 +01:00
|
|
|
import net.minecraft.item.Items;
|
|
|
|
import net.minecraft.item.TallBlockItem;
|
|
|
|
import net.minecraft.item.Item.Settings;
|
2020-01-16 12:35:46 +01:00
|
|
|
import net.minecraft.util.Identifier;
|
2020-01-17 14:27:26 +01:00
|
|
|
import net.minecraft.util.UseAction;
|
2020-01-16 16:46:24 +01:00
|
|
|
import net.minecraft.util.registry.Registry;
|
2018-09-16 00:45:44 +02:00
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
import static com.minelittlepony.unicopia.EquinePredicates.*;
|
2018-09-12 01:29:49 +02:00
|
|
|
|
2019-03-18 14:22:22 +01:00
|
|
|
import javax.annotation.Nullable;
|
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.ServerInteractionManager;
|
2019-02-17 00:08:19 +01:00
|
|
|
import com.minelittlepony.unicopia.Unicopia;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.entity.ConstructionCloudEntity;
|
2020-01-27 11:05:22 +01:00
|
|
|
import com.minelittlepony.unicopia.entity.RacingCloudEntity;
|
2020-01-17 14:27:26 +01:00
|
|
|
import com.minelittlepony.unicopia.entity.WildCloudEntity;
|
2019-01-10 18:46:40 +01:00
|
|
|
import com.minelittlepony.unicopia.forgebullshit.BuildInTexturesBakery;
|
2019-02-01 17:29:58 +01:00
|
|
|
import com.minelittlepony.unicopia.forgebullshit.OreReplacer;
|
2019-03-09 14:42:11 +01:00
|
|
|
import com.minelittlepony.unicopia.forgebullshit.UnFuckedItemSnow;
|
2019-01-07 09:34:58 +01:00
|
|
|
|
2018-09-12 01:29:49 +02:00
|
|
|
public class UItems {
|
2020-01-16 16:46:24 +01:00
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
private static final StickItem stick = register(new StickItem(), "minecraft", "stick");
|
|
|
|
private static final ExtendedShearsItem shears = register(new ExtendedShearsItem(), "minecraft", "shears");
|
2020-01-16 16:46:24 +01:00
|
|
|
|
|
|
|
public static final AppleItem red_apple = register(new AppleItem(FoodComponents.APPLE), "minecraft", "apple");
|
|
|
|
public static final AppleItem green_apple = register(new AppleItem(FoodComponents.APPLE), "apple_green");
|
|
|
|
public static final AppleItem sweet_apple = register(new AppleItem(FoodComponents.APPLE), "apple_sweet");
|
|
|
|
public static final AppleItem sour_apple = register(new AppleItem(FoodComponents.APPLE), "apple_sour");
|
2018-09-12 01:29:49 +02:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final ZapAppleItem zap_apple = register(new ZapAppleItem(), "zap_apple");
|
2019-01-13 21:05:40 +01:00
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
public static final AppleItem rotten_apple = register(new RottenAppleItem(FoodComponents.APPLE), "rotten_apple");
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final AppleItem cooked_zap_apple = register(new AppleItem(FoodComponents.APPLE), "cooked_zap_apple");
|
2019-01-13 21:05:40 +01:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item cloud_matter = register(new Item(new Item.Settings().group(ItemGroup.MATERIALS)), "cloud_matter");
|
|
|
|
public static final Item dew_drop = register(new Item(new Item.Settings().group(ItemGroup.MATERIALS)), "dew_drop");
|
2018-09-16 00:45:44 +02:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final CloudPlacerItem racing_cloud_spawner = register(new CloudPlacerItem(UEntities.RACING_CLOUD), "racing_cloud_spawner");
|
|
|
|
public static final CloudPlacerItem construction_cloud_spawner = register(new CloudPlacerItem(UEntities.CONSTRUCTION_CLOUD), "construction_cloud_spawner");
|
|
|
|
public static final CloudPlacerItem wild_cloud_spawner = register(new CloudPlacerItem(UEntities.WILD_CLOUD), "wild_cloud_spawner");
|
2018-09-16 00:45:44 +02:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item cloud_block = register(new PredicatedBlockItem(UBlocks.normal_cloud, new Item.Settings().group(ItemGroup.MATERIALS), INTERACT_WITH_CLOUDS), "cloud_block");
|
|
|
|
public static final Item enchanted_cloud = register(new PredicatedBlockItem(UBlocks.enchanted_cloud, new Item.Settings().group(ItemGroup.MATERIALS), INTERACT_WITH_CLOUDS), "enchanted_cloud_block");
|
|
|
|
public static final Item packed_cloud = register(new PredicatedBlockItem(UBlocks.packed_cloud, new Item.Settings().group(ItemGroup.MATERIALS), INTERACT_WITH_CLOUDS), "packed_cloud_block");
|
2018-09-16 00:45:44 +02:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item cloud_stairs = register(new PredicatedBlockItem(UBlocks.cloud_stairs, new Item.Settings().group(ItemGroup.BUILDING_BLOCKS), INTERACT_WITH_CLOUDS), "cloud_stairs");
|
2018-09-16 00:45:44 +02:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item cloud_fence = register(new PredicatedBlockItem(UBlocks.cloud_fence, new Item.Settings().group(ItemGroup.DECORATIONS), INTERACT_WITH_CLOUDS), "cloud_fence");
|
|
|
|
public static final Item cloud_banister = register(new PredicatedBlockItem(UBlocks.cloud_banister, new Item.Settings().group(ItemGroup.DECORATIONS), INTERACT_WITH_CLOUDS), "cloud_banister");
|
2018-09-16 00:45:44 +02:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item anvil = register(new PredicatedBlockItem(UBlocks.anvil, new Item.Settings().group(ItemGroup.DECORATIONS), INTERACT_WITH_CLOUDS), "cloud_anvil");
|
2018-09-19 09:07:39 +02:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item record_crusade = register(new URecord(USounds.RECORD_CRUSADE), "crusade");
|
2020-01-17 14:27:26 +01:00
|
|
|
public static final Item record_pet = register(new URecord(USounds.RECORD_PET), "pet");
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item record_popular = register(new URecord(USounds.RECORD_POPULAR), "popular");
|
|
|
|
public static final Item record_funk = register(new URecord(USounds.RECORD_FUNK), "funk");
|
2019-02-04 17:16:17 +01:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item hive = register(new BlockItem(UBlocks.hive, new Item.Settings().group(ItemGroup.BUILDING_BLOCKS)), "hive");
|
|
|
|
public static final Item chitin_shell = register(new Item(new Item.Settings().group(ItemGroup.MATERIALS)), "chitin_shell");
|
|
|
|
public static final Item chitin = register(new BlockItem(UBlocks.chitin, new Item.Settings().group(ItemGroup.BUILDING_BLOCKS)), "chitin_block");
|
|
|
|
public static final Item chissled_chitin = register(new BlockItem(UBlocks.chissled_chitin, new Item.Settings().group(ItemGroup.BUILDING_BLOCKS)), "chissled_chitin");
|
|
|
|
public static final Item cuccoon = register(new BlockItem(UBlocks.cuccoon, new Item.Settings().group(ItemGroup.MATERIALS)), "cuccoon");
|
|
|
|
public static final Item slime_layer = register(new BlockItem(UBlocks.slime_layer, new Item.Settings().group(ItemGroup.DECORATIONS)), "slime_layer");
|
2018-09-19 09:07:39 +02:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item mist_door = register(new TallBlockItem(UBlocks.mist_door, new Item.Settings().group(ItemGroup.REDSTONE)), "mist_door");
|
|
|
|
public static final Item library_door = register(new TallBlockItem(UBlocks.library_door, new Item.Settings().group(ItemGroup.REDSTONE)), "library_door");
|
|
|
|
public static final Item bakery_door = register(new TallBlockItem(UBlocks.bakery_door, new Item.Settings().group(ItemGroup.REDSTONE)), "bakery_door");
|
|
|
|
public static final Item diamond_door = register(new TallBlockItem(UBlocks.diamond_door, new Item.Settings().group(ItemGroup.REDSTONE)), "diamond_door");
|
2019-03-08 21:55:27 +01:00
|
|
|
|
2020-01-16 16:46:24 +01:00
|
|
|
public static final Item sugar_block = register(new BlockItem(UBlocks.sugar_block, new Item.Settings().group(ItemGroup.BUILDING_BLOCKS)), "sugar_block");
|
|
|
|
|
|
|
|
public static final Item cloud_slab = new PredicatedBlockItem(UBlocks.cloud_slab, new Item.Settings().group(ItemGroup.BUILDING_BLOCKS), INTERACT_WITH_CLOUDS);
|
|
|
|
public static final Item enchanted_cloud_slab = new PredicatedBlockItem(UBlocks.enchanted_cloud_slab, new Item.Settings().group(ItemGroup.BUILDING_BLOCKS), INTERACT_WITH_CLOUDS);
|
|
|
|
public static final Item packed_cloud_slab = new PredicatedBlockItem(UBlocks.packed_cloud_slab, new Item.Settings().group(ItemGroup.BUILDING_BLOCKS), INTERACT_WITH_CLOUDS);
|
2018-09-16 00:45:44 +02:00
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
public static final MagicGemItem spell = register(new MagicGemItem(), "gem");
|
|
|
|
public static final MagicGemItem curse = register(new CursedMagicGemItem(), "corrupted_gem");
|
2018-09-19 09:07:39 +02:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final BagOfHoldingItem bag_of_holding = register(new BagOfHoldingItem(), "bag_of_holding");
|
|
|
|
public static final AlicornAmuletItem alicorn_amulet = register(new AlicornAmuletItem(), "alicorn_amulet");
|
2018-09-19 09:07:39 +02:00
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
public static final SpellbookItem spellbook = register(new SpellbookItem(), "spellbook");
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item staff_meadow_brook = register(new StaffItem(new Item.Settings().maxCount(1).maxDamage(2)), "staff_meadow_brook");
|
|
|
|
public static final Item staff_remembrance = register(new EnchantedStaffItem(new Item.Settings(), new SpellScorch()), "staff_remembrance");
|
2019-02-14 18:11:28 +01:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item spear = register(new SpearItem(new Item.Settings().maxCount(1).maxDamage(500)), "spear");
|
2019-04-09 13:45:36 +02:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final MossItem moss = register(new MossItem(new Item.Settings()), "moss");
|
2019-01-10 10:35:15 +01:00
|
|
|
|
2018-09-26 20:53:35 +02:00
|
|
|
public static final Item alfalfa_seeds = new ItemSeedFood(1, 4, UBlocks.alfalfa, Blocks.FARMLAND)
|
2018-09-25 23:30:21 +02:00
|
|
|
.setTranslationKey("alfalfa_seeds")
|
2019-01-08 21:23:22 +01:00
|
|
|
.setRegistryName(Unicopia.MODID, "alfalfa_seeds")
|
|
|
|
.setCreativeTab(CreativeTabs.MATERIALS);
|
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item enchanted_torch = register(new BlockItem(UBlocks.enchanted_torch, new Item.Settings().group(ItemGroup.DECORATIONS)), "enchanted_torch");
|
|
|
|
|
|
|
|
public static final Item alfalfa_leaves = register(new Item(new Item.Settings()
|
|
|
|
.group(ItemGroup.FOOD)
|
|
|
|
.food(new FoodComponent.Builder()
|
|
|
|
.hunger(1)
|
|
|
|
.saturationModifier(3)
|
|
|
|
.build())), "alfalfa_leaves");
|
|
|
|
|
|
|
|
public static final Item cereal = register(new SugaryItem(new Item.Settings()
|
|
|
|
.group(ItemGroup.FOOD)
|
|
|
|
.food(new FoodComponent.Builder()
|
|
|
|
.hunger(9)
|
|
|
|
.saturationModifier(0.8F)
|
|
|
|
.build())
|
|
|
|
.maxCount(1)
|
|
|
|
.recipeRemainder(Items.BOWL), 1), "cereal");
|
|
|
|
public static final Item sugar_cereal = register(new SugaryItem(new Item.Settings()
|
|
|
|
.group(ItemGroup.FOOD)
|
|
|
|
.food(new FoodComponent.Builder()
|
|
|
|
.hunger(20)
|
|
|
|
.saturationModifier(-2)
|
|
|
|
.build())
|
|
|
|
.maxCount(1)
|
|
|
|
.recipeRemainder(Items.BOWL), 110), "sugar_cereal");
|
|
|
|
|
|
|
|
public static final TomatoItem tomato = register(new TomatoItem(4, 34), "tomato");
|
|
|
|
public static final RottenTomatoItem rotten_tomato = register(new RottenTomatoItem(4, 34), "rotten_tomato");
|
|
|
|
|
|
|
|
public static final TomatoItem cloudsdale_tomato = register(new TomatoItem(16, 4), "cloudsdale_tomato");
|
|
|
|
public static final RottenTomatoItem rotten_cloudsdale_tomato = register(new RottenTomatoItem(5, 34), "rotten_cloudsdale_tomato");
|
2019-03-20 21:37:49 +01:00
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
public static final TomatoSeedsItem tomato_seeds = new TomatoSeedsItem(Unicopia.MODID, "tomato_seeds");
|
2019-01-06 22:31:34 +01:00
|
|
|
|
2019-01-25 16:22:41 +01:00
|
|
|
public static final Item apple_seeds = new UItemDecoration(UBlocks.apple_tree, Unicopia.MODID, "apple_seeds");
|
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
public static final Item apple_leaves = new BlockItem(UBlocks.apple_leaves);
|
2019-01-25 16:22:41 +01:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item double_plant = new DelegateFoodItem(Blocks.TALL_GRASS, stack ->
|
2019-01-29 12:53:43 +01:00
|
|
|
BlockDoublePlant.EnumPlantType.byMetadata(stack.getMetadata()).getTranslationKey()
|
2020-01-27 11:05:22 +01:00
|
|
|
).setFoodDelegate(new DelegatedEdibleItem(new BushToxicityDeterminent()))
|
2019-01-29 12:53:43 +01:00
|
|
|
.setTranslationKey("doublePlant");
|
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item tall_grass = new DelegateFoodItem(Blocks.GRASS, stack -> {
|
2019-01-31 15:34:08 +01:00
|
|
|
switch (stack.getMetadata()) {
|
|
|
|
case 0: return "shrub";
|
|
|
|
case 1: return "grass";
|
|
|
|
case 2: return "fern";
|
|
|
|
default: return "";
|
|
|
|
}
|
2020-01-27 11:05:22 +01:00
|
|
|
}).setFoodDelegate(new DelegatedEdibleItem(stack -> {
|
2019-01-31 15:34:08 +01:00
|
|
|
switch (stack.getMetadata()) {
|
|
|
|
default:
|
|
|
|
case 0: return Toxicity.SAFE;
|
|
|
|
case 1: return Toxicity.SAFE;
|
|
|
|
case 2: return Toxicity.SEVERE;
|
|
|
|
}
|
|
|
|
}));
|
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item yellow_flower = new DelegateFoodItem(Blocks.YELLOW_FLOWER, stack ->
|
2019-01-29 12:53:43 +01:00
|
|
|
BlockFlower.EnumFlowerType.getType(BlockFlower.EnumFlowerColor.YELLOW, stack.getMetadata()).getTranslationKey()
|
2020-01-27 11:05:22 +01:00
|
|
|
).setFoodDelegate(new DelegatedEdibleItem(new FlowerToxicityDeterminent(BlockFlower.EnumFlowerColor.YELLOW)))
|
2019-01-29 12:53:43 +01:00
|
|
|
.setTranslationKey("flower");
|
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item red_flower = new DelegateFoodItem(Blocks.RED_FLOWER, stack ->
|
2019-01-29 12:53:43 +01:00
|
|
|
BlockFlower.EnumFlowerType.getType(BlockFlower.EnumFlowerColor.RED, stack.getMetadata()).getTranslationKey()
|
2020-01-27 11:05:22 +01:00
|
|
|
).setFoodDelegate(new DelegatedEdibleItem(new FlowerToxicityDeterminent(BlockFlower.EnumFlowerColor.RED)))
|
2019-01-29 12:53:43 +01:00
|
|
|
.setTranslationKey("rose");
|
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item daffodil_daisy_sandwich = new DelegatedEdibleItem(Unicopia.MODID, "daffodil_daisy_sandwich", 3, 2, CookedToxicityDeterminent.instance)
|
2019-01-31 13:18:27 +01:00
|
|
|
.setHasSubtypes(true);
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item hay_burger = new DelegatedEdibleItem(Unicopia.MODID, "hay_burger", 3, 4, CookedToxicityDeterminent.instance)
|
2019-01-31 13:18:27 +01:00
|
|
|
.setHasSubtypes(true);
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item hay_fries = new DelegatedEdibleItem(Unicopia.MODID, "hay_fries", 1, 5, stack -> Toxicity.SAFE);
|
|
|
|
public static final Item salad = new DelegatedEdibleItem(Unicopia.MODID, "salad", 4, 2, CookedToxicityDeterminent.instance)
|
2019-01-31 13:18:27 +01:00
|
|
|
.setHasSubtypes(true)
|
2019-01-31 10:50:35 +01:00
|
|
|
.setContainerItem(Items.BOWL);
|
2019-01-30 21:17:46 +01:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item wheat_worms = new DelegatedEdibleItem(Unicopia.MODID, "wheat_worms", 1, 0, stack -> Toxicity.SEVERE);
|
2019-01-30 21:17:46 +01:00
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
public static final Item mug = register(new Item(new Item.Settings().group(ItemGroup.MATERIALS)), "mug");
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item apple_cider = new DelegatedEdibleItem(Unicopia.MODID, "apple_cider", 4, 2, stack -> Toxicity.MILD)
|
2020-01-17 14:27:26 +01:00
|
|
|
.setUseAction(UseAction.DRINK)
|
2019-01-31 10:50:35 +01:00
|
|
|
.setContainerItem(mug)
|
|
|
|
.setFull3D();
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item juice = new DelegatedEdibleItem(Unicopia.MODID, "juice", 2, 2, stack -> Toxicity.SAFE)
|
2020-01-17 14:27:26 +01:00
|
|
|
.setUseAction(UseAction.DRINK)
|
2019-01-31 10:50:35 +01:00
|
|
|
.setContainerItem(Items.GLASS_BOTTLE);
|
2020-01-27 11:05:22 +01:00
|
|
|
public static final Item burned_juice = new DelegatedEdibleItem(Unicopia.MODID, "burned_juice", 3, 1, stack -> Toxicity.FAIR)
|
2020-01-17 14:27:26 +01:00
|
|
|
.setUseAction(UseAction.DRINK)
|
2019-01-31 10:50:35 +01:00
|
|
|
.setContainerItem(Items.GLASS_BOTTLE);
|
2019-01-30 21:17:46 +01:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
private static <T extends Item> T register(T item, String namespace, String name) {
|
|
|
|
return Registry.ITEM.add(new Identifier(namespace, name), item);
|
|
|
|
}
|
|
|
|
private static <T extends Item> T register(T item, String name) {
|
|
|
|
return register(item, name);
|
|
|
|
}
|
2019-03-16 08:36:51 +01:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
static void bootstrap() {
|
2019-01-31 10:50:35 +01:00
|
|
|
RegistryLockSpinner.open(Item.REGISTRY, Items.class, r -> r
|
2019-02-07 11:14:41 +01:00
|
|
|
.replace(Items.APPLE, red_apple)
|
2019-01-31 15:34:08 +01:00
|
|
|
.replace(Item.getItemFromBlock(Blocks.TALLGRASS), tall_grass)
|
2019-01-31 10:50:35 +01:00
|
|
|
.replace(Item.getItemFromBlock(Blocks.DOUBLE_PLANT), double_plant)
|
|
|
|
.replace(Item.getItemFromBlock(Blocks.YELLOW_FLOWER), yellow_flower)
|
|
|
|
.replace(Item.getItemFromBlock(Blocks.RED_FLOWER), red_flower));
|
2018-09-12 01:29:49 +02:00
|
|
|
|
2020-01-27 11:05:22 +01:00
|
|
|
if (ServerInteractionManager.isClientSide()) {
|
2020-01-16 12:35:46 +01:00
|
|
|
BuildInTexturesBakery.getBuiltInTextures().add(new Identifier(Unicopia.MODID, "items/empty_slot_gem"));
|
2020-01-27 11:05:22 +01:00
|
|
|
|
|
|
|
ItemColors registry;
|
|
|
|
registry.register((stack, tint) -> {
|
|
|
|
if (MAGI.test(MinecraftClient.getInstance().player)) {
|
|
|
|
return SpellRegistry.instance().getSpellTintFromStack(stack);
|
|
|
|
}
|
|
|
|
|
|
|
|
return 0xffffff;
|
|
|
|
}, spell, curse);
|
2018-09-16 00:45:44 +02:00
|
|
|
}
|
2019-01-30 21:17:46 +01:00
|
|
|
|
2020-01-17 14:27:26 +01:00
|
|
|
FurnaceRecipes.instance().addSmeltingRecipe(new ItemStack(zap_apple), new ItemStack(cooked_zap_apple), 0.1F);
|
|
|
|
FurnaceRecipes.instance().addSmeltingRecipe(new ItemStack(juice), new ItemStack(burned_juice), 0);
|
|
|
|
FurnaceRecipes.instance().addSmeltingRecipe(new ItemStack(cuccoon), new ItemStack(chitin_shell), 0.3F);
|
2018-09-20 22:49:10 +02:00
|
|
|
|
2019-02-01 17:29:58 +01:00
|
|
|
new OreReplacer()
|
2019-02-07 11:14:41 +01:00
|
|
|
.registerAll(stack -> stack.getItem().getRegistryName().equals(red_apple.getRegistryName()))
|
2019-02-01 17:29:58 +01:00
|
|
|
.done();
|
|
|
|
}
|
2018-09-12 01:29:49 +02:00
|
|
|
}
|