From 7fff77816e91e7f52e8906ce7e6117c7efd725ea Mon Sep 17 00:00:00 2001 From: Sunskimmer822 <92886026+Sunskimmer822@users.noreply.github.com> Date: Mon, 18 Jul 2022 13:30:22 -0700 Subject: [PATCH] remap + add glock --- build.gradle | 2 +- gradle.properties | 12 +- .../net/serenas/shitmod/ExpStatusEffect.java | 29 +++ .../net/serenas/shitmod/FabricBlock.java | 15 ++ .../net/serenas/shitmod/FabricItem.java | 30 +++ .../net/serenas/shitmod/Hausbommer.java | 30 +++ remappedSrc/net/serenas/shitmod/Lean.java | 12 + .../net/serenas/shitmod/LeanStatusEffect.java | 39 ++++ .../net/serenas/shitmod/OrangeJuice.java | 12 + remappedSrc/net/serenas/shitmod/Shitmod.java | 209 ++++++++++++++++++ .../net/serenas/shitmod/blazeMetalAxe.java | 29 +++ .../serenas/shitmod/blazeMetalAxeCasing.java | 11 + .../net/serenas/shitmod/blazeMetalHoe.java | 12 + .../serenas/shitmod/blazeMetalHoeCasing.java | 11 + .../net/serenas/shitmod/blazeMetalIngot.java | 11 + .../serenas/shitmod/blazeMetalMaterial.java | 41 ++++ .../serenas/shitmod/blazeMetalPickaxe.java | 10 + .../shitmod/blazeMetalPickaxeCasing.java | 11 + .../shitmod/blazeMetalShovelCasing.java | 11 + .../net/serenas/shitmod/blazeMetalSword.java | 29 +++ .../shitmod/blazeMetalSwordCasing.java | 11 + .../serenas/shitmod/careFreeMelodyEffect.java | 11 + .../net/serenas/shitmod/copperAxe.java | 12 + .../net/serenas/shitmod/copperHoe.java | 12 + .../net/serenas/shitmod/copperMaterial.java | 41 ++++ .../net/serenas/shitmod/copperPickaxe.java | 12 + .../net/serenas/shitmod/copperShovel.java | 12 + .../net/serenas/shitmod/copperSword.java | 12 + .../shitmod/explosionAspectEnchantment.java | 38 ++++ .../shitmod/explosiveThornsEnchantment.java | 32 +++ .../serenas/shitmod/fragileHeartCharm.java | 26 +++ .../serenas/shitmod/fragileStrengthCharm.java | 31 +++ remappedSrc/net/serenas/shitmod/glock.java | 11 + remappedSrc/net/serenas/shitmod/kingsoul.java | 32 +++ .../net/serenas/shitmod/kingsoulLeft.java | 11 + .../net/serenas/shitmod/kingsoulRight.java | 11 + .../net/serenas/shitmod/potatoChips.java | 32 +++ .../serenas/shitmod/pulverizedBlazeMetal.java | 11 + .../serenas/shitmod/pulverizedNetherite.java | 11 + .../shitmod/reinforcedBlazeMetalIngot.java | 12 + .../shitmod/rockWithAStringAround.java | 36 +++ .../net/serenas/shitmod/searedGoldIngot.java | 11 + .../net/serenas/shitmod/stalwartShell.java | 30 +++ .../serenas/shitmod/totemOfEquivalency.java | 30 +++ .../shitmod/unbreakableHeartCharm.java | 26 +++ .../shitmod/unbreakableStrengthCharm.java | 26 +++ .../java/net/serenas/shitmod/Shitmod.java | 8 +- src/main/java/net/serenas/shitmod/glock.java | 27 +++ .../assets/shitmod/models/item/glock.json | 6 + .../resources/data/shitmod/recipes/glock.json | 29 +++ 50 files changed, 1167 insertions(+), 9 deletions(-) create mode 100644 remappedSrc/net/serenas/shitmod/ExpStatusEffect.java create mode 100644 remappedSrc/net/serenas/shitmod/FabricBlock.java create mode 100644 remappedSrc/net/serenas/shitmod/FabricItem.java create mode 100644 remappedSrc/net/serenas/shitmod/Hausbommer.java create mode 100644 remappedSrc/net/serenas/shitmod/Lean.java create mode 100644 remappedSrc/net/serenas/shitmod/LeanStatusEffect.java create mode 100644 remappedSrc/net/serenas/shitmod/OrangeJuice.java create mode 100644 remappedSrc/net/serenas/shitmod/Shitmod.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalAxe.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalAxeCasing.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalHoe.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalHoeCasing.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalIngot.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalMaterial.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalPickaxe.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalPickaxeCasing.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalShovelCasing.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalSword.java create mode 100644 remappedSrc/net/serenas/shitmod/blazeMetalSwordCasing.java create mode 100644 remappedSrc/net/serenas/shitmod/careFreeMelodyEffect.java create mode 100644 remappedSrc/net/serenas/shitmod/copperAxe.java create mode 100644 remappedSrc/net/serenas/shitmod/copperHoe.java create mode 100644 remappedSrc/net/serenas/shitmod/copperMaterial.java create mode 100644 remappedSrc/net/serenas/shitmod/copperPickaxe.java create mode 100644 remappedSrc/net/serenas/shitmod/copperShovel.java create mode 100644 remappedSrc/net/serenas/shitmod/copperSword.java create mode 100644 remappedSrc/net/serenas/shitmod/explosionAspectEnchantment.java create mode 100644 remappedSrc/net/serenas/shitmod/explosiveThornsEnchantment.java create mode 100644 remappedSrc/net/serenas/shitmod/fragileHeartCharm.java create mode 100644 remappedSrc/net/serenas/shitmod/fragileStrengthCharm.java create mode 100644 remappedSrc/net/serenas/shitmod/glock.java create mode 100644 remappedSrc/net/serenas/shitmod/kingsoul.java create mode 100644 remappedSrc/net/serenas/shitmod/kingsoulLeft.java create mode 100644 remappedSrc/net/serenas/shitmod/kingsoulRight.java create mode 100644 remappedSrc/net/serenas/shitmod/potatoChips.java create mode 100644 remappedSrc/net/serenas/shitmod/pulverizedBlazeMetal.java create mode 100644 remappedSrc/net/serenas/shitmod/pulverizedNetherite.java create mode 100644 remappedSrc/net/serenas/shitmod/reinforcedBlazeMetalIngot.java create mode 100644 remappedSrc/net/serenas/shitmod/rockWithAStringAround.java create mode 100644 remappedSrc/net/serenas/shitmod/searedGoldIngot.java create mode 100644 remappedSrc/net/serenas/shitmod/stalwartShell.java create mode 100644 remappedSrc/net/serenas/shitmod/totemOfEquivalency.java create mode 100644 remappedSrc/net/serenas/shitmod/unbreakableHeartCharm.java create mode 100644 remappedSrc/net/serenas/shitmod/unbreakableStrengthCharm.java create mode 100644 src/main/java/net/serenas/shitmod/glock.java create mode 100644 src/main/resources/assets/shitmod/models/item/glock.json create mode 100644 src/main/resources/data/shitmod/recipes/glock.json diff --git a/build.gradle b/build.gradle index 4ceec3b..03b3467 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,5 @@ plugins { - id 'fabric-loom' version '0.11-SNAPSHOT' + id 'fabric-loom' version '0.12-SNAPSHOT' id 'maven-publish' } diff --git a/gradle.properties b/gradle.properties index 3deb5e6..ee6cfe7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,14 +3,16 @@ org.gradle.jvmargs=-Xmx6G # Fabric Properties # check these on https://fabricmc.net/develop - minecraft_version=1.19 - yarn_mappings=1.19+build.1 - loader_version=0.14.7 +minecraft_version=1.19 +yarn_mappings=1.19+build.4 +loader_version=0.14.8 + +#Fabric api +fabric_version=0.57.0+1.19 # Mod Properties mod_version = 1.6.0 maven_group = com.serenas.shitmod archives_base_name = serenas-shitmod -# Fabric API - fabric_version=0.55.3+1.19 + diff --git a/remappedSrc/net/serenas/shitmod/ExpStatusEffect.java b/remappedSrc/net/serenas/shitmod/ExpStatusEffect.java new file mode 100644 index 0000000..930772d --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/ExpStatusEffect.java @@ -0,0 +1,29 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.effect.StatusEffect; +import net.minecraft.entity.effect.StatusEffectCategory; +import net.minecraft.entity.player.PlayerEntity; + +public class ExpStatusEffect extends StatusEffect { + public ExpStatusEffect() { + super( + StatusEffectCategory.BENEFICIAL, // whether beneficial or harmful for entities + 0x98D982); // color in RGB + } + + // This method is called every tick to check whether it should apply the status effect or not + @Override + public boolean canApplyUpdateEffect(int duration, int amplifier) { + // In our case, we just make it return true so that it applies the status effect every tick. + return true; + } + + // This method is called when it applies the status effect. We implement custom functionality here. + @Override + public void applyUpdateEffect(LivingEntity entity, int amplifier) { + if (entity instanceof PlayerEntity) { + ((PlayerEntity) entity).addExperience(3 << amplifier); // Higher amplifier gives you EXP faster + } + } + } \ No newline at end of file diff --git a/remappedSrc/net/serenas/shitmod/FabricBlock.java b/remappedSrc/net/serenas/shitmod/FabricBlock.java new file mode 100644 index 0000000..61e03c0 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/FabricBlock.java @@ -0,0 +1,15 @@ +package net.serenas.shitmod; + + +import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; +import net.minecraft.block.Block; +import net.minecraft.block.Material; +import net.minecraft.sound.BlockSoundGroup; + +public class FabricBlock extends Block { + + public FabricBlock() { + super(FabricBlockSettings.of(Material.WOOL).sounds(BlockSoundGroup.ANCIENT_DEBRIS).strength(1000, 100f)); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/FabricItem.java b/remappedSrc/net/serenas/shitmod/FabricItem.java new file mode 100644 index 0000000..894578b --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/FabricItem.java @@ -0,0 +1,30 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.TntEntity; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.sound.SoundEvents; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class FabricItem extends Item { + + public FabricItem(Settings settings) { + super(settings); + + } + + @Override + public TypedActionResult use(World world, PlayerEntity PlayerEntity, Hand hand) { + PlayerEntity.playSound(SoundEvents.BLOCK_AMETHYST_BLOCK_CHIME, 1.0F, 1.0F); + for (int i = 0; i < 50; i++) { + world.spawnEntity(new TntEntity(world, PlayerEntity.getX(), PlayerEntity.getY(), PlayerEntity.getZ(), PlayerEntity)); + } + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(hand)); + } + + +} diff --git a/remappedSrc/net/serenas/shitmod/Hausbommer.java b/remappedSrc/net/serenas/shitmod/Hausbommer.java new file mode 100644 index 0000000..c941724 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/Hausbommer.java @@ -0,0 +1,30 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class Hausbommer extends Item{ + public Hausbommer(Settings settings) { + super(settings); + } + @Override + public TypedActionResult use(World world, PlayerEntity playerentity, Hand hand) { + double x = playerentity.getX(); + double y = playerentity.getY(); + double z = playerentity.getZ(); + double xRound = Math.round(x); + double yRound = Math.round(y); + double zRound = Math.round(z); + String Xmessage = String.valueOf(xRound); + String Ymessage = String.valueOf(yRound); + String Zmessage = String.valueOf(zRound); + String fullMessage = "X: " + Xmessage + " Y: " + Ymessage + " Z: " + Zmessage; + System.out.println(fullMessage); + return new TypedActionResult(ActionResult.SUCCESS, playerentity.getStackInHand(hand)); + } +} diff --git a/remappedSrc/net/serenas/shitmod/Lean.java b/remappedSrc/net/serenas/shitmod/Lean.java new file mode 100644 index 0000000..d681181 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/Lean.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class Lean extends Item{ + + public Lean(Settings settings) { + super(settings); + + } + +} diff --git a/remappedSrc/net/serenas/shitmod/LeanStatusEffect.java b/remappedSrc/net/serenas/shitmod/LeanStatusEffect.java new file mode 100644 index 0000000..ee095a9 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/LeanStatusEffect.java @@ -0,0 +1,39 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.effect.StatusEffect; +import net.minecraft.entity.effect.StatusEffectCategory; +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; +import net.minecraft.entity.player.PlayerEntity; + +public class LeanStatusEffect extends StatusEffect{ + public LeanStatusEffect() { + super( + StatusEffectCategory.HARMFUL, // whether beneficial or harmful for entities + 0x98D982); // color in RGB + } + + // This method is called every tick to check whether it should apply the status effect or not + @Override + public boolean canApplyUpdateEffect(int duration, int amplifier) { + // In our case, we just make it return true so that it applies the status effect every tick. + return true; + } + + // This method is called when it applies the status effect. We implement custom functionality here. + @Override + public void applyUpdateEffect(LivingEntity entity, int amplifier) { + if (entity instanceof PlayerEntity) { + ((PlayerEntity) entity).addStatusEffect(new StatusEffectInstance(StatusEffects.WEAKNESS, 1, amplifier)); + ((PlayerEntity) entity).addStatusEffect(new StatusEffectInstance(StatusEffects.BLINDNESS, 1, amplifier)); + ((PlayerEntity) entity).addStatusEffect(new StatusEffectInstance(StatusEffects.SLOWNESS, 1, amplifier)); + ((PlayerEntity) entity).addStatusEffect(new StatusEffectInstance(StatusEffects.POISON, 1, amplifier)); + ((PlayerEntity) entity).addStatusEffect(new StatusEffectInstance(StatusEffects.NAUSEA, 1, amplifier)); + ((PlayerEntity) entity).addStatusEffect(new StatusEffectInstance(StatusEffects.GLOWING, 1, amplifier)); + ((PlayerEntity) entity).addStatusEffect(new StatusEffectInstance(StatusEffects.MINING_FATIGUE, 1, amplifier)); + } + } +} + + diff --git a/remappedSrc/net/serenas/shitmod/OrangeJuice.java b/remappedSrc/net/serenas/shitmod/OrangeJuice.java new file mode 100644 index 0000000..f2af644 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/OrangeJuice.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class OrangeJuice extends Item { + + public OrangeJuice(Settings settings) { + super(settings); + + } + +} diff --git a/remappedSrc/net/serenas/shitmod/Shitmod.java b/remappedSrc/net/serenas/shitmod/Shitmod.java new file mode 100644 index 0000000..39b494b --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/Shitmod.java @@ -0,0 +1,209 @@ +package net.serenas.shitmod; + +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder; +import net.fabricmc.fabric.api.item.v1.FabricItemSettings; +import net.minecraft.block.Block; +import net.minecraft.enchantment.Enchantment; +import net.minecraft.enchantment.EnchantmentTarget; +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.effect.StatusEffect; +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; +import net.minecraft.item.BlockItem; +import net.minecraft.item.BowItem; +import net.minecraft.item.FoodComponent; +import net.minecraft.item.Item; +import net.minecraft.item.ItemGroup; +import net.minecraft.item.ItemStack; +import net.minecraft.item.ShovelItem; +import net.minecraft.item.ToolItem; +import net.minecraft.util.Identifier; +import net.minecraft.util.Rarity; +import net.minecraft.util.registry.Registry; + +public class Shitmod implements ModInitializer { + + public static final ItemGroup CHARMS_GROUP = FabricItemGroupBuilder.build( + new Identifier("shitmod", "charms"), + () -> new ItemStack(Shitmod.KINGSOUL_CHARM)); + + public static final ItemGroup GENERAL_GROUP = FabricItemGroupBuilder.build( + new Identifier("shitmod", "general"), + () -> new ItemStack(Shitmod.PP)); + + public static final ItemGroup TOOLS_GROUP = FabricItemGroupBuilder.build( + new Identifier("shitmod", "tools"), + () -> new ItemStack(Shitmod.BLAZE_METAL_SHOVEL)); + + public static final Item PP = new FabricItem(new Item.Settings().group(Shitmod.GENERAL_GROUP)); + + public static final Block FABRIC_BLOCK = new FabricBlock(); + + public static final Item HAUSBOMMER_ITEM = new Hausbommer(new Item.Settings().group(Shitmod.GENERAL_GROUP)); + + public static final StatusEffect LEAN_EFFECT = new LeanStatusEffect(); + + public static final Item LEAN = new Lean(new Item.Settings().group(ItemGroup.FOOD).rarity(Rarity.UNCOMMON).food(new FoodComponent.Builder().hunger(20).saturationModifier(10f).snack().meat().alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.WEAKNESS, 20*60, 5), 1f).statusEffect(new StatusEffectInstance(StatusEffects.BLINDNESS, 20*60, 5), 1f).statusEffect(new StatusEffectInstance(StatusEffects.NAUSEA, 20*60), 1f).statusEffect(new StatusEffectInstance(StatusEffects.SLOWNESS, 20*60, 2), 1f).statusEffect(new StatusEffectInstance(StatusEffects.POISON, 20*60, 5), 1f).statusEffect(new StatusEffectInstance(StatusEffects.GLOWING, 20*60), 1f).statusEffect(new StatusEffectInstance(StatusEffects.MINING_FATIGUE, 20*60, 5), 1f).statusEffect(new StatusEffectInstance(StatusEffects.HUNGER, 20*60, 3), 1f).build())); + + public static final StatusEffect EXP = new ExpStatusEffect(); + + public static final Item ORANGE_JUICE = new OrangeJuice(new Item.Settings().group(ItemGroup.FOOD).rarity(Rarity.EPIC).food(new FoodComponent.Builder().hunger(200).saturationModifier(10f).snack().meat().alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION, 20*120, 5), 1f).statusEffect(new StatusEffectInstance(StatusEffects.ABSORPTION, 20*120, 20), 1f).statusEffect(new StatusEffectInstance(StatusEffects.FIRE_RESISTANCE, 20*120), 1f).statusEffect(new StatusEffectInstance(StatusEffects.RESISTANCE, 20*120, 3), 1f).statusEffect(new StatusEffectInstance(StatusEffects.SPEED, 20*120, 2), 1f).build())); + + public static final Item KINGSOUL_CHARM = new kingsoul(new Item.Settings().group(Shitmod.CHARMS_GROUP).maxDamage(500).fireproof()); + + public static final Item STALWART_SHELL_CHARM = new stalwartShell(new Item.Settings().group(Shitmod.CHARMS_GROUP).maxDamage(500).fireproof()); + + public static final Item FRAGILE_HEART_CHARM = new fragileHeartCharm(new Item.Settings().group(Shitmod.CHARMS_GROUP).maxDamage(100).fireproof()); + + public static final Item UNBREAKABLE_HEART_CHARM = new unbreakableHeartCharm(new Item.Settings().group(Shitmod.CHARMS_GROUP).fireproof().maxCount(1)); + + public static final Item FRAGILE_STRENGTH_CHARM = new fragileStrengthCharm(new Item.Settings().group(Shitmod.CHARMS_GROUP).maxDamage(100).fireproof()); + + public static final Item UNBREAKABLE_STRENGTH_CHARM = new unbreakableStrengthCharm(new Item.Settings().group(Shitmod.CHARMS_GROUP).fireproof().maxCount(1)); + + public static final Item TOTEM_OF_EQUIVALENCY = new totemOfEquivalency(new Item.Settings().group(Shitmod.GENERAL_GROUP).maxCount(1)); + + public static final Item ROCK_WITH_A_STRING_TIED_AROUND = new rockWithAStringAround(new Item.Settings().group(Shitmod.GENERAL_GROUP).maxCount(1)); + + public static final Item KINGSOUL_LEFT = new kingsoulLeft(new Item.Settings().group(Shitmod.CHARMS_GROUP).maxCount(1)); + + public static final Item KINGSOUL_RIGHT = new kingsoulRight(new Item.Settings().group(Shitmod.CHARMS_GROUP).maxCount(1)); + + public static final ToolItem BLAZE_METAL_SWORD = new blazeMetalSword(blazeMetalMaterial.INSTANCE, 5, 3f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(8000)); + + public static final ToolItem BLAZE_METAL_PICKAXE = new blazeMetalPickaxe(blazeMetalMaterial.INSTANCE, 1, -0.5f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(8000)); + + public static final ToolItem BLAZE_METAL_AXE = new blazeMetalAxe(blazeMetalMaterial.INSTANCE, 8.0f, -1.0f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(8000)); + + public static final ToolItem BLAZE_METAL_SHOVEL = new ShovelItem(blazeMetalMaterial.INSTANCE, 1f, 3.0f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(8000)); + + public static final ToolItem BLAZE_METAL_HOE = new blazeMetalHoe(blazeMetalMaterial.INSTANCE, -4, 1f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(8000)); + + public static final Item BLAZE_METAL_INGOT = new blazeMetalIngot(new Item.Settings().group(Shitmod.GENERAL_GROUP)); + + public static final Enchantment EXPLOSION_ASPECT = new explosionAspectEnchantment(); + + public static final Enchantment EXPLOSIVE_THORNS = new explosiveThornsEnchantment(Enchantment.Rarity.RARE, EnchantmentTarget.WEARABLE, new EquipmentSlot[] {EquipmentSlot.HEAD, EquipmentSlot.CHEST, EquipmentSlot.LEGS, EquipmentSlot.FEET}); + + public static final Item REINFORCED_BLAZE_METAL_INGOT = new reinforcedBlazeMetalIngot(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final Item BLAZE_METAL_SWORD_CASING = new blazeMetalSwordCasing(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final Item BLAZE_METAL_PICKAXE_CASING = new blazeMetalPickaxeCasing(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final Item BLAZE_METAL_AXE_CASING = new blazeMetalAxeCasing(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final Item BLAZE_METAL_SHOVEL_CASING = new blazeMetalShovelCasing(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final Item BLAZE_METAL_HOE_CASING = new blazeMetalHoeCasing(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final Item POTATO_CHIPS = new potatoChips(new Item.Settings().group(ItemGroup.FOOD).maxCount(69)); + + public static final Item PULVERIZED_BLAZE_METAL = new pulverizedBlazeMetal(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final Item SEARED_GOLD_INGOT = new searedGoldIngot(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final Item PULVERIZED_NETHERITE = new pulverizedNetherite(new Item.Settings().fireproof().group(Shitmod.GENERAL_GROUP)); + + public static final ToolItem COPPER_SWORD = new copperSword(copperMaterial.INSTANCE, 2, -2.4f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(250)); + + public static final ToolItem COPPER_PICKAXE = new copperPickaxe(copperMaterial.INSTANCE, 0, -2.8f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(250)); + + public static final ToolItem COPPER_AXE = new copperAxe(copperMaterial.INSTANCE, 5, -3.1f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(250)); + + public static final ToolItem COPPER_SHOVEL = new copperShovel(copperMaterial.INSTANCE, 0.5f, -3f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(250)); + + public static final ToolItem COPPER_HOE = new copperHoe(copperMaterial.INSTANCE, -3, -1f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(250)); + + public static final BowItem GLOCK = new glock(new FabricItemSettings().group(Shitmod.TOOLS_GROUP).maxDamage(1000)); + + @Override + public void onInitialize() { + + Registry.register(Registry.ITEM, new Identifier("shitmod", "pp"), PP); + + Registry.register(Registry.BLOCK, new Identifier("shitmod", "gay_block"), FABRIC_BLOCK); + Registry.register(Registry.ITEM, new Identifier("shitmod", "fabric_block"), new BlockItem(FABRIC_BLOCK, new FabricItemSettings().group(ItemGroup.MISC))); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "hausbommer"), HAUSBOMMER_ITEM); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "lean"), LEAN); + + Registry.register(Registry.STATUS_EFFECT, new Identifier("shitmod", "exp"), EXP); + + Registry.register(Registry.STATUS_EFFECT, new Identifier("shitmod", "lean"), LEAN_EFFECT); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "orange_juice"), ORANGE_JUICE); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "kingsoul_charm"), KINGSOUL_CHARM); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "stalwart_shell_charm"), STALWART_SHELL_CHARM); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "fragile_heart_charm"), FRAGILE_HEART_CHARM); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "unbreakable_heart_charm"), UNBREAKABLE_HEART_CHARM); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "fragile_strength_charm"), FRAGILE_STRENGTH_CHARM); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "unbreakable_strength_charm"), UNBREAKABLE_STRENGTH_CHARM); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "totem_of_equivalency"), TOTEM_OF_EQUIVALENCY); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "rock_with_string"), ROCK_WITH_A_STRING_TIED_AROUND); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "kingsoul_left_fragment"), KINGSOUL_LEFT); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "kingsoul_right_fragment"), KINGSOUL_RIGHT); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_sword"), BLAZE_METAL_SWORD); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_pickaxe"), BLAZE_METAL_PICKAXE); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_axe"), BLAZE_METAL_AXE); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_shovel"), BLAZE_METAL_SHOVEL); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_hoe"), BLAZE_METAL_HOE); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_ingot"), BLAZE_METAL_INGOT); + + Registry.register(Registry.ENCHANTMENT, new Identifier("shitmod", "explosion_aspect"), EXPLOSION_ASPECT); + + Registry.register(Registry.ENCHANTMENT, new Identifier("shitmod", "explosive_thorns"), EXPLOSIVE_THORNS); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "reinforced_blaze_metal_ingot"), REINFORCED_BLAZE_METAL_INGOT); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_sword_casing"), BLAZE_METAL_SWORD_CASING); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_pickaxe_casing"), BLAZE_METAL_PICKAXE_CASING); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_axe_casing"), BLAZE_METAL_AXE_CASING); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_shovel_casing"), BLAZE_METAL_SHOVEL_CASING); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "blaze_metal_hoe_casing"), BLAZE_METAL_HOE_CASING); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "potato_chip"), POTATO_CHIPS); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "pulverized_blaze_metal"), PULVERIZED_BLAZE_METAL); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "pulverized_netherite"), PULVERIZED_NETHERITE); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "seared_gold_ingot"), SEARED_GOLD_INGOT); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "copper_sword"), COPPER_SWORD); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "copper_pickaxe"), COPPER_PICKAXE); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "copper_axe"), COPPER_AXE); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "copper_shovel"), COPPER_SHOVEL); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "copper_hoe"), COPPER_HOE); + + Registry.register(Registry.ITEM, new Identifier("shitmod", "glock"), GLOCK); + + } + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalAxe.java b/remappedSrc/net/serenas/shitmod/blazeMetalAxe.java new file mode 100644 index 0000000..89c93d4 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalAxe.java @@ -0,0 +1,29 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.projectile.FireballEntity; +import net.minecraft.item.AxeItem; +import net.minecraft.item.ItemStack; +import net.minecraft.item.ToolMaterial; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; + +public class blazeMetalAxe extends AxeItem { + public blazeMetalAxe(ToolMaterial material, float attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } + + @Override + public TypedActionResult use(World World, PlayerEntity PlayerEntity, Hand Hand) { + Vec3d looking = PlayerEntity.getRotationVector(); + World.spawnEntity(new FireballEntity(World, PlayerEntity, looking.x, looking.y, looking.z, 6)); + PlayerEntity.getStackInHand(Hand).damage(100,PlayerEntity,e-> e.sendEquipmentBreakStatus(EquipmentSlot.MAINHAND)); + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(Hand)); + } + + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalAxeCasing.java b/remappedSrc/net/serenas/shitmod/blazeMetalAxeCasing.java new file mode 100644 index 0000000..06f6c87 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalAxeCasing.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class blazeMetalAxeCasing extends Item { + + public blazeMetalAxeCasing(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalHoe.java b/remappedSrc/net/serenas/shitmod/blazeMetalHoe.java new file mode 100644 index 0000000..a2dc80b --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalHoe.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.HoeItem; +import net.minecraft.item.ToolMaterial; + +public class blazeMetalHoe extends HoeItem { + + public blazeMetalHoe(ToolMaterial material, int attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalHoeCasing.java b/remappedSrc/net/serenas/shitmod/blazeMetalHoeCasing.java new file mode 100644 index 0000000..56a9034 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalHoeCasing.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class blazeMetalHoeCasing extends Item { + + public blazeMetalHoeCasing(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalIngot.java b/remappedSrc/net/serenas/shitmod/blazeMetalIngot.java new file mode 100644 index 0000000..de09da5 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalIngot.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class blazeMetalIngot extends Item { + + public blazeMetalIngot(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalMaterial.java b/remappedSrc/net/serenas/shitmod/blazeMetalMaterial.java new file mode 100644 index 0000000..22ff3c3 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalMaterial.java @@ -0,0 +1,41 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Items; +import net.minecraft.item.ToolMaterial; +import net.minecraft.recipe.Ingredient; + +public class blazeMetalMaterial implements ToolMaterial { + + public static final blazeMetalMaterial INSTANCE = new blazeMetalMaterial(); + + @Override + public int getDurability() { + return 500; + } + + @Override + public float getMiningSpeedMultiplier() { + return 12.0f; + } + + @Override + public float getAttackDamage() { + return 4.0f; + } + + @Override + public int getMiningLevel() { + return 7; + } + + @Override + public int getEnchantability() { + return 40; + } + + @Override + public Ingredient getRepairIngredient() { + return Ingredient.ofItems(Items.BLAZE_ROD); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalPickaxe.java b/remappedSrc/net/serenas/shitmod/blazeMetalPickaxe.java new file mode 100644 index 0000000..4b97918 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalPickaxe.java @@ -0,0 +1,10 @@ +package net.serenas.shitmod; + +import net.minecraft.item.PickaxeItem; +import net.minecraft.item.ToolMaterial; + +public class blazeMetalPickaxe extends PickaxeItem { + public blazeMetalPickaxe(ToolMaterial material, int attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } +} \ No newline at end of file diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalPickaxeCasing.java b/remappedSrc/net/serenas/shitmod/blazeMetalPickaxeCasing.java new file mode 100644 index 0000000..c9a2ffe --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalPickaxeCasing.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class blazeMetalPickaxeCasing extends Item { + + public blazeMetalPickaxeCasing(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalShovelCasing.java b/remappedSrc/net/serenas/shitmod/blazeMetalShovelCasing.java new file mode 100644 index 0000000..d9940a6 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalShovelCasing.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class blazeMetalShovelCasing extends Item { + + public blazeMetalShovelCasing(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalSword.java b/remappedSrc/net/serenas/shitmod/blazeMetalSword.java new file mode 100644 index 0000000..59c15d0 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalSword.java @@ -0,0 +1,29 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.projectile.FireballEntity; +import net.minecraft.item.ItemStack; +import net.minecraft.item.SwordItem; +import net.minecraft.item.ToolMaterial; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; + +public class blazeMetalSword extends SwordItem { + + public blazeMetalSword(ToolMaterial toolMaterial, int attackDamage, float attackSpeed, Settings settings) { + super(toolMaterial, attackDamage, attackSpeed, settings); + } + + @Override + public TypedActionResult use(World World, PlayerEntity PlayerEntity, Hand Hand) { + Vec3d looking = PlayerEntity.getRotationVector(); + FireballEntity fireball = new FireballEntity(World, PlayerEntity, (2*looking.x), (2*looking.y), (2*looking.z), 5); + World.spawnEntity(fireball); + PlayerEntity.getStackInHand(Hand).damage(100,PlayerEntity,e-> e.sendEquipmentBreakStatus(EquipmentSlot.MAINHAND)); + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(Hand)); + } +} diff --git a/remappedSrc/net/serenas/shitmod/blazeMetalSwordCasing.java b/remappedSrc/net/serenas/shitmod/blazeMetalSwordCasing.java new file mode 100644 index 0000000..1c062e2 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/blazeMetalSwordCasing.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class blazeMetalSwordCasing extends Item { + + public blazeMetalSwordCasing(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/careFreeMelodyEffect.java b/remappedSrc/net/serenas/shitmod/careFreeMelodyEffect.java new file mode 100644 index 0000000..d39020e --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/careFreeMelodyEffect.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.effect.StatusEffect; +import net.minecraft.entity.effect.StatusEffectCategory; + +public class careFreeMelodyEffect extends StatusEffect { + + protected careFreeMelodyEffect(StatusEffectCategory category, int color) { + super(category, color); + } +} diff --git a/remappedSrc/net/serenas/shitmod/copperAxe.java b/remappedSrc/net/serenas/shitmod/copperAxe.java new file mode 100644 index 0000000..780fd19 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/copperAxe.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.AxeItem; +import net.minecraft.item.ToolMaterial; + +public class copperAxe extends AxeItem { + + protected copperAxe(ToolMaterial material, float attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/copperHoe.java b/remappedSrc/net/serenas/shitmod/copperHoe.java new file mode 100644 index 0000000..46d6eca --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/copperHoe.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.HoeItem; +import net.minecraft.item.ToolMaterial; + +public class copperHoe extends HoeItem { + + protected copperHoe(ToolMaterial material, int attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/copperMaterial.java b/remappedSrc/net/serenas/shitmod/copperMaterial.java new file mode 100644 index 0000000..62c0971 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/copperMaterial.java @@ -0,0 +1,41 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Items; +import net.minecraft.item.ToolMaterial; +import net.minecraft.recipe.Ingredient; + +public class copperMaterial implements ToolMaterial { + + public static final copperMaterial INSTANCE = new copperMaterial(); + + @Override + public int getDurability() { + return 250; + } + + @Override + public float getMiningSpeedMultiplier() { + return 6.0f; + } + + @Override + public float getAttackDamage() { + return 3.0f; + } + + @Override + public int getMiningLevel() { + return 2; + } + + @Override + public int getEnchantability() { + return 44; + } + + @Override + public Ingredient getRepairIngredient() { + return Ingredient.ofItems(Items.COPPER_INGOT); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/copperPickaxe.java b/remappedSrc/net/serenas/shitmod/copperPickaxe.java new file mode 100644 index 0000000..c63678e --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/copperPickaxe.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.PickaxeItem; +import net.minecraft.item.ToolMaterial; + +public class copperPickaxe extends PickaxeItem { + + protected copperPickaxe(ToolMaterial material, int attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/copperShovel.java b/remappedSrc/net/serenas/shitmod/copperShovel.java new file mode 100644 index 0000000..f5338db --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/copperShovel.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.ShovelItem; +import net.minecraft.item.ToolMaterial; + +public class copperShovel extends ShovelItem{ + + public copperShovel(ToolMaterial material, float attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/copperSword.java b/remappedSrc/net/serenas/shitmod/copperSword.java new file mode 100644 index 0000000..a093550 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/copperSword.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.SwordItem; +import net.minecraft.item.ToolMaterial; + +public class copperSword extends SwordItem { + + public copperSword(ToolMaterial toolMaterial, int attackDamage, float attackSpeed, Settings settings) { + super(toolMaterial, attackDamage, attackSpeed, settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/explosionAspectEnchantment.java b/remappedSrc/net/serenas/shitmod/explosionAspectEnchantment.java new file mode 100644 index 0000000..9904e7d --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/explosionAspectEnchantment.java @@ -0,0 +1,38 @@ +package net.serenas.shitmod; + +import net.minecraft.enchantment.Enchantment; +import net.minecraft.enchantment.EnchantmentTarget; +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.LivingEntity; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraft.world.explosion.Explosion; + +public class explosionAspectEnchantment extends Enchantment { + + protected explosionAspectEnchantment() { + super(Enchantment.Rarity.RARE, EnchantmentTarget.WEAPON, new EquipmentSlot[] {EquipmentSlot.MAINHAND}); + + } + + @Override + public int getMinPower(int level) { + return 100; + } + + @Override + public int getMaxLevel() { + return 5; + } + + @Override + public void onTargetDamaged(LivingEntity user, net.minecraft.entity.Entity target, int level) { + World world = user.world; + if (target instanceof LivingEntity) { + Vec3d pos = target.getPos(); + world.createExplosion(user, pos.x, pos.y, pos.z, level * 4.0F, Explosion.DestructionType.BREAK); + } + super.onTargetDamaged(user, target, level); + } + +} \ No newline at end of file diff --git a/remappedSrc/net/serenas/shitmod/explosiveThornsEnchantment.java b/remappedSrc/net/serenas/shitmod/explosiveThornsEnchantment.java new file mode 100644 index 0000000..8f21260 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/explosiveThornsEnchantment.java @@ -0,0 +1,32 @@ +package net.serenas.shitmod; + +import net.minecraft.enchantment.Enchantment; +import net.minecraft.enchantment.EnchantmentTarget; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.damage.DamageSource; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraft.world.explosion.Explosion.DestructionType; + +public class explosiveThornsEnchantment extends Enchantment { + + protected explosiveThornsEnchantment(Rarity weight, EnchantmentTarget type, EquipmentSlot[] slotTypes) { + super(weight, type, slotTypes); + } + + @Override + public int getMaxLevel() { + return 5; + } + + + @Override + public void onUserDamaged(LivingEntity user, Entity attacker, int level) { + World World = attacker.world; + Vec3d pos = attacker.getPos(); + World.createExplosion(user, DamageSource.MAGIC, null, pos.x, pos.y, pos.z, 3 * level, false, DestructionType.NONE); + super.onUserDamaged(user, attacker, level); + } +} diff --git a/remappedSrc/net/serenas/shitmod/fragileHeartCharm.java b/remappedSrc/net/serenas/shitmod/fragileHeartCharm.java new file mode 100644 index 0000000..9cb25c9 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/fragileHeartCharm.java @@ -0,0 +1,26 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; + +public class fragileHeartCharm extends Item { + + public fragileHeartCharm(Settings settings) { + super(settings); + } + + @Override + public TypedActionResult use(World World, PlayerEntity Playerentity, Hand Hand) { + Playerentity.addStatusEffect(new StatusEffectInstance(StatusEffects.HEALTH_BOOST, 20*1000000, 2)); + Playerentity.getMainHandStack().damage(50,Playerentity,e-> e.sendEquipmentBreakStatus(EquipmentSlot.MAINHAND)); + return new TypedActionResult(ActionResult.SUCCESS, Playerentity.getStackInHand(Hand)); + } +} diff --git a/remappedSrc/net/serenas/shitmod/fragileStrengthCharm.java b/remappedSrc/net/serenas/shitmod/fragileStrengthCharm.java new file mode 100644 index 0000000..76f8321 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/fragileStrengthCharm.java @@ -0,0 +1,31 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class fragileStrengthCharm extends Item{ + + public fragileStrengthCharm(Settings settings) { + super(settings); + } + + public int availableSlots = 1; + + @Override + public TypedActionResult use(World world, PlayerEntity PlayerEntity, Hand Hand) { + + PlayerEntity.addStatusEffect(new StatusEffectInstance(StatusEffects.STRENGTH, 20*1000000, 2)); + PlayerEntity.getMainHandStack().damage(50,PlayerEntity,e-> e.sendEquipmentBreakStatus(EquipmentSlot.MAINHAND)); + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(Hand)); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/glock.java b/remappedSrc/net/serenas/shitmod/glock.java new file mode 100644 index 0000000..26f9330 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/glock.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.BowItem; + +public class glock extends BowItem{ + + public glock(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/kingsoul.java b/remappedSrc/net/serenas/shitmod/kingsoul.java new file mode 100644 index 0000000..38d4227 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/kingsoul.java @@ -0,0 +1,32 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class kingsoul extends Item { + + public kingsoul(Settings settings) { + super(settings); + + } + + public int availableSlots = 10; + + @Override + public TypedActionResult use(World world, PlayerEntity PlayerEntity, Hand hand) { + PlayerEntity.getHungerManager().add(1, 1); + PlayerEntity.getMainHandStack().damage(1,PlayerEntity,e-> e.sendEquipmentBreakStatus(EquipmentSlot.MAINHAND)); + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(hand)); + + } + + + +} + diff --git a/remappedSrc/net/serenas/shitmod/kingsoulLeft.java b/remappedSrc/net/serenas/shitmod/kingsoulLeft.java new file mode 100644 index 0000000..902097d --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/kingsoulLeft.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class kingsoulLeft extends Item{ + + public kingsoulLeft(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/kingsoulRight.java b/remappedSrc/net/serenas/shitmod/kingsoulRight.java new file mode 100644 index 0000000..47afa0a --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/kingsoulRight.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class kingsoulRight extends Item{ + + public kingsoulRight(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/potatoChips.java b/remappedSrc/net/serenas/shitmod/potatoChips.java new file mode 100644 index 0000000..4a1c1da --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/potatoChips.java @@ -0,0 +1,32 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class potatoChips extends Item { + + public potatoChips(Settings settings) { + super(settings); + } + +int potatoChipsConsumed = 0; + + @Override + public TypedActionResult use(World World, PlayerEntity PlayerEntity, Hand Hand) { + PlayerEntity.getHungerManager().add(1, 10f); + PlayerEntity.getStackInHand(Hand).decrement(1); + potatoChipsConsumed+=1; + if (potatoChipsConsumed == 69) { + PlayerEntity.addStatusEffect(new StatusEffectInstance(StatusEffects.HUNGER, 20 * 15, 4)); + potatoChipsConsumed-=69; + } + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(Hand)); + } +} diff --git a/remappedSrc/net/serenas/shitmod/pulverizedBlazeMetal.java b/remappedSrc/net/serenas/shitmod/pulverizedBlazeMetal.java new file mode 100644 index 0000000..be0e932 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/pulverizedBlazeMetal.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class pulverizedBlazeMetal extends Item { + + public pulverizedBlazeMetal(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/pulverizedNetherite.java b/remappedSrc/net/serenas/shitmod/pulverizedNetherite.java new file mode 100644 index 0000000..7614889 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/pulverizedNetherite.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class pulverizedNetherite extends Item { + + public pulverizedNetherite(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/reinforcedBlazeMetalIngot.java b/remappedSrc/net/serenas/shitmod/reinforcedBlazeMetalIngot.java new file mode 100644 index 0000000..5dabd2d --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/reinforcedBlazeMetalIngot.java @@ -0,0 +1,12 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class reinforcedBlazeMetalIngot extends Item { + + public reinforcedBlazeMetalIngot(Settings settings) { + super(settings); + + } + +} diff --git a/remappedSrc/net/serenas/shitmod/rockWithAStringAround.java b/remappedSrc/net/serenas/shitmod/rockWithAStringAround.java new file mode 100644 index 0000000..e09d9b6 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/rockWithAStringAround.java @@ -0,0 +1,36 @@ +package net.serenas.shitmod; + +import D; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class rockWithAStringAround extends Item { + + public rockWithAStringAround(Settings settings) { + super(settings); + } + + @Override + public TypedActionResult use(World World, PlayerEntity PlayerEntity, Hand Hand) { + var messageToSay = Math.random(); + if (messageToSay < 0.3) { + System.out.println("placeholder 1"); + } else if (messageToSay > 0.3) { + if (messageToSay < 0.6) { + System.out.println("placeholder 2"); + } + } else if (messageToSay > 0.6) { + System.out.println("placeholder 3"); + } + + + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(Hand)); + } + + +} \ No newline at end of file diff --git a/remappedSrc/net/serenas/shitmod/searedGoldIngot.java b/remappedSrc/net/serenas/shitmod/searedGoldIngot.java new file mode 100644 index 0000000..b96afa7 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/searedGoldIngot.java @@ -0,0 +1,11 @@ +package net.serenas.shitmod; + +import net.minecraft.item.Item; + +public class searedGoldIngot extends Item{ + + public searedGoldIngot(Settings settings) { + super(settings); + } + +} diff --git a/remappedSrc/net/serenas/shitmod/stalwartShell.java b/remappedSrc/net/serenas/shitmod/stalwartShell.java new file mode 100644 index 0000000..b4ad1d8 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/stalwartShell.java @@ -0,0 +1,30 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; +import net.minecraft.util.Hand; + + +public class stalwartShell extends Item{ + public stalwartShell(Settings settings) { + super(settings); + } + + public int availableSlots = 8; + + @Override + public TypedActionResult use(World world, PlayerEntity PlayerEntity, Hand hand) { + PlayerEntity.addStatusEffect(new StatusEffectInstance(StatusEffects.RESISTANCE, 20, 5)); + PlayerEntity.getMainHandStack().damage(1,PlayerEntity,e-> e.sendEquipmentBreakStatus(EquipmentSlot.MAINHAND)); + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(hand)); + } + + +} diff --git a/remappedSrc/net/serenas/shitmod/totemOfEquivalency.java b/remappedSrc/net/serenas/shitmod/totemOfEquivalency.java new file mode 100644 index 0000000..d4a2196 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/totemOfEquivalency.java @@ -0,0 +1,30 @@ +package net.serenas.shitmod; + +import java.util.concurrent.TimeUnit; + +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class totemOfEquivalency extends Item { + + public totemOfEquivalency(Settings settings) { + super(settings); + } + + + @Override + public TypedActionResult use(World World, PlayerEntity PlayerEntity, Hand Hand) { + PlayerEntity.kill(); + try { + TimeUnit.SECONDS.sleep(100); + } catch (InterruptedException e1) { + e1.printStackTrace(); + } + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(Hand)); + } +} diff --git a/remappedSrc/net/serenas/shitmod/unbreakableHeartCharm.java b/remappedSrc/net/serenas/shitmod/unbreakableHeartCharm.java new file mode 100644 index 0000000..0891980 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/unbreakableHeartCharm.java @@ -0,0 +1,26 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class unbreakableHeartCharm extends Item { + + public unbreakableHeartCharm(Settings settings) { + super(settings); + } + + public int availableSlots = 1; + + @Override + public TypedActionResult use(World world, PlayerEntity PlayerEntity, Hand Hand) { + PlayerEntity.addStatusEffect(new StatusEffectInstance(StatusEffects.HEALTH_BOOST, 20*1000000, 4)); + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(Hand)); + } +} \ No newline at end of file diff --git a/remappedSrc/net/serenas/shitmod/unbreakableStrengthCharm.java b/remappedSrc/net/serenas/shitmod/unbreakableStrengthCharm.java new file mode 100644 index 0000000..4d65ed4 --- /dev/null +++ b/remappedSrc/net/serenas/shitmod/unbreakableStrengthCharm.java @@ -0,0 +1,26 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class unbreakableStrengthCharm extends Item { + + public unbreakableStrengthCharm(Settings settings) { + super(settings); + } + + public int availableSlots = 1; + + @Override + public TypedActionResult use(World world, PlayerEntity PlayerEntity, Hand Hand) { + PlayerEntity.addStatusEffect(new StatusEffectInstance(StatusEffects.STRENGTH, 20*1000000, 3)); + return new TypedActionResult(ActionResult.SUCCESS, PlayerEntity.getStackInHand(Hand)); + } +} diff --git a/src/main/java/net/serenas/shitmod/Shitmod.java b/src/main/java/net/serenas/shitmod/Shitmod.java index 1b7e2cf..260acf2 100644 --- a/src/main/java/net/serenas/shitmod/Shitmod.java +++ b/src/main/java/net/serenas/shitmod/Shitmod.java @@ -115,6 +115,8 @@ public class Shitmod implements ModInitializer { public static final ToolItem COPPER_HOE = new copperHoe(copperMaterial.INSTANCE, -3, -1f, new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(250)); + public static final Item GLOCK = new glock(new Item.Settings().group(Shitmod.TOOLS_GROUP).maxDamage(1000)); + @Override public void onInitialize() { @@ -198,7 +200,7 @@ public class Shitmod implements ModInitializer { Registry.register(Registry.ITEM, new Identifier("shitmod", "copper_shovel"), COPPER_SHOVEL); Registry.register(Registry.ITEM, new Identifier("shitmod", "copper_hoe"), COPPER_HOE); - + + Registry.register(Registry.ITEM, new Identifier("shitmod", "glock"), GLOCK); } - -} + } diff --git a/src/main/java/net/serenas/shitmod/glock.java b/src/main/java/net/serenas/shitmod/glock.java new file mode 100644 index 0000000..1b7c8a9 --- /dev/null +++ b/src/main/java/net/serenas/shitmod/glock.java @@ -0,0 +1,27 @@ +package net.serenas.shitmod; + +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.entity.projectile.ArrowEntity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ActionResult; +import net.minecraft.util.Hand; +import net.minecraft.util.TypedActionResult; +import net.minecraft.world.World; + +public class glock extends Item{ + + public glock(Settings settings) { + super(settings); + } + @Override + public TypedActionResult use(World world, PlayerEntity playerEntity, Hand hand) { + ArrowEntity arro = new ArrowEntity(world, playerEntity.getX(), playerEntity.getEyeY(), playerEntity.getZ()); + arro.setVelocity(playerEntity, playerEntity.getPitch(), playerEntity.getHeadYaw(), 0f, 100, 0); + world.spawnEntity(arro); + playerEntity.getMainHandStack().damage(1,playerEntity,e-> e.sendEquipmentBreakStatus(EquipmentSlot.MAINHAND)); + return new TypedActionResult(ActionResult.SUCCESS, playerEntity.getStackInHand(hand)); + } + +} diff --git a/src/main/resources/assets/shitmod/models/item/glock.json b/src/main/resources/assets/shitmod/models/item/glock.json new file mode 100644 index 0000000..d8da56d --- /dev/null +++ b/src/main/resources/assets/shitmod/models/item/glock.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "shitmod:item/glock" + } +} \ No newline at end of file diff --git a/src/main/resources/data/shitmod/recipes/glock.json b/src/main/resources/data/shitmod/recipes/glock.json new file mode 100644 index 0000000..3926601 --- /dev/null +++ b/src/main/resources/data/shitmod/recipes/glock.json @@ -0,0 +1,29 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "BBB", + "ITO", + "N " + ], + "key": { + "B": { + "item": "minecraft:iron_block" + }, + "I": { + "item": "minecraft:iron_ingot" + }, + "T": { + "item": "minecraft:tnt" + }, + "N": { + "item": "minecraft:netherite_ingot" + }, + "O": { + "item": "minecraft:bow" + } + }, + "result": { + "item": "shitmod:glock", + "count": 1 + } + } \ No newline at end of file