diff --git a/gradle.properties b/gradle.properties index 98c93fe..fb0fc9d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,9 +4,9 @@ org.gradle.parallel=true # Fabric Properties # check these on https://fabricmc.net/develop - minecraft_version=1.19.2 - yarn_mappings=1.19.2+build.28 - loader_version=0.14.19 + minecraft_version=1.19.4 + yarn_mappings=1.19.4+build.1 + loader_version=0.14.17 # Mod Properties mod_version = 0.1.0 @@ -14,4 +14,4 @@ org.gradle.parallel=true archives_base_name = not-enough-cursedness # Dependencies - fabric_version=0.76.0+1.19.2 + fabric_version=0.75.3+1.19.4 diff --git a/src/main/java/me/jonasjones/nec/NotEnoughCursedness.java b/src/main/java/me/jonasjones/nec/NotEnoughCursedness.java index 2a98876..affc347 100644 --- a/src/main/java/me/jonasjones/nec/NotEnoughCursedness.java +++ b/src/main/java/me/jonasjones/nec/NotEnoughCursedness.java @@ -17,6 +17,7 @@ public class NotEnoughCursedness implements ModInitializer { @Override public void onInitialize() { //register blocks + ModRegistries.registerSoundEvents(); ModBlocks.register(); ModItems.register(); ModRegistries.registerModStuffs(); diff --git a/src/main/java/me/jonasjones/nec/item/AbstractDiscItem.java b/src/main/java/me/jonasjones/nec/item/AbstractDiscItem.java new file mode 100644 index 0000000..e42b71c --- /dev/null +++ b/src/main/java/me/jonasjones/nec/item/AbstractDiscItem.java @@ -0,0 +1,11 @@ +package me.jonasjones.nec.item; + +import net.minecraft.world.item.RecordItem; +import net.minecraft.sounds.SoundEvent; + +public class AbstractDiscItem extends RecordItem { + + public AbstractDiscItem(int i, SoundEvent soundEvent, Properties properties, int j) { + super(i, soundEvent, properties, j); + } +} \ No newline at end of file diff --git a/src/main/java/me/jonasjones/nec/item/ModItems.java b/src/main/java/me/jonasjones/nec/item/ModItems.java index 95c5156..3c5228c 100644 --- a/src/main/java/me/jonasjones/nec/item/ModItems.java +++ b/src/main/java/me/jonasjones/nec/item/ModItems.java @@ -6,8 +6,11 @@ import net.fabricmc.fabric.api.item.v1.FabricItemSettings; import net.minecraft.core.Registry; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; +import net.minecraft.world.item.Rarity; import net.minecraft.world.item.SwordItem; import net.minecraft.world.item.TieredItem; + +import static me.jonasjones.nec.util.ModRegistries.SOUND_CURSED; import static net.minecraft.core.registries.BuiltInRegistries.ITEM; import static me.jonasjones.nec.NotEnoughCursedness.MOD_ID; @@ -19,6 +22,7 @@ public class ModItems { private static Item LETTER_ITEM; private static Item CHAINMAIL_ITEM; private static Item AK47_ITEM; + private static Item DISC_CURSED_ITEM; public static void register() { TieredItem DIRT_SWORD = new SwordItem(DirtToolMaterial.INSTANCE, 1, -3.0F, new Item.Properties()); @@ -44,5 +48,9 @@ public class ModItems { Item AK47 = new Item(new FabricItemSettings()); AK47_ITEM = Registry.register(ITEM, new ResourceLocation(MOD_ID, "ak_47"), AK47); ModRegistries.register_item(AK47_ITEM); + + AbstractDiscItem DISC_CURSED = new AbstractDiscItem(14, SOUND_CURSED,new FabricItemSettings().rarity(Rarity.RARE).maxCount(1), 0); + DISC_CURSED_ITEM = Registry.register(ITEM, new ResourceLocation(MOD_ID, "music_disc_cursed"), DISC_CURSED); + ModRegistries.register_item(DISC_CURSED_ITEM); } } diff --git a/src/main/java/me/jonasjones/nec/util/ModRegistries.java b/src/main/java/me/jonasjones/nec/util/ModRegistries.java index 0e0f13e..5cecd53 100644 --- a/src/main/java/me/jonasjones/nec/util/ModRegistries.java +++ b/src/main/java/me/jonasjones/nec/util/ModRegistries.java @@ -1,17 +1,22 @@ package me.jonasjones.nec.util; import me.jonasjones.nec.block.ModBlocks; -import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroup; -import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents; import net.fabricmc.fabric.api.registry.FlammableBlockRegistry; import net.fabricmc.fabric.api.registry.FuelRegistry; import net.fabricmc.fabric.api.registry.StrippableBlockRegistry; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.sounds.SoundEvent; import net.minecraft.world.item.Item; import static me.jonasjones.nec.NotEnoughCursedness.MOD_ID; +import static net.minecraft.sounds.SoundEvent.createVariableRangeEvent; public class ModRegistries { + public static SoundEvent SOUND_CURSED; + /*static final ItemGroup ITEM_GROUP = FabricItemGroup.builder(new Identifier(MOD_ID, "not_enough_cursedness")) .icon(() -> ModBlocks.GREEN_BIRCH_LOG_ITEM.getDefaultStack()) .build();*/ @@ -54,4 +59,9 @@ public class ModRegistries { // content.add(CUSTOM_ITEM); //}); } + + public static void registerSoundEvents() { + ResourceLocation cursedID = new ResourceLocation(MOD_ID, "cursed"); + SOUND_CURSED = Registry.register(BuiltInRegistries.SOUND_EVENT, cursedID, createVariableRangeEvent(cursedID)); + } } diff --git a/src/main/resources/assets/nec/models/item/music_disc_cursed.json b/src/main/resources/assets/nec/models/item/music_disc_cursed.json new file mode 100644 index 0000000..6893f89 --- /dev/null +++ b/src/main/resources/assets/nec/models/item/music_disc_cursed.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "nec:item/music_disc_cursed" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/nec/sounds.json b/src/main/resources/assets/nec/sounds.json new file mode 100644 index 0000000..67db236 --- /dev/null +++ b/src/main/resources/assets/nec/sounds.json @@ -0,0 +1,10 @@ +{ + "music_disc.cursed": { + "sounds": [ + { + "name": "nec:records/cursed", + "stream": true + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/nec/sounds/records/cursed.ogg b/src/main/resources/assets/nec/sounds/records/cursed.ogg new file mode 100644 index 0000000..8ee38d9 Binary files /dev/null and b/src/main/resources/assets/nec/sounds/records/cursed.ogg differ diff --git a/src/main/resources/assets/nec/textures/item/music_disc_cursed.png b/src/main/resources/assets/nec/textures/item/music_disc_cursed.png new file mode 100644 index 0000000..d0735b0 Binary files /dev/null and b/src/main/resources/assets/nec/textures/item/music_disc_cursed.png differ diff --git a/src/main/resources/data/minecraft/tags/items/creeper_drop_music_discs.json b/src/main/resources/data/minecraft/tags/items/creeper_drop_music_discs.json new file mode 100644 index 0000000..70a4be0 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/items/creeper_drop_music_discs.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "nec:music_disc_cursed" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/items/music_discs.json b/src/main/resources/data/minecraft/tags/items/music_discs.json new file mode 100644 index 0000000..ad7d80a --- /dev/null +++ b/src/main/resources/data/minecraft/tags/items/music_discs.json @@ -0,0 +1,7 @@ +{ + "replace": false, + "values": [ + "#minecraft:creeper_drop_music_discs", + "minecraft:music_disc_pigstep" + ] +} \ No newline at end of file diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 143e72e..a8eddff 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -30,7 +30,7 @@ "depends": { "fabricloader": ">=0.14.17", "fabric-api": "*", - "minecraft": "~1.19.2", + "minecraft": "~1.19.4", "java": ">=17" }, "suggests": {