From 06a061957c85786cbcf0ccb57ee3fc5103ee52a5 Mon Sep 17 00:00:00 2001 From: Patrick <147879351+WinniePatGG@users.noreply.github.com> Date: Sat, 13 Jun 2026 23:16:14 +0200 Subject: [PATCH] first commit --- .gitignore | 5 + LICENSE.txt | 2 + build.gradle | 89 ++++++++++++++++++ gradle.properties | 14 +++ settings.gradle | 9 ++ .../de/winniepat/parrotmod/Parrotmod.java | 11 +++ src/main/resources/assets/parrotmod/icon.png | Bin 0 -> 3964 bytes src/main/resources/fabric.mod.json | 25 +++++ src/main/resources/parrotmod.mixins.json | 16 ++++ 9 files changed, 171 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE.txt create mode 100644 build.gradle create mode 100644 gradle.properties create mode 100644 settings.gradle create mode 100644 src/main/java/de/winniepat/parrotmod/Parrotmod.java create mode 100644 src/main/resources/assets/parrotmod/icon.png create mode 100644 src/main/resources/fabric.mod.json create mode 100644 src/main/resources/parrotmod.mixins.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5194f1e --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.gradle +.idea +build +gradle +run diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..cbf929f --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,2 @@ +Copyright (c) 2026 WinniePatGG +All rights reserved. diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..b47c020 --- /dev/null +++ b/build.gradle @@ -0,0 +1,89 @@ +plugins { + id 'fabric-loom' version '1.15-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}:v2" + 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 = 21 +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.archives_base_name}" } + } +} + +// 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. + } +} diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..fbe1f9f --- /dev/null +++ b/gradle.properties @@ -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.21.11 +yarn_mappings=1.21.11+build.6 +loader_version=0.19.3 +# Mod Properties +mod_version=1.0 +maven_group=de.winniepat +archives_base_name=ParrotMod +# Dependencies +# check this on https://modmuss50.me/fabric.html +fabric_version=0.141.4+1.21.11 diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..f91a4fe --- /dev/null +++ b/settings.gradle @@ -0,0 +1,9 @@ +pluginManagement { + repositories { + maven { + name = 'Fabric' + url = 'https://maven.fabricmc.net/' + } + gradlePluginPortal() + } +} diff --git a/src/main/java/de/winniepat/parrotmod/Parrotmod.java b/src/main/java/de/winniepat/parrotmod/Parrotmod.java new file mode 100644 index 0000000..23a6291 --- /dev/null +++ b/src/main/java/de/winniepat/parrotmod/Parrotmod.java @@ -0,0 +1,11 @@ +package de.winniepat.parrotmod; + +import net.fabricmc.api.ModInitializer; + +public class Parrotmod implements ModInitializer { + + @Override + public void onInitialize() { + + } +} diff --git a/src/main/resources/assets/parrotmod/icon.png b/src/main/resources/assets/parrotmod/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..a4c15f39ccf83ad32a28719e9ed2d4a5606bb1dc GIT binary patch literal 3964 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", + "fabric-api": "*", + "minecraft": "${minecraft_version}" + } +} diff --git a/src/main/resources/parrotmod.mixins.json b/src/main/resources/parrotmod.mixins.json new file mode 100644 index 0000000..6dd7331 --- /dev/null +++ b/src/main/resources/parrotmod.mixins.json @@ -0,0 +1,16 @@ +{ + "required": true, + "minVersion": "0.8", + "package": "de.winniepat.parrotmod.mixin", + "compatibilityLevel": "JAVA_21", + "mixins": [ + ], + "client": [ + ], + "injectors": { + "defaultRequire": 1 + }, + "overwrites": { + "requireAnnotations": true + } +}