First Commit
This commit is contained in:
		
							
								
								
									
										119
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										119
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,119 @@
 | 
			
		||||
# User-specific stuff
 | 
			
		||||
.idea/
 | 
			
		||||
 | 
			
		||||
*.iml
 | 
			
		||||
*.ipr
 | 
			
		||||
*.iws
 | 
			
		||||
 | 
			
		||||
# IntelliJ
 | 
			
		||||
out/
 | 
			
		||||
# mpeltonen/sbt-idea plugin
 | 
			
		||||
.idea_modules/
 | 
			
		||||
 | 
			
		||||
# JIRA plugin
 | 
			
		||||
atlassian-ide-plugin.xml
 | 
			
		||||
 | 
			
		||||
# Compiled class file
 | 
			
		||||
*.class
 | 
			
		||||
 | 
			
		||||
# Log file
 | 
			
		||||
*.log
 | 
			
		||||
 | 
			
		||||
# BlueJ files
 | 
			
		||||
*.ctxt
 | 
			
		||||
 | 
			
		||||
# Package Files #
 | 
			
		||||
*.jar
 | 
			
		||||
*.war
 | 
			
		||||
*.nar
 | 
			
		||||
*.ear
 | 
			
		||||
*.zip
 | 
			
		||||
*.tar.gz
 | 
			
		||||
*.rar
 | 
			
		||||
 | 
			
		||||
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
 | 
			
		||||
hs_err_pid*
 | 
			
		||||
 | 
			
		||||
*~
 | 
			
		||||
 | 
			
		||||
# temporary files which can be created if a process still has a handle open of a deleted file
 | 
			
		||||
.fuse_hidden*
 | 
			
		||||
 | 
			
		||||
# KDE directory preferences
 | 
			
		||||
.directory
 | 
			
		||||
 | 
			
		||||
# Linux trash folder which might appear on any partition or disk
 | 
			
		||||
.Trash-*
 | 
			
		||||
 | 
			
		||||
# .nfs files are created when an open file is removed but is still being accessed
 | 
			
		||||
.nfs*
 | 
			
		||||
 | 
			
		||||
# General
 | 
			
		||||
.DS_Store
 | 
			
		||||
.AppleDouble
 | 
			
		||||
.LSOverride
 | 
			
		||||
 | 
			
		||||
# Icon must end with two \r
 | 
			
		||||
Icon
 | 
			
		||||
 | 
			
		||||
# Thumbnails
 | 
			
		||||
._*
 | 
			
		||||
 | 
			
		||||
# Files that might appear in the root of a volume
 | 
			
		||||
.DocumentRevisions-V100
 | 
			
		||||
.fseventsd
 | 
			
		||||
.Spotlight-V100
 | 
			
		||||
.TemporaryItems
 | 
			
		||||
.Trashes
 | 
			
		||||
.VolumeIcon.icns
 | 
			
		||||
.com.apple.timemachine.donotpresent
 | 
			
		||||
 | 
			
		||||
# Directories potentially created on remote AFP share
 | 
			
		||||
.AppleDB
 | 
			
		||||
.AppleDesktop
 | 
			
		||||
Network Trash Folder
 | 
			
		||||
Temporary Items
 | 
			
		||||
.apdisk
 | 
			
		||||
 | 
			
		||||
# Windows thumbnail cache files
 | 
			
		||||
Thumbs.db
 | 
			
		||||
Thumbs.db:encryptable
 | 
			
		||||
ehthumbs.db
 | 
			
		||||
ehthumbs_vista.db
 | 
			
		||||
 | 
			
		||||
# Dump file
 | 
			
		||||
*.stackdump
 | 
			
		||||
 | 
			
		||||
# Folder config file
 | 
			
		||||
[Dd]esktop.ini
 | 
			
		||||
 | 
			
		||||
# Recycle Bin used on file shares
 | 
			
		||||
$RECYCLE.BIN/
 | 
			
		||||
 | 
			
		||||
# Windows Installer files
 | 
			
		||||
*.cab
 | 
			
		||||
*.msi
 | 
			
		||||
*.msix
 | 
			
		||||
*.msm
 | 
			
		||||
*.msp
 | 
			
		||||
 | 
			
		||||
# Windows shortcuts
 | 
			
		||||
*.lnk
 | 
			
		||||
 | 
			
		||||
.gradle
 | 
			
		||||
build/
 | 
			
		||||
 | 
			
		||||
# Ignore Gradle GUI config
 | 
			
		||||
