From d57c833b2bcd016d06a62e34988ed756a8d311cb Mon Sep 17 00:00:00 2001 From: jottyfan Date: Sun, 2 Aug 2020 15:48:47 +0200 Subject: [PATCH] additional files for 1.16.1.1 --- .../MonsterHoarderBlockEntity.java | 40 ++++++++++++++ .../blocks/BlockMonsterhoarder.java | 52 ++++++++++++++++++ .../blockstates/monsterhoarder.json | 7 +++ .../models/block/monsterhoarder.json | 6 ++ .../models/item/monsterhoarder.json | 10 ++++ .../textures/block/monsterhoarder.png | Bin 0 -> 2370 bytes .../quickiefabric/recipes/monsterhoarder.json | 20 +++++++ .../recipes/torch_from_campfire.json | 9 +++ 8 files changed, 144 insertions(+) create mode 100644 src/main/java/de/jottyfan/minecraft/quickiefabric/blockentity/MonsterHoarderBlockEntity.java create mode 100644 src/main/java/de/jottyfan/minecraft/quickiefabric/blocks/BlockMonsterhoarder.java create mode 100644 src/main/resources/assets/quickiefabric/blockstates/monsterhoarder.json create mode 100644 src/main/resources/assets/quickiefabric/models/block/monsterhoarder.json create mode 100644 src/main/resources/assets/quickiefabric/models/item/monsterhoarder.json create mode 100644 src/main/resources/assets/quickiefabric/textures/block/monsterhoarder.png create mode 100644 src/main/resources/data/quickiefabric/recipes/monsterhoarder.json create mode 100644 src/main/resources/data/quickiefabric/recipes/torch_from_campfire.json diff --git a/src/main/java/de/jottyfan/minecraft/quickiefabric/blockentity/MonsterHoarderBlockEntity.java b/src/main/java/de/jottyfan/minecraft/quickiefabric/blockentity/MonsterHoarderBlockEntity.java new file mode 100644 index 0000000..1ae7110 --- /dev/null +++ b/src/main/java/de/jottyfan/minecraft/quickiefabric/blockentity/MonsterHoarderBlockEntity.java @@ -0,0 +1,40 @@ +package de.jottyfan.minecraft.quickiefabric.blockentity; + +import java.util.List; + +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.entity.Entity; +import net.minecraft.entity.mob.HostileEntity; +import net.minecraft.util.Tickable; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.Box; +import net.minecraft.world.World; + +/** + * + * @author jotty + * + */ +public class MonsterHoarderBlockEntity extends BlockEntity implements Tickable { + + private float suckradius; + + public MonsterHoarderBlockEntity() { + super(QuickieFabricBlockEntity.MONSTERHOARDER); + suckradius = 8f; // TODO: make it level up - able and start with 2 + } + + @Override + public void tick() { + BlockPos pos = getPos(); + World world = getWorld(); + Box box = new Box(pos).expand(suckradius); + List entities = world.getEntities(null, box); + for (Entity entity : entities) { + if (entity instanceof HostileEntity) { + HostileEntity mobEntity = (HostileEntity) entity; + mobEntity.setOnFireFor(90); + } + } + } +} diff --git a/src/main/java/de/jottyfan/minecraft/quickiefabric/blocks/BlockMonsterhoarder.java b/src/main/java/de/jottyfan/minecraft/quickiefabric/blocks/BlockMonsterhoarder.java new file mode 100644 index 0000000..3d1d655 --- /dev/null +++ b/src/main/java/de/jottyfan/minecraft/quickiefabric/blocks/BlockMonsterhoarder.java @@ -0,0 +1,52 @@ +package de.jottyfan.minecraft.quickiefabric.blocks; + +import java.util.ArrayList; +import java.util.List; + +import de.jottyfan.minecraft.quickiefabric.blockentity.MonsterHoarderBlockEntity; +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.minecraft.block.Block; +import net.minecraft.block.BlockEntityProvider; +import net.minecraft.block.BlockState; +import net.minecraft.block.Material; +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.entity.LivingEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.context.LootContext.Builder; +import net.minecraft.sound.SoundCategory; +import net.minecraft.sound.SoundEvents; +import net.minecraft.util.math.BlockPos; +import net.minecraft.world.BlockView; +import net.minecraft.world.World; + +/** + * + * @author jotty + * + */ +public class BlockMonsterhoarder extends Block implements BlockEntityProvider { + + public BlockMonsterhoarder() { + super(FabricBlockSettings.of(Material.WOOD).hardness(2.5f).lightLevel(20)); + } + + @Override + public BlockEntity createBlockEntity(BlockView blockView) { + return new MonsterHoarderBlockEntity(); + } + + @Override + public List getDroppedStacks(BlockState state, Builder builder) { + List list = new ArrayList<>(); + list.add(new ItemStack(QuickieBlocks.MONSTERHOARDER)); + return list; + } + + @Override + public void onPlaced(World world, BlockPos pos, BlockState state, LivingEntity placer, ItemStack itemStack) { + if (!world.isClient) { + world.playSound(null, pos, SoundEvents.UI_TOAST_CHALLENGE_COMPLETE, SoundCategory.PLAYERS, 1f, 1f); + } + super.onPlaced(world, pos, state, placer, itemStack); + } +} diff --git a/src/main/resources/assets/quickiefabric/blockstates/monsterhoarder.json b/src/main/resources/assets/quickiefabric/blockstates/monsterhoarder.json new file mode 100644 index 0000000..29b1f46 --- /dev/null +++ b/src/main/resources/assets/quickiefabric/blockstates/monsterhoarder.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickiefabric:block/monsterhoarder" + } + } +} diff --git a/src/main/resources/assets/quickiefabric/models/block/monsterhoarder.json b/src/main/resources/assets/quickiefabric/models/block/monsterhoarder.json new file mode 100644 index 0000000..525941b --- /dev/null +++ b/src/main/resources/assets/quickiefabric/models/block/monsterhoarder.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickiefabric:block/monsterhoarder" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiefabric/models/item/monsterhoarder.json b/src/main/resources/assets/quickiefabric/models/item/monsterhoarder.json new file mode 100644 index 0000000..cec3277 --- /dev/null +++ b/src/main/resources/assets/quickiefabric/models/item/monsterhoarder.json @@ -0,0 +1,10 @@ +{ + "parent": "quickiefabric:block/monsterhoarder", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiefabric/textures/block/monsterhoarder.png b/src/main/resources/assets/quickiefabric/textures/block/monsterhoarder.png new file mode 100644 index 0000000000000000000000000000000000000000..aba9272439bb5ab7992405c870c6152ebd9121ba GIT binary patch literal 2370 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/data/quickiefabric/recipes/monsterhoarder.json b/src/main/resources/data/quickiefabric/recipes/monsterhoarder.json new file mode 100644 index 0000000..9bcdaba --- /dev/null +++ b/src/main/resources/data/quickiefabric/recipes/monsterhoarder.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "ooo", + "oso", + "ooo" + ], + "key": { + "o": { + "item": "quickiefabric:speedpowder" + }, + "s": { + "item": "minecraft:torch" + } + }, + "result": { + "item": "quickiefabric:monsterhoarder", + "count": 1 + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiefabric/recipes/torch_from_campfire.json b/src/main/resources/data/quickiefabric/recipes/torch_from_campfire.json new file mode 100644 index 0000000..37fef8d --- /dev/null +++ b/src/main/resources/data/quickiefabric/recipes/torch_from_campfire.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:campfire_cooking", + "ingredient": { + "item": "minecraft:stick" + }, + "result": "minecraft:torch", + "experience": 0, + "cookingtime": 50 +}