added cotton
@ -8,7 +8,7 @@ org.gradle.jvmargs=-Xmx1G
|
|||||||
loader_version=0.9.3+build.207
|
loader_version=0.9.3+build.207
|
||||||
|
|
||||||
# Mod Properties
|
# Mod Properties
|
||||||
mod_version = 1.16.3.8
|
mod_version = 1.16.3.9
|
||||||
maven_group = de.jottyfan.minecraft
|
maven_group = de.jottyfan.minecraft
|
||||||
archives_base_name = quickiefabric
|
archives_base_name = quickiefabric
|
||||||
|
|
||||||
|
@ -19,5 +19,6 @@ public class QuickieFabric implements ModInitializer {
|
|||||||
RegistryManager.registerBlockEntities();
|
RegistryManager.registerBlockEntities();
|
||||||
RegistryManager.registerContainer();
|
RegistryManager.registerContainer();
|
||||||
RegistryManager.registerFeatures();
|
RegistryManager.registerFeatures();
|
||||||
|
RegistryManager.registerLootings();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,11 +1,14 @@
|
|||||||
package de.jottyfan.minecraft.quickiefabric;
|
package de.jottyfan.minecraft.quickiefabric;
|
||||||
|
|
||||||
|
import de.jottyfan.minecraft.quickiefabric.blocks.QuickieBlocks;
|
||||||
import de.jottyfan.minecraft.quickiefabric.container.BackpackScreen;
|
import de.jottyfan.minecraft.quickiefabric.container.BackpackScreen;
|
||||||
import de.jottyfan.minecraft.quickiefabric.init.RegistryManager;
|
import de.jottyfan.minecraft.quickiefabric.init.RegistryManager;
|
||||||
import net.fabricmc.api.ClientModInitializer;
|
import net.fabricmc.api.ClientModInitializer;
|
||||||
import net.fabricmc.api.EnvType;
|
import net.fabricmc.api.EnvType;
|
||||||
import net.fabricmc.api.Environment;
|
import net.fabricmc.api.Environment;
|
||||||
|
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
|
||||||
import net.fabricmc.fabric.api.client.screenhandler.v1.ScreenRegistry;
|
import net.fabricmc.fabric.api.client.screenhandler.v1.ScreenRegistry;
|
||||||
|
import net.minecraft.client.render.RenderLayer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@ -17,5 +20,7 @@ public class QuickieFabricClient implements ClientModInitializer {
|
|||||||
@Override
|
@Override
|
||||||
public void onInitializeClient() {
|
public void onInitializeClient() {
|
||||||
ScreenRegistry.register(RegistryManager.BACKPACK_SCREEN_HANDLER, BackpackScreen::new);
|
ScreenRegistry.register(RegistryManager.BACKPACK_SCREEN_HANDLER, BackpackScreen::new);
|
||||||
|
// make cotton plant block transparent
|
||||||
|
BlockRenderLayerMap.INSTANCE.putBlock(QuickieBlocks.COTTONPLANT, RenderLayer.getCutout());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,44 @@
|
|||||||
|
package de.jottyfan.minecraft.quickiefabric.blocks;
|
||||||
|
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||||
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
|
import net.minecraft.block.BlockState;
|
||||||
|
import net.minecraft.block.Blocks;
|
||||||
|
import net.minecraft.block.CropBlock;
|
||||||
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
|
import net.minecraft.item.ItemConvertible;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.util.ActionResult;
|
||||||
|
import net.minecraft.util.Hand;
|
||||||
|
import net.minecraft.util.ItemScatterer;
|
||||||
|
import net.minecraft.util.collection.DefaultedList;
|
||||||
|
import net.minecraft.util.hit.BlockHitResult;
|
||||||
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
public class BlockCottonplant extends CropBlock {
|
||||||
|
|
||||||
|
public BlockCottonplant() {
|
||||||
|
super(FabricBlockSettings.copy(Blocks.WHEAT));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected ItemConvertible getSeedsItem() {
|
||||||
|
return QuickieItems.COTTONSEED;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand,
|
||||||
|
BlockHitResult hitResult) {
|
||||||
|
if (!world.isClient && isMature(state)) {
|
||||||
|
DefaultedList<ItemStack> list = DefaultedList.of();
|
||||||
|
list.add(new ItemStack(getSeedsItem(), new Random().nextInt(3) + 1));
|
||||||
|
list.add(new ItemStack(QuickieItems.COTTON, new Random().nextFloat() > 0.9f ? 2 : 1));
|
||||||
|
world.setBlockState(pos, state.with(AGE, 0));
|
||||||
|
ItemScatterer.spawn(world, pos, list);
|
||||||
|
}
|
||||||
|
return super.onUse(state, world, pos, player, hand, hitResult);
|
||||||
|
}
|
||||||
|
}
|
@ -17,4 +17,5 @@ public class QuickieBlocks {
|
|||||||
public static final BlockItemhoarder ITEMHOARDER = new BlockItemhoarder();
|
public static final BlockItemhoarder ITEMHOARDER = new BlockItemhoarder();
|
||||||
public static final BlockMonsterhoarder MONSTERHOARDER = new BlockMonsterhoarder();
|
public static final BlockMonsterhoarder MONSTERHOARDER = new BlockMonsterhoarder();
|
||||||
public static final BlockKelpstack KELPSTACK = new BlockKelpstack();
|
public static final BlockKelpstack KELPSTACK = new BlockKelpstack();
|
||||||
|
public static final BlockCottonplant COTTONPLANT = new BlockCottonplant();
|
||||||
}
|
}
|
||||||
|
@ -18,6 +18,8 @@ import de.jottyfan.minecraft.quickiefabric.event.EventBlockBreak;
|
|||||||
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||||
import de.jottyfan.minecraft.quickiefabric.tools.QuickieTools;
|
import de.jottyfan.minecraft.quickiefabric.tools.QuickieTools;
|
||||||
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
|
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
|
||||||
|
import net.fabricmc.fabric.api.loot.v1.FabricLootPoolBuilder;
|
||||||
|
import net.fabricmc.fabric.api.loot.v1.event.LootTableLoadingCallback;
|
||||||
import net.fabricmc.fabric.api.screenhandler.v1.ScreenHandlerRegistry;
|
import net.fabricmc.fabric.api.screenhandler.v1.ScreenHandlerRegistry;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
@ -28,6 +30,9 @@ import net.minecraft.item.BlockItem;
|
|||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemGroup;
|
import net.minecraft.item.ItemGroup;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.loot.ConstantLootTableRange;
|
||||||
|
import net.minecraft.loot.condition.RandomChanceLootCondition;
|
||||||
|
import net.minecraft.loot.entry.ItemEntry;
|
||||||
import net.minecraft.screen.ScreenHandlerType;
|
import net.minecraft.screen.ScreenHandlerType;
|
||||||
import net.minecraft.structure.rule.BlockMatchRuleTest;
|
import net.minecraft.structure.rule.BlockMatchRuleTest;
|
||||||
import net.minecraft.util.ActionResult;
|
import net.minecraft.util.ActionResult;
|
||||||
@ -99,6 +104,8 @@ public class RegistryManager {
|
|||||||
stacks.add(new ItemStack(QuickieItems.PENCIL));
|
stacks.add(new ItemStack(QuickieItems.PENCIL));
|
||||||
stacks.add(new ItemStack(QuickieItems.ROTTEN_FLESH_STRIPES));
|
stacks.add(new ItemStack(QuickieItems.ROTTEN_FLESH_STRIPES));
|
||||||
stacks.add(new ItemStack(QuickieItems.CARROTSTACK));
|
stacks.add(new ItemStack(QuickieItems.CARROTSTACK));
|
||||||
|
stacks.add(new ItemStack(QuickieItems.COTTON));
|
||||||
|
stacks.add(new ItemStack(QuickieItems.COTTONSEED));
|
||||||
stacks.add(new ItemStack(QuickieItems.BACKPACK_BROWN));
|
stacks.add(new ItemStack(QuickieItems.BACKPACK_BROWN));
|
||||||
stacks.add(new ItemStack(QuickieItems.BACKPACK_WHITE));
|
stacks.add(new ItemStack(QuickieItems.BACKPACK_WHITE));
|
||||||
stacks.add(new ItemStack(QuickieItems.BACKPACK_BLACK));
|
stacks.add(new ItemStack(QuickieItems.BACKPACK_BLACK));
|
||||||
@ -152,12 +159,13 @@ public class RegistryManager {
|
|||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public static final void registerBlockEntities() {
|
public static final void registerBlockEntities() {
|
||||||
LOGGER.debug("registering quickiefabric block entities");
|
LOGGER.debug("registering quickiefabric block entities");
|
||||||
QuickieFabricBlockEntity.ITEMHOARDER = (BlockEntityType<ItemHoarderBlockEntity>) registerBlockEntity("itemhoarderblockentity", ItemHoarderBlockEntity::new,
|
QuickieFabricBlockEntity.ITEMHOARDER = (BlockEntityType<ItemHoarderBlockEntity>) registerBlockEntity(
|
||||||
QuickieBlocks.ITEMHOARDER);
|
"itemhoarderblockentity", ItemHoarderBlockEntity::new, QuickieBlocks.ITEMHOARDER);
|
||||||
QuickieFabricBlockEntity.MONSTERHOARDER = (BlockEntityType<MonsterHoarderBlockEntity>) registerBlockEntity("monsterhoarderblockentity",
|
QuickieFabricBlockEntity.MONSTERHOARDER = (BlockEntityType<MonsterHoarderBlockEntity>) registerBlockEntity(
|
||||||
MonsterHoarderBlockEntity::new, QuickieBlocks.MONSTERHOARDER);
|
"monsterhoarderblockentity", MonsterHoarderBlockEntity::new, QuickieBlocks.MONSTERHOARDER);
|
||||||
QuickieFabricBlockEntity.EMPTYLAVAHOARDER = (BlockEntityType<EmptyLavaHoarderBlockEntity>) registerBlockEntity("emptylavahoarderblockentity",
|
QuickieFabricBlockEntity.EMPTYLAVAHOARDER = (BlockEntityType<EmptyLavaHoarderBlockEntity>) registerBlockEntity(
|
||||||
EmptyLavaHoarderBlockEntity::new, QuickieBlocks.EMPTYLAVAHOARDER, QuickieBlocks.LAVAHOARDER);
|
"emptylavahoarderblockentity", EmptyLavaHoarderBlockEntity::new, QuickieBlocks.EMPTYLAVAHOARDER,
|
||||||
|
QuickieBlocks.LAVAHOARDER);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final void registerBlocks() {
|
public static final void registerBlocks() {
|
||||||
@ -173,6 +181,7 @@ public class RegistryManager {
|
|||||||
registerBlock(QuickieBlocks.ITEMHOARDER, "itemhoarder");
|
registerBlock(QuickieBlocks.ITEMHOARDER, "itemhoarder");
|
||||||
registerBlock(QuickieBlocks.MONSTERHOARDER, "monsterhoarder");
|
registerBlock(QuickieBlocks.MONSTERHOARDER, "monsterhoarder");
|
||||||
registerBlock(QuickieBlocks.KELPSTACK, "kelpstack");
|
registerBlock(QuickieBlocks.KELPSTACK, "kelpstack");
|
||||||
|
registerBlock(QuickieBlocks.COTTONPLANT, "cottonplant");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final void registerItems() {
|
public static final void registerItems() {
|
||||||
@ -184,6 +193,8 @@ public class RegistryManager {
|
|||||||
registerItem(QuickieItems.SULPHOR, "sulphor");
|
registerItem(QuickieItems.SULPHOR, "sulphor");
|
||||||
registerItem(QuickieItems.ROTTEN_FLESH_STRIPES, "rotten_flesh_stripes");
|
registerItem(QuickieItems.ROTTEN_FLESH_STRIPES, "rotten_flesh_stripes");
|
||||||
registerItem(QuickieItems.CARROTSTACK, "carrotstack");
|
registerItem(QuickieItems.CARROTSTACK, "carrotstack");
|
||||||
|
registerItem(QuickieItems.COTTON, "cotton");
|
||||||
|
registerItem(QuickieItems.COTTONSEED, "cottonseed");
|
||||||
registerItem(QuickieItems.BACKPACK_BROWN, "backpack_brown");
|
registerItem(QuickieItems.BACKPACK_BROWN, "backpack_brown");
|
||||||
registerItem(QuickieItems.BACKPACK_WHITE, "backpack_white");
|
registerItem(QuickieItems.BACKPACK_WHITE, "backpack_white");
|
||||||
registerItem(QuickieItems.BACKPACK_BLACK, "backpack_black");
|
registerItem(QuickieItems.BACKPACK_BLACK, "backpack_black");
|
||||||
@ -210,7 +221,6 @@ public class RegistryManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static final void registerContainer() {
|
public static final void registerContainer() {
|
||||||
// ScreenHandlerRegistry.registerSimple(BACKPACK_CONTAINTER, (syncId, inventory) -> new BackpackScreenHandler(syncId, inventory));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final void registerEvents() {
|
public static final void registerEvents() {
|
||||||
@ -242,4 +252,21 @@ public class RegistryManager {
|
|||||||
registerFeature("feature_sandsalpeter", FEATURE_SANDSALPETER);
|
registerFeature("feature_sandsalpeter", FEATURE_SANDSALPETER);
|
||||||
registerFeature("feature_oresandsalpeter", FEATURE_ORESANDSALPETER);
|
registerFeature("feature_oresandsalpeter", FEATURE_ORESANDSALPETER);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static final void registerLootings() {
|
||||||
|
LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, setter) -> {
|
||||||
|
if (isGrass(id)) {
|
||||||
|
FabricLootPoolBuilder poolBuilder = FabricLootPoolBuilder.builder().rolls(ConstantLootTableRange.create(1))
|
||||||
|
.withCondition(RandomChanceLootCondition.builder(0.125f).build())
|
||||||
|
.withEntry(ItemEntry.builder(QuickieItems.COTTONSEED).build());
|
||||||
|
supplier.withPool(poolBuilder.build());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private final static boolean isGrass(Identifier id) {
|
||||||
|
return id.equals(new Identifier("blocks/grass")) || id.equals(new Identifier("blocks/fern"))
|
||||||
|
|| id.equals(new Identifier("blocks/tall_grass"));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,15 @@
|
|||||||
|
package de.jottyfan.minecraft.quickiefabric.items;
|
||||||
|
|
||||||
|
import de.jottyfan.minecraft.quickiefabric.init.RegistryManager;
|
||||||
|
import net.minecraft.item.Item;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author jotty
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ItemCotton extends Item {
|
||||||
|
public ItemCotton() {
|
||||||
|
super(new Item.Settings().group(RegistryManager.QUICKIEFABRIC_GROUP).maxCount(99));
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
package de.jottyfan.minecraft.quickiefabric.items;
|
||||||
|
|
||||||
|
import de.jottyfan.minecraft.quickiefabric.blocks.QuickieBlocks;
|
||||||
|
import de.jottyfan.minecraft.quickiefabric.init.RegistryManager;
|
||||||
|
import net.minecraft.block.BlockState;
|
||||||
|
import net.minecraft.block.Blocks;
|
||||||
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.item.ItemUsageContext;
|
||||||
|
import net.minecraft.util.ActionResult;
|
||||||
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author jotty
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ItemCottonseed extends Item {
|
||||||
|
public ItemCottonseed() {
|
||||||
|
super(new Item.Settings().group(RegistryManager.QUICKIEFABRIC_GROUP).maxCount(99));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ActionResult useOnBlock(ItemUsageContext context) {
|
||||||
|
BlockPos pos = context.getBlockPos();
|
||||||
|
World world = context.getWorld();
|
||||||
|
if (QuickieItems.COTTONSEED.equals(context.getStack().getItem())) {
|
||||||
|
BlockState state = world.getBlockState(pos);
|
||||||
|
if (Blocks.FARMLAND.equals(state.getBlock()) && world.getBlockState(pos.up()).isAir()) {
|
||||||
|
world.setBlockState(pos.up(), QuickieBlocks.COTTONPLANT.getDefaultState());
|
||||||
|
context.getStack().decrement(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return super.useOnBlock(context);
|
||||||
|
}
|
||||||
|
}
|
@ -29,4 +29,6 @@ public class QuickieItems {
|
|||||||
public static final ItemBackpack BACKPACK_LIGHTBLUE = new ItemBackpack();
|
public static final ItemBackpack BACKPACK_LIGHTBLUE = new ItemBackpack();
|
||||||
public static final ItemRottenFleshStripes ROTTEN_FLESH_STRIPES = new ItemRottenFleshStripes();
|
public static final ItemRottenFleshStripes ROTTEN_FLESH_STRIPES = new ItemRottenFleshStripes();
|
||||||
public static final ItemCarrotstack CARROTSTACK = new ItemCarrotstack();
|
public static final ItemCarrotstack CARROTSTACK = new ItemCarrotstack();
|
||||||
|
public static final ItemCotton COTTON = new ItemCotton();
|
||||||
|
public static final ItemCottonseed COTTONSEED = new ItemCottonseed();
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"variants": {
|
||||||
|
"age=0": { "model": "quickiefabric:block/cottonplant0" },
|
||||||
|
"age=1": { "model": "quickiefabric:block/cottonplant1" },
|
||||||
|
"age=2": { "model": "quickiefabric:block/cottonplant1" },
|
||||||
|
"age=3": { "model": "quickiefabric:block/cottonplant2" },
|
||||||
|
"age=4": { "model": "quickiefabric:block/cottonplant2" },
|
||||||
|
"age=5": { "model": "quickiefabric:block/cottonplant3" },
|
||||||
|
"age=6": { "model": "quickiefabric:block/cottonplant3" },
|
||||||
|
"age=7": { "model": "quickiefabric:block/cottonplant4" }
|
||||||
|
}
|
||||||
|
}
|
@ -29,6 +29,8 @@
|
|||||||
"item.quickiefabric.backpack_lightblue": "hellblauer Rucksack",
|
"item.quickiefabric.backpack_lightblue": "hellblauer Rucksack",
|
||||||
"item.quickiefabric.rotten_flesh_stripes": "geschnittenes Gammelfleisch",
|
"item.quickiefabric.rotten_flesh_stripes": "geschnittenes Gammelfleisch",
|
||||||
"item.quickiefabric.carrotstack": "Karottenbündel",
|
"item.quickiefabric.carrotstack": "Karottenbündel",
|
||||||
|
"item.quickiefabric.cotton": "Baumwolle",
|
||||||
|
"item.quickiefabric.cottonseed": "Baumwollsaat",
|
||||||
"block.quickiefabric.orenethersulphor": "Nether-Schwefel",
|
"block.quickiefabric.orenethersulphor": "Nether-Schwefel",
|
||||||
"block.quickiefabric.oresalpeter": "Salpetererz",
|
"block.quickiefabric.oresalpeter": "Salpetererz",
|
||||||
"block.quickiefabric.oresandsalpeter": "Salpetergestein",
|
"block.quickiefabric.oresandsalpeter": "Salpetergestein",
|
||||||
@ -48,6 +50,7 @@
|
|||||||
"block.quickiefabric.itemhoarder": "Itemsauger",
|
"block.quickiefabric.itemhoarder": "Itemsauger",
|
||||||
"block.quickiefabric.monsterhoarder": "Monstersauger",
|
"block.quickiefabric.monsterhoarder": "Monstersauger",
|
||||||
"block.quickiefabric.kelpstack": "Seegrassbündel",
|
"block.quickiefabric.kelpstack": "Seegrassbündel",
|
||||||
|
"block.quickiefabric.cottonplant": "Baumwollpflanze",
|
||||||
"container.quickiefabric.backpack": "Rucksack",
|
"container.quickiefabric.backpack": "Rucksack",
|
||||||
"msg.buildingplan.start": "beginne Konstruktionsaufnahme bei %s,%s,%s",
|
"msg.buildingplan.start": "beginne Konstruktionsaufnahme bei %s,%s,%s",
|
||||||
"msg.buildingplan.end": "beende Konstruktionsaufnahme bei %s,%s,%s",
|
"msg.buildingplan.end": "beende Konstruktionsaufnahme bei %s,%s,%s",
|
||||||
|
@ -29,6 +29,8 @@
|
|||||||
"item.quickiefabric.backpack_lightblue": "light blue backpack",
|
"item.quickiefabric.backpack_lightblue": "light blue backpack",
|
||||||
"item.quickiefabric.rotten_flesh_stripes": "rotten flesh stripes",
|
"item.quickiefabric.rotten_flesh_stripes": "rotten flesh stripes",
|
||||||
"item.quickiefabric.carrotstack": "a bundle of carrots",
|
"item.quickiefabric.carrotstack": "a bundle of carrots",
|
||||||
|
"item.quickiefabric.cotton": "cotton",
|
||||||
|
"item.quickiefabric.cottonseed": "cotton seed",
|
||||||
"block.quickiefabric.orenethersulphor": "nether sulfur",
|
"block.quickiefabric.orenethersulphor": "nether sulfur",
|
||||||
"block.quickiefabric.oresalpeter": "salpeter ore",
|
"block.quickiefabric.oresalpeter": "salpeter ore",
|
||||||
"block.quickiefabric.oresandsalpeter": "salpeter stone",
|
"block.quickiefabric.oresandsalpeter": "salpeter stone",
|
||||||
@ -48,6 +50,7 @@
|
|||||||
"block.quickiefabric.itemhoarder": "item hoarder",
|
"block.quickiefabric.itemhoarder": "item hoarder",
|
||||||
"block.quickiefabric.monsterhoarder": "monster hoarder",
|
"block.quickiefabric.monsterhoarder": "monster hoarder",
|
||||||
"block.quickiefabric.kelpstack": "kelp bundle",
|
"block.quickiefabric.kelpstack": "kelp bundle",
|
||||||
|
"block.quickiefabric.cottonplant": "cotton plant",
|
||||||
"container.quickiefabric.backpack": "backpack",
|
"container.quickiefabric.backpack": "backpack",
|
||||||
"msg.buildingplan.start": "started recording of construction at %s,%s,%s",
|
"msg.buildingplan.start": "started recording of construction at %s,%s,%s",
|
||||||
"msg.buildingplan.end": "finished recording of construction at %s,%s,%s",
|
"msg.buildingplan.end": "finished recording of construction at %s,%s,%s",
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent":"block/cross",
|
||||||
|
"textures":{
|
||||||
|
"cross":"quickiefabric:block/cottonplant0"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent":"block/cross",
|
||||||
|
"textures":{
|
||||||
|
"cross":"quickiefabric:block/cottonplant1"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent":"block/cross",
|
||||||
|
"textures":{
|
||||||
|
"cross":"quickiefabric:block/cottonplant2"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent":"block/cross",
|
||||||
|
"textures":{
|
||||||
|
"cross":"quickiefabric:block/cottonplant3"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent":"block/cross",
|
||||||
|
"textures":{
|
||||||
|
"cross":"quickiefabric:block/cottonplant4"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "item/generated",
|
||||||
|
"textures": {
|
||||||
|
"layer0": "quickiefabric:item/cotton"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "item/generated",
|
||||||
|
"textures": {
|
||||||
|
"layer0": "quickiefabric:item/cottonseed"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "item/generated",
|
||||||
|
"textures": {
|
||||||
|
"layer0": "quickiefabric:item/cottonseed"
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 2.1 KiB |
BIN
src/main/resources/assets/quickiefabric/textures/item/cotton.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 1.7 KiB |
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:crafting_shapeless",
|
||||||
|
"ingredients": [
|
||||||
|
{
|
||||||
|
"item": "quickiefabric:cotton"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"result": {
|
||||||
|
"item": "minecraft:string",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|