gradle-app.setting
 | 
			
		||||
 | 
			
		||||
# Cache of project
 | 
			
		||||
.gradletasknamecache
 | 
			
		||||
 | 
			
		||||
**/build/
 | 
			
		||||
 | 
			
		||||
# Common working directory
 | 
			
		||||
run/
 | 
			
		||||
runs/
 | 
			
		||||
 | 
			
		||||
# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
 | 
			
		||||
!gradle-wrapper.jar
 | 
			
		||||
							
								
								
									
										21
									
								
								LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								LICENSE.txt
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,21 @@
 | 
			
		||||
The MIT License (MIT)
 | 
			
		||||
 | 
			
		||||
Copyright (c) 2025 Tonitch8
 | 
			
		||||
 | 
			
		||||
Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
			
		||||
of this software and associated documentation files (the "Software"), to deal
 | 
			
		||||
in the Software without restriction, including without limitation the rights
 | 
			
		||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
			
		||||
copies of the Software, and to permit persons to whom the Software is
 | 
			
		||||
furnished to do so, subject to the following conditions:
 | 
			
		||||
 | 
			
		||||
The above copyright notice and this permission notice shall be included in
 | 
			
		||||
all copies or substantial portions of the Software.
 | 
			
		||||
 | 
			
		||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
			
		||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
			
		||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
			
		||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
			
		||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 | 
			
		||||
THE SOFTWARE.
 | 
			
		||||
							
								
								
									
										89
									
								
								build.gradle
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										89
									
								
								build.gradle
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,89 @@
 | 
			
		||||
plugins {
 | 
			
		||||
    id 'fabric-loom' version '1.10-SNAPSHOT'
 | 
			
		||||
    id 'maven-publish'
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
version = project.mod_version
 | 
			
		||||
group = project.maven_group
 | 
			
		||||
 | 
			
		||||
base {
 | 
			
		||||
    archivesName = project.archives_base_name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
repositories {
 | 
			
		||||
    // Add repositories to retrieve artifacts from in here.
 | 
			
		||||
    // You should only use this when depending on other mods because
 | 
			
		||||
    // Loom adds the essential maven repositories to download Minecraft and libraries from automatically.
 | 
			
		||||
    // See https://docs.gradle.org/current/userguide/declaring_repositories.html
 | 
			
		||||
    // for more information about repositories.
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
dependencies {
 | 
			
		||||
    // To change the versions see the gradle.properties file
 | 
			
		||||
    minecraft "com.mojang:minecraft:${project.minecraft_version}"
 | 
			
		||||
    mappings "net.fabricmc:yarn:${project.yarn_mappings}"
 | 
			
		||||
    modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
 | 
			
		||||
 | 
			
		||||
    modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
processResources {
 | 
			
		||||
    inputs.property "version", project.version
 | 
			
		||||
    inputs.property "minecraft_version", project.minecraft_version
 | 
			
		||||
    inputs.property "loader_version", project.loader_version
 | 
			
		||||
    filteringCharset "UTF-8"
 | 
			
		||||
 | 
			
		||||
    filesMatching("fabric.mod.json") {
 | 
			
		||||
        expand "version": project.version,
 | 
			
		||||
                "minecraft_version": project.minecraft_version,
 | 
			
		||||
                "loader_version": project.loader_version
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
def targetJavaVersion = 17
 | 
			
		||||
tasks.withType(JavaCompile).configureEach {
 | 
			
		||||
    // ensure that the encoding is set to UTF-8, no matter what the system default is
 | 
			
		||||
    // this fixes some edge cases with special characters not displaying correctly
 | 
			
		||||
    // see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html
 | 
			
		||||
    // If Javadoc is generated, this must be specified in that task too.
 | 
			
		||||
    it.options.encoding = "UTF-8"
 | 
			
		||||
    if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible()) {
 | 
			
		||||
        it.options.release.set(targetJavaVersion)
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
java {
 | 
			
		||||
    def javaVersion = JavaVersion.toVersion(targetJavaVersion)
 | 
			
		||||
    if (JavaVersion.current() < javaVersion) {
 | 
			
		||||
        toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion)
 | 
			
		||||
    }
 | 
			
		||||
    // Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task
 | 
			
		||||
    // if it is present.
 | 
			
		||||
    // If you remove this line, sources will not be generated.
 | 
			
		||||
    withSourcesJar()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
jar {
 | 
			
		||||
    from("LICENSE") {
 | 
			
		||||
        rename { "${it}_${project.archivesBaseName}" }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// configure the maven publication
 | 
			
		||||
publishing {
 | 
			
		||||
    publications {
 | 
			
		||||
        create("mavenJava", MavenPublication) {
 | 
			
		||||
            artifactId = project.archives_base_name
 | 
			
		||||
            from components.java
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
 | 
			
		||||
    repositories {
 | 
			
		||||
        // Add repositories to publish to here.
 | 
			
		||||
        // Notice: This block does NOT have the same function as the block in the top level.
 | 
			
		||||
        // The repositories here will be used for publishing your artifact, not for
 | 
			
		||||
        // retrieving dependencies.
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										14
									
								
								gradle.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								gradle.properties
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,14 @@
 | 
			
		||||
# Done to increase the memory available to gradle.
 | 
			
		||||
org.gradle.jvmargs=-Xmx1G
 | 
			
		||||
# Fabric Properties
 | 
			
		||||
# check these on https://modmuss50.me/fabric.html
 | 
			
		||||
minecraft_version=1.20.1
 | 
			
		||||
yarn_mappings=1.20.1+build.10
 | 
			
		||||
loader_version=0.16.10
 | 
			
		||||
# Mod Properties
 | 
			
		||||
mod_version=1.0-SNAPSHOT
 | 
			
		||||
maven_group=ovh.herisson
 | 
			
		||||
archives_base_name=HornOfTheWild
 | 
			
		||||
# Dependencies
 | 
			
		||||
# check this on https://modmuss50.me/fabric.html
 | 
			
		||||
fabric_version=0.92.3+1.20.1
 | 
			
		||||
							
								
								
									
										7
									
								
								gradle/wrapper/gradle-wrapper.properties
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								gradle/wrapper/gradle-wrapper.properties
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,7 @@
 | 
			
		||||
distributionBase=GRADLE_USER_HOME
 | 
			
		||||
distributionPath=wrapper/dists
 | 
			
		||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-bin.zip
 | 
			
		||||
networkTimeout=10000
 | 
			
		||||
validateDistributionUrl=true
 | 
			
		||||
zipStoreBase=GRADLE_USER_HOME
 | 
			
		||||
zipStorePath=wrapper/dists
 | 
			
		||||
							
								
								
									
										9
									
								
								settings.gradle
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								settings.gradle
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,9 @@
 | 
			
		||||
pluginManagement {
 | 
			
		||||
    repositories {
 | 
			
		||||
        maven {
 | 
			
		||||
            name = 'Fabric'
 | 
			
		||||
            url = 'https://maven.fabricmc.net/'
 | 
			
		||||
        }
 | 
			
		||||
        gradlePluginPortal()
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										19
									
								
								src/main/java/ovh/herisson/hornofthewild/HornOfTheWild.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								src/main/java/ovh/herisson/hornofthewild/HornOfTheWild.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,19 @@
 | 
			
		||||
package ovh.herisson.hornofthewild;
 | 
			
		||||
 | 
			
		||||
import net.fabricmc.api.ModInitializer;
 | 
			
		||||
import net.minecraft.item.Item;
 | 
			
		||||
import net.minecraft.registry.Registries;
 | 
			
		||||
import net.minecraft.registry.Registry;
 | 
			
		||||
import net.minecraft.util.Identifier;
 | 
			
		||||
 | 
			
		||||
public class HornOfTheWild implements ModInitializer {
 | 
			
		||||
 | 
			
		||||
    public static final String MOD_ID = "hotw";
 | 
			
		||||
 | 
			
		||||
    public static final HornOfTheWildItem hornofthewild = new HornOfTheWildItem(new Item.Settings());
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void onInitialize() {
 | 
			
		||||
        Registry.register(Registries.ITEM, new Identifier(MOD_ID, "hornofthewild"), hornofthewild);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,86 @@
 | 
			
		||||
package ovh.herisson.hornofthewild;
 | 
			
		||||
 | 
			
		||||
import net.minecraft.block.Block;
 | 
			
		||||
import net.minecraft.block.BlockState;
 | 
			
		||||
import net.minecraft.block.entity.BlockEntity;
 | 
			
		||||
import net.minecraft.entity.LivingEntity;
 | 
			
		||||
import net.minecraft.entity.player.PlayerEntity;
 | 
			
		||||
import net.minecraft.item.Item;
 | 
			
		||||
import net.minecraft.item.ItemStack;
 | 
			
		||||
import net.minecraft.item.ItemUsage;
 | 
			
		||||
import net.minecraft.registry.RegistryKeys;
 | 
			
		||||
import net.minecraft.registry.tag.TagKey;
 | 
			
		||||
import net.minecraft.sound.SoundCategory;
 | 
			
		||||
import net.minecraft.sound.SoundEvents;
 | 
			
		||||
import net.minecraft.text.Text;
 | 
			
		||||
import net.minecraft.util.Hand;
 | 
			
		||||
import net.minecraft.util.Identifier;
 | 
			
		||||
import net.minecraft.util.TypedActionResult;
 | 
			
		||||
import net.minecraft.util.UseAction;
 | 
			
		||||
import net.minecraft.util.math.BlockBox;
 | 
			
		||||
import net.minecraft.util.math.BlockPos;
 | 
			
		||||
import net.minecraft.world.World;
 | 
			
		||||
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.Collections;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
public class HornOfTheWildItem extends Item {
 | 
			
		||||
    public static final TagKey<Block> HORN_BREAKABLE = TagKey.of(RegistryKeys.BLOCK, new Identifier(HornOfTheWild.MOD_ID, "hotw_breakable"));
 | 
			
		||||
    public HornOfTheWildItem(Settings settings) {
 | 
			
		||||
        super(settings);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public int getMaxUseTime(ItemStack itemStack) {
 | 
			
		||||
        return 72000;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public TypedActionResult<ItemStack> use(World world, PlayerEntity playerEntity, Hand hand) {
 | 
			
		||||
        return ItemUsage.consumeHeldItem(world, playerEntity, hand);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void usageTick(World world, LivingEntity livingEntity, ItemStack itemStack, int time) {
 | 
			
		||||
        if (!world.isClient) {
 | 
			
		||||
            if(time % 5 == 0){
 | 
			
		||||
               HornBeat(world, itemStack, livingEntity.getBlockPos(), livingEntity);
 | 
			
		||||
            }
 | 
			
		||||
            world.playSound(null, livingEntity.getX(), livingEntity.getY(), livingEntity.getZ(), SoundEvents.ENTITY_HORSE_BREATHE, SoundCategory.PLAYERS, 1.0F, 1.0F);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public UseAction getUseAction(ItemStack itemStack) {
 | 
			
		||||
        return UseAction.BOW;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static boolean canHarvest(World world, ItemStack stack, BlockPos pos, LivingEntity livingEntity) {
 | 
			
		||||
        BlockState state = world.getBlockState(pos);
 | 
			
		||||
        return state.isIn(HORN_BREAKABLE);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void HornBeat(World world, ItemStack stack, BlockPos srcPos, LivingEntity livingEntity){
 | 
			
		||||
        int range = 12;
 | 
			
		||||
        int rangeY = 3;
 | 
			
		||||
 | 
			
		||||
        List<BlockPos> coords = new ArrayList<>();
 | 
			
		||||
        for (BlockPos pos: BlockPos.iterate(srcPos.add(-range, -rangeY, -range), srcPos.add(range, rangeY, range))){
 | 
			
		||||
            if(HornOfTheWildItem.canHarvest(world, stack, pos, livingEntity)){
 | 
			
		||||
                coords.add(pos.toImmutable());
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        Collections.shuffle(coords);
 | 
			
		||||
 | 
			
		||||
        int count = Math.min(coords.size(), 32);
 | 
			
		||||
        for (int i = 0; i < count; i++) {
 | 
			
		||||
            BlockPos currCoords = coords.get(i);
 | 
			
		||||
            BlockState state = world.getBlockState(currCoords);
 | 
			
		||||
            BlockEntity be = world.getBlockEntity(currCoords);
 | 
			
		||||
            world.breakBlock(currCoords, true);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,10 @@
 | 
			
		||||
package ovh.herisson.hornofthewild.client;
 | 
			
		||||
 | 
			
		||||
import net.fabricmc.api.ClientModInitializer;
 | 
			
		||||
 | 
			
		||||
public class HornofthewildClient implements ClientModInitializer {
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void onInitializeClient() {
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										3
									
								
								src/main/resources/assets/hotw/lang/en_us.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								src/main/resources/assets/hotw/lang/en_us.json
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,3 @@
 | 
			
		||||
{
 | 
			
		||||
  "item.hotw.hornofthewild": "Horn Of The Wild"
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  "parent": "item/generated",
 | 
			
		||||
  "textures": {
 | 
			
		||||
    "layer0": "hotw:item/hornofthewild"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								src/main/resources/assets/hotw/textures/item/hornofthewild.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/main/resources/assets/hotw/textures/item/hornofthewild.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 432 B  | 
@ -0,0 +1,20 @@
 | 
			
		||||
{
 | 
			
		||||
  "type": "minecraft:crafting_shaped",
 | 
			
		||||
  "pattern": [
 | 
			
		||||
    " # ",
 | 
			
		||||
    "#F#",
 | 
			
		||||
    "## "
 | 
			
		||||
  ],
 | 
			
		||||
  "key": {
 | 
			
		||||
    "#": {
 | 
			
		||||
      "tag": "minecraft:logs"
 | 
			
		||||
    },
 | 
			
		||||
    "F": {
 | 
			
		||||
      "item": "minecraft:fern"
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  "result": {
 | 
			
		||||
    "item": "hotw:hornofthewild",
 | 
			
		||||
    "count": 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,9 @@
 | 
			
		||||
{
 | 
			
		||||
  "type": "minecraft:stonecutting",
 | 
			
		||||
  "ingredient": {
 | 
			
		||||
    "item": "minecraft:goat_horn"
 | 
			
		||||
  },
 | 
			
		||||
  "result": "hotw:hornofthewild",
 | 
			
		||||
  "count": 1,
 | 
			
		||||
  "category": "misc"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										16
									
								
								src/main/resources/data/hotw/tags/blocks/hotw_breakable.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								src/main/resources/data/hotw/tags/blocks/hotw_breakable.json
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,16 @@
 | 
			
		||||
{
 | 
			
		||||
  "replace": false,
 | 
			
		||||
  "values": [
 | 
			
		||||
    "#minecraft:leaves",
 | 
			
		||||
    "#minecraft:crops",
 | 
			
		||||
    "#minecraft:fire",
 | 
			
		||||
    "#minecraft:flowers",
 | 
			
		||||
 | 
			
		||||
    "minecraft:grass",
 | 
			
		||||
    "minecraft:large_fern",
 | 
			
		||||
 | 
			
		||||
    "minecraft:tall_seagrass",
 | 
			
		||||
    "minecraft:seagrass",
 | 
			
		||||
    "minecraft:kelp_plant"
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										28
									
								
								src/main/resources/fabric.mod.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								src/main/resources/fabric.mod.json
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,28 @@
 | 
			
		||||
{
 | 
			
		||||
  "schemaVersion": 1,
 | 
			
		||||
  "id": "hornofthewild",
 | 
			
		||||
  "version": "${version}",
 | 
			
		||||
  "name": "HornOfTheWild",
 | 
			
		||||
  "description": "Horn of the wild from botania",
 | 
			
		||||
  "authors": [],
 | 
			
		||||
  "contact": {},
 | 
			
		||||
  "license": "MIT",
 | 
			
		||||
  "icon": "assets/hornofthewild/icon.png",
 | 
			
		||||
  "environment": "*",
 | 
			
		||||
  "entrypoints": {
 | 
			
		||||
    "client": [
 | 
			
		||||
      "ovh.herisson.hornofthewild.client.HornofthewildClient"
 | 
			
		||||
    ],
 | 
			
		||||
    "main": [
 | 
			
		||||
      "ovh.herisson.hornofthewild.HornOfTheWild"
 | 
			
		||||
    ]
 | 
			
		||||
  },
 | 
			
		||||
  "mixins": [
 | 
			
		||||
    "hornofthewild.mixins.json"
 | 
			
		||||
  ],
 | 
			
		||||
  "depends": {
 | 
			
		||||
    "fabricloader": ">=${loader_version}",
 | 
			
		||||
    "fabric": "*",
 | 
			
		||||
    "minecraft": "${minecraft_version}"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										13
									
								
								src/main/resources/hornofthewild.mixins.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								src/main/resources/hornofthewild.mixins.json
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,13 @@
 | 
			
		||||
{
 | 
			
		||||
  "required": true,
 | 
			
		||||
  "minVersion": "0.8",
 | 
			
		||||
  "package": "ovh.herisson.hornofthewild.mixin",
 | 
			
		||||
  "compatibilityLevel": "JAVA_17",
 | 
			
		||||
  "mixins": [
 | 
			
		||||
  ],
 | 
			
		||||
  "client": [
 | 
			
		||||
  ],
 | 
			
		||||
  "injectors": {
 | 
			
		||||
    "defaultRequire": 1
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user