diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 000000000..ea6691a3b --- /dev/null +++ b/.gitattributes @@ -0,0 +1,4 @@ +* text=auto +/gradlew text eol=lf +*.bat text eol=crlf + diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 0fc71210d..e731668e0 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,6 +1,10 @@ version: 2 updates: - - package-ecosystem: "maven" + - package-ecosystem: "gradle" directory: "/" schedule: - interval: daily \ No newline at end of file + interval: daily + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" \ No newline at end of file diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3f206dbe1..a1a7c8256 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -12,117 +12,90 @@ jobs: setup: runs-on: ubuntu-latest - name: Maven Setup + name: Gradle Setup steps: - uses: actions/checkout@v3 + - uses: gradle/wrapper-validation-action@v1 - name: Set up JDK 17 uses: actions/setup-java@v3 with: distribution: 'temurin' java-version: '17' - cache: 'maven' + cache: 'gradle' + - name: Change Permissions + run: chmod +x ./gradlew - name: Setup Project - run: mvn clean install dependency:tree -DskipTests + run: ./gradlew project tasks :mobchip-bukkit:dependencies - build-16: - needs: setup + build: runs-on: ubuntu-latest - name: Build Java 16 - steps: - - uses: actions/checkout@v3 - - - name: Set up JDK ${{ matrix.java-version }} - uses: actions/setup-java@v3 - with: - distribution: 'temurin' - java-version: '16' - cache: 'maven' - - name: Build Project - run: mvn clean package -DskipTests -Dmaven.javadoc.skip=true -pl "base,abstraction,nms/1_13_R1,nms/1_13_R2,nms/1_14_R1,nms/1_15_R1,nms/1_16_R1,nms/1_16_R2,nms/1_16_R3,nms/1_17_R1,bukkit" - - build-8_11: needs: setup - strategy: - matrix: - java-version: [8, 11] - - runs-on: ubuntu-latest - name: Build Java ${{ matrix.java-version }} - steps: - - uses: actions/checkout@v3 - - - name: Set up JDK ${{ matrix.java-version }} - uses: actions/setup-java@v3 - with: - distribution: 'temurin' - java-version: ${{ matrix.java-version }} - cache: 'maven' - - name: Build Project - run: mvn clean package -DskipTests -Dmaven.javadoc.skip=true -pl "base,abstraction,nms/1_13_R1,nms/1_13_R2,nms/1_14_R1,nms/1_15_R1,nms/1_16_R1,nms/1_16_R2,nms/1_16_R3,bukkit" - + timeout-minutes: 10 - build: - needs: setup strategy: matrix: - java-version: [17, 18] + java-version: [17, 18, 19] - runs-on: ubuntu-latest name: Build Java ${{ matrix.java-version }} steps: - uses: actions/checkout@v3 - - name: Set up JDK ${{ matrix.java-version }} uses: actions/setup-java@v3 with: - distribution: 'temurin' - java-version: ${{ matrix.java-version }} - cache: 'maven' - - name: Build Project - run: mvn clean package -Dmaven.javadoc.skip=true + distribution: ${{ matrix.java-vendor }} + java-version: 'temurin' + cache: 'gradle' + - name: Change Permissions + run: chmod +x ./gradlew + - name: Build with Gradle + run: ./gradlew clean assemble publishToMavenLocal test: runs-on: ubuntu-latest + timeout-minutes: 10 needs: setup + name: Test Project steps: - uses: actions/checkout@v3 - - name: Set up JDK 17 + - name: Setup JDK 17 uses: actions/setup-java@v3 with: - distribution: 'temurin' java-version: '17' - cache: 'maven' - - name: Test Project - run: mvn test + distribution: 'temurin' + cache: 'gradle' + - name: Change Permissions + run: chmod +x ./gradlew + - name: Gradle Test + run: ./gradlew test deploy: runs-on: ubuntu-latest - needs: setup + needs: build name: Deploy JavaDocs if: ${{ github.event_name != 'pull_request' && github.ref_name == 'master' }} steps: - uses: actions/checkout@v3 - - name: Set up JDK 17 uses: actions/setup-java@v3 with: distribution: 'temurin' java-version: '17' - cache: 'maven' - - - name: Build Project - run: mvn install -DskipTests - + cache: 'gradle' + - name: Change Permissions + run: chmod +x ./gradlew - name: Build JavaDocs + run: ./gradlew clean allJavadoc + - name: Deploy JavaDoc run: bash javadoc.sh ${GITHUB_SHA::7} analyze: runs-on: ubuntu-latest - needs: setup + needs: build if: github.event_name != 'pull_request' - name: Analyze Project + timeout-minutes: 10 + name: Analyze Project steps: - uses: actions/checkout@v3 with: @@ -132,18 +105,17 @@ jobs: with: distribution: 'temurin' java-version: '17' - cache: 'maven' - + cache: 'gradle' - name: Cache SonarCloud packages uses: actions/cache@v3 with: path: ~/.sonar/cache key: ${{ runner.os }}-sonar restore-keys: ${{ runner.os }}-sonar - + - name: Change Permissions + run: chmod +x ./gradlew - name: Build and Analyze - env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} - run: mvn -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar -Dsonar.projectKey=GamerCoder215_MobChip \ No newline at end of file + run: ./gradlew clean assemble sonar --info \ No newline at end of file diff --git a/.gitignore b/.gitignore index 5eaeb8da7..f7751e876 100644 --- a/.gitignore +++ b/.gitignore @@ -1,14 +1,11 @@ .gitpod.yml *.iml - .vscode/ *.class .apt_generated_tests/ build.sh .idea/ - -**/target/ -target/ - logs/*.log **/logs/*.log +.gradle/ +build/ diff --git a/abstraction/build.gradle.kts b/abstraction/build.gradle.kts new file mode 100644 index 000000000..4741fc23b --- /dev/null +++ b/abstraction/build.gradle.kts @@ -0,0 +1,4 @@ +dependencies { + api(project(":mobchip-base")) + compileOnly("org.spigotmc:spigot-api:1.13-R0.1-SNAPSHOT") +} \ No newline at end of file diff --git a/abstraction/pom.xml b/abstraction/pom.xml deleted file mode 100644 index b432e13ce..000000000 --- a/abstraction/pom.xml +++ /dev/null @@ -1,41 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - - - mobchip-abstraction - MobChip-Abstraction - - - src/main/java - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.5.0 - - false - - - - - - - - org.spigotmc - spigot-api - ${minecraft.version} - provided - - - ${project.groupId} - mobchip-base - ${project.version} - compile - - - - \ No newline at end of file diff --git a/base/build.gradle.kts b/base/build.gradle.kts new file mode 100644 index 000000000..84ddca4b8 --- /dev/null +++ b/base/build.gradle.kts @@ -0,0 +1,27 @@ +import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar + +dependencies { + compileOnly("org.spigotmc:spigot-api:1.13-R0.1-SNAPSHOT") +} + +java { + withSourcesJar() + withJavadocJar() +} + +tasks { + javadoc { + enabled = true + + options { + require(this is StandardJavadocDocletOptions) + + links("https://hub.spigotmc.org/javadocs/spigot/") + links("https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/") + } + } + + withType { + dependsOn("sourcesJar", "javadocJar") + } +} \ No newline at end of file diff --git a/base/pom.xml b/base/pom.xml deleted file mode 100644 index 7e757ee0f..000000000 --- a/base/pom.xml +++ /dev/null @@ -1,110 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - - - mobchip-base - MobChip - - - - sonatype - https://oss.sonatype.org/content/repositories/releases/ - - - - - src/main/java/ - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.5.0 - - - https://hub.spigotmc.org/javadocs/spigot/ - https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/ - - - - - javadoc-jar - package - - jar - - - false - - - - - - org.apache.maven.plugins - maven-source-plugin - 3.2.1 - - true - - - - attach-sources - - jar - - - true - - - - - - org.apache.maven.plugins - maven-install-plugin - 3.1.1 - - - install - default-install - - install - - - true - - - - install - install - - install-file - - - ${project.basedir}/pom.xml - ${project.build.directory}/${project.build.finalName}.jar - ${project.groupId} - ${project.artifactId} - ${project.version} - ${project.packaging} - ${project.build.directory}/${project.build.finalName}-javadoc.jar - ${project.build.directory}/${project.build.finalName}-sources.jar - - - - - - - - - - org.spigotmc - spigot-api - ${minecraft.version} - provided - - - - \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 000000000..d73f8f2b2 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,238 @@ +@file:Suppress("UnstableApiUsage") + +import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar + +plugins { + id("org.sonarqube") version "4.0.0.2929" + id("com.github.johnrengelman.shadow") version "8.1.1" apply false + + java + `maven-publish` + `java-library` + jacoco +} + +val pGroup = "me.gamercoder215" +val pVersion = "1.9.0-SNAPSHOT" +val pAuthor = "GamerCoder215" + +val github = "$pAuthor/MobChip" + +sonarqube { + properties { + property("sonar.projectKey", "${pAuthor}_MobChip") + property("sonar.organization", "gamercoder215") + property("sonar.host.url", "https://sonarcloud.io") + } +} + +val jdProjects = listOf( + ":mobchip-bukkit", + ":mobchip-base", + ":mobchip-1_14_R1" +) + +tasks { + register("allJavadoc", Javadoc::class.java) { + jdProjects.forEach { dependsOn(project(it).tasks["javadoc"]) } + + enabled = true + title = "MobChip $version API" + + source = files(jdProjects.map { project(it).sourceSets["main"].allJava }).asFileTree + classpath = files(jdProjects.map { project(it).sourceSets["main"].compileClasspath }) + + options { + require(this is StandardJavadocDocletOptions) + + overview = "bukkit/src/main/javadoc/overview.html" + + links("https://hub.spigotmc.org/javadocs/spigot/") + links("https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/") + } + } +} + +allprojects { + group = pGroup + version = pVersion + description = "PathfinderGoal and Behavior NMS Wrapper" + + apply(plugin = "maven-publish") + apply() + apply() + + repositories { + mavenCentral() + mavenLocal() + + maven("https://jitpack.io") + maven("https://plugins.gradle.org/m2/") + maven("https://oss.sonatype.org/content/repositories/snapshots") + maven("https://oss.sonatype.org/content/repositories/central") + + maven("https://hub.spigotmc.org/nexus/content/repositories/snapshots/") + maven("https://repo.codemc.org/repository/nms/") + maven("https://repo.papermc.io/repository/maven-public/") + } + + publishing { + publications { + create("maven") { + groupId = pGroup + artifactId = project.name + version = pVersion + + pom { + description.set(project.description) + url.set("https://github.com/$github") + + licenses { + license { + name.set("GPL-3.0") + url.set("https://github.com/$github/blob/master/LICENSE") + distribution.set("repo") + } + } + + developers { + developer { + id.set(pAuthor) + roles.add("Owner") + email.set("gamer@gamercoder.me") + organization.set("Team Inceptus") + organizationUrl.set("https://teaminceptus.us") + } + } + + scm { + connection.set("scm:git:git://$github.git") + developerConnection.set("scm:git:ssh://$github.git") + url.set("https://github.com/$github") + } + + inceptionYear.set("2022") + + ciManagement { + system.set("Github Actions") + url.set("https://github.com/$github/actions") + } + + issueManagement { + system.set("Github") + url.set("https://github.com/$github/issues/") + } + } + + from(components["java"]) + } + } + + repositories { + maven { + credentials { + username = System.getenv("JENKINS_USERNAME") + password = System.getenv("JENKINS_PASSWORD") + } + + val releases = "https://repo.codemc.io/repository/maven-releases/" + val snapshots = "https://repo.codemc.io/repository/maven-snapshots/" + url = uri(if (version.toString().endsWith("SNAPSHOT")) snapshots else releases) + } + } + } +} + +publishing { + publications { + getByName("maven") { + pom { + packaging = "pom" + } + } + } +} + +val jvmVersion = JavaVersion.VERSION_1_8 + +subprojects { + apply() + apply(plugin = "org.sonarqube") + apply(plugin = "com.github.johnrengelman.shadow") + + dependencies { + testImplementation("org.mockito:mockito-core:5.3.1") + testImplementation("org.junit.jupiter:junit-jupiter:5.9.3") + + testImplementation("org.spigotmc:spigot-api:1.13-R0.1-SNAPSHOT") + testImplementation("net.md-5:bungeecord-chat:1.16-R0.4") + + compileOnly("org.jetbrains:annotations:24.0.1") + } + + java { + sourceCompatibility = jvmVersion + targetCompatibility = jvmVersion + } + + publishing { + publications { + getByName("maven") { + artifact(tasks["shadowJar"]) + } + } + } + + tasks { + compileJava { + options.encoding = "UTF-8" + options.isDeprecation = false + options.isWarnings = false + options.compilerArgs.addAll(listOf("-Xlint:all", "-Xlint:-processing")) + } + + jacocoTestReport { + dependsOn(test) + + reports { + xml.required.set(false) + csv.required.set(false) + + html.required.set(true) + html.outputLocation.set(layout.buildDirectory.dir("jacocoHtml")) + } + } + + test { + useJUnitPlatform() + testLogging { + events("passed", "skipped", "failed") + } + finalizedBy(jacocoTestReport) + } + + javadoc { + enabled = false + options.encoding = "UTF-8" + options.memberLevel = JavadocMemberLevel.PROTECTED + } + + jar.configure { + enabled = false + dependsOn("shadowJar") + } + + withType { + manifest { + attributes( + "Implementation-Title" to project.name, + "Implementation-Version" to project.version, + "Implementation-Vendor" to pAuthor + ) + } + exclude("META-INF", "META-INF/**") + + archiveClassifier.set("") + } + } +} \ No newline at end of file diff --git a/bukkit/build.gradle.kts b/bukkit/build.gradle.kts new file mode 100644 index 000000000..de57effdc --- /dev/null +++ b/bukkit/build.gradle.kts @@ -0,0 +1,50 @@ +dependencies { + compileOnly("org.spigotmc:spigot-api:1.13-R0.1-SNAPSHOT") { + version { + strictly("1.13-R0.1-SNAPSHOT") + } + } + + // API + + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + + listOf( + "1_13_R1", + "1_13_R2", + "1_14_R1", + "1_15_R1", + "1_16_R1", + "1_16_R2", + "1_16_R3", + "1_17_R1", + "1_18_R1", + "1_18_R2", + "1_19_R1", + "1_19_R2", + "1_19_R3" + ).forEach { + api(project(":mobchip-$it")) + } +} + +java { + withSourcesJar() + withJavadocJar() +} + +sourceSets["main"].allJava.srcDir("src/main/javadoc") + +tasks { + javadoc { + enabled = true + + options { + require(this is StandardJavadocDocletOptions) + + links("https://hub.spigotmc.org/javadocs/spigot/") + links("https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/") + } + } +} \ No newline at end of file diff --git a/bukkit/pom.xml b/bukkit/pom.xml deleted file mode 100644 index 084e5b7f1..000000000 --- a/bukkit/pom.xml +++ /dev/null @@ -1,199 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - - mobchip-bukkit - MobChip-Bukkit - - - src/main/java - - - org.apache.maven.plugins - maven-source-plugin - 3.2.1 - - true - - - - attach-sources - - jar - - - true - - - - - - org.apache.maven.plugins - maven-install-plugin - 3.1.1 - - - install - default-install - - install - - - true - - - - install - install - - install-file - - - ${project.basedir}/pom.xml - ${project.build.directory}/${project.build.finalName}.jar - ${project.groupId} - ${project.artifactId} - ${project.version} - ${project.packaging} - ${project.build.directory}/${project.build.finalName}-javadoc.jar - ${project.build.directory}/${project.build.finalName}-sources.jar - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.5.0 - - - https://hub.spigotmc.org/javadocs/spigot/ - https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/ - - - - - javadoc-jar - package - - jar - - - true - - - net.minecraft.* - org.* - me.gamercoder215.mobchip.abstraction.* - me.gamercoder215.mobchip.abstraction.*.* - - - - **/me/gamercoder215/mobchip/abstraction/**/*.java - - - - - - - - - - - ${project.groupId} - mobchip-base - ${project.parent.version} - compile - - - org.spigotmc - spigot-api - 1.19-R0.1-SNAPSHOT - provided - - - - ${project.groupId} - mobchip-1_13_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_13_R2 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_15_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_16_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_16_R2 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_16_R3 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_17_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_18_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_18_R2 - ${project.version} - compile - - - - ${project.groupId} - mobchip-1_19_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_19_R2 - ${project.version} - compile - - - ${project.groupId} - mobchip-1_19_R3 - ${project.version} - compile - - - - \ No newline at end of file diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 000000000..6fd187404 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,4 @@ +kotlin.code.style=official +org.gradle.daemon=true +org.gradle.jvmargs=-Xmx2G -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +compileJava.options.encoding=UTF-8 \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 000000000..ccebba771 Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..37aef8d3f --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip +networkTimeout=10000 +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew new file mode 100644 index 000000000..79a61d421 --- /dev/null +++ b/gradlew @@ -0,0 +1,244 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 000000000..93e3f59f1 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,92 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/javadoc.sh b/javadoc.sh index 34ba4de21..0232bd578 100644 --- a/javadoc.sh +++ b/javadoc.sh @@ -12,7 +12,7 @@ mkdir ./docs echo "[MobChip JavaDoc Builder] Injecting..." -cp -R bukkit/target/apidocs/* docs/ +cp -R build/docs/javadoc/* docs/ git checkout gh-pages diff --git a/nms/1_13_R1/build.gradle.kts b/nms/1_13_R1/build.gradle.kts new file mode 100644 index 000000000..047165a53 --- /dev/null +++ b/nms/1_13_R1/build.gradle.kts @@ -0,0 +1,9 @@ +val mcVersion = "1.13" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") +} \ No newline at end of file diff --git a/nms/1_13_R1/pom.xml b/nms/1_13_R1/pom.xml deleted file mode 100644 index 195677ebb..000000000 --- a/nms/1_13_R1/pom.xml +++ /dev/null @@ -1,32 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_13_R1 - MobChip-1.13 - - - src/main/java - - - - - org.spigotmc - spigot - 1.13-R0.1-SNAPSHOT - provided - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - - \ No newline at end of file diff --git a/nms/1_13_R2/build.gradle.kts b/nms/1_13_R2/build.gradle.kts new file mode 100644 index 000000000..d8950f1cc --- /dev/null +++ b/nms/1_13_R2/build.gradle.kts @@ -0,0 +1,9 @@ +val mcVersion = "1.13.2" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") +} \ No newline at end of file diff --git a/nms/1_13_R2/pom.xml b/nms/1_13_R2/pom.xml deleted file mode 100644 index 53e05d5d7..000000000 --- a/nms/1_13_R2/pom.xml +++ /dev/null @@ -1,33 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_13_R2 - MobChip-1.13.2 - - - src/main/java - - - - - org.spigotmc - spigot - 1.13.2-R0.1-SNAPSHOT - provided - - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - - \ No newline at end of file diff --git a/nms/1_14_R1/build.gradle.kts b/nms/1_14_R1/build.gradle.kts new file mode 100644 index 000000000..533f65b56 --- /dev/null +++ b/nms/1_14_R1/build.gradle.kts @@ -0,0 +1,24 @@ +val mcVersion = "1.14.4" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") +} + +tasks { + javadoc { + enabled = true + + source.removeAll { it.path.contains("abstraction") } + + options { + require(this is StandardJavadocDocletOptions) + + links("https://hub.spigotmc.org/javadocs/spigot/") + links("https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/") + } + } +} \ No newline at end of file diff --git a/nms/1_14_R1/pom.xml b/nms/1_14_R1/pom.xml deleted file mode 100644 index 7d1ffd676..000000000 --- a/nms/1_14_R1/pom.xml +++ /dev/null @@ -1,62 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_14_R1 - MobChip-1.14.4 - - - src/main/java - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.5.0 - - - https://hub.spigotmc.org/javadocs/spigot/ - https://javadoc.io/doc/org.jetbrains/annotations-java5/23.0.0/ - - - me.gamercoder215.mobchip.abstraction.v1_14_R1.ChipUtil1_14_R1 - - - - - javadoc-jar - package - - jar - - - - me.gamercoder215.mobchip.abstraction.v1_14_R1.ChipUtil1_14_R1 - - - - - - - - - - - org.spigotmc - spigot - 1.14.4-R0.1-SNAPSHOT - provided - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - - \ No newline at end of file diff --git a/nms/1_15_R1/build.gradle.kts b/nms/1_15_R1/build.gradle.kts new file mode 100644 index 000000000..6ca135b48 --- /dev/null +++ b/nms/1_15_R1/build.gradle.kts @@ -0,0 +1,10 @@ +val mcVersion = "1.15.2" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") +} \ No newline at end of file diff --git a/nms/1_15_R1/pom.xml b/nms/1_15_R1/pom.xml deleted file mode 100644 index 873641d5b..000000000 --- a/nms/1_15_R1/pom.xml +++ /dev/null @@ -1,38 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_15_R1 - MobChip-1.15 - - - src/main/java - - - - - org.spigotmc - spigot - 1.15-R0.1-SNAPSHOT - provided - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - - \ No newline at end of file diff --git a/nms/1_16_R1/build.gradle.kts b/nms/1_16_R1/build.gradle.kts new file mode 100644 index 000000000..cde9f064b --- /dev/null +++ b/nms/1_16_R1/build.gradle.kts @@ -0,0 +1,10 @@ +val mcVersion = "1.16.1" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") +} \ No newline at end of file diff --git a/nms/1_16_R1/pom.xml b/nms/1_16_R1/pom.xml deleted file mode 100644 index 41b783aae..000000000 --- a/nms/1_16_R1/pom.xml +++ /dev/null @@ -1,38 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_16_R1 - MobChip-1.16 - - - src/main/java - - - - - org.spigotmc - spigot - 1.16.1-R0.1-SNAPSHOT - provided - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - - \ No newline at end of file diff --git a/nms/1_16_R2/build.gradle.kts b/nms/1_16_R2/build.gradle.kts new file mode 100644 index 000000000..f2b3839f0 --- /dev/null +++ b/nms/1_16_R2/build.gradle.kts @@ -0,0 +1,10 @@ +val mcVersion = "1.16.2" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") +} \ No newline at end of file diff --git a/nms/1_16_R2/pom.xml b/nms/1_16_R2/pom.xml deleted file mode 100644 index 553323c75..000000000 --- a/nms/1_16_R2/pom.xml +++ /dev/null @@ -1,38 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_16_R2 - MobChip-1.16.2 - - - src/main/java - - - - - org.spigotmc - spigot - 1.16.2-R0.1-SNAPSHOT - provided - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - - \ No newline at end of file diff --git a/nms/1_16_R3/build.gradle.kts b/nms/1_16_R3/build.gradle.kts new file mode 100644 index 000000000..28435a900 --- /dev/null +++ b/nms/1_16_R3/build.gradle.kts @@ -0,0 +1,10 @@ +val mcVersion = "1.16.4" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") +} \ No newline at end of file diff --git a/nms/1_16_R3/pom.xml b/nms/1_16_R3/pom.xml deleted file mode 100644 index 832461fea..000000000 --- a/nms/1_16_R3/pom.xml +++ /dev/null @@ -1,38 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_16_R3 - MobChip-1.16.4 - - - src/main/java - - - - - org.spigotmc - spigot - 1.16.4-R0.1-SNAPSHOT - provided - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - - \ No newline at end of file diff --git a/nms/1_17_R1/build.gradle.kts b/nms/1_17_R1/build.gradle.kts new file mode 100644 index 000000000..8563f3780 --- /dev/null +++ b/nms/1_17_R1/build.gradle.kts @@ -0,0 +1,15 @@ +val mcVersion = "1.17.1" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT") +} + +java { + sourceCompatibility = JavaVersion.VERSION_16 + targetCompatibility = JavaVersion.VERSION_16 +} \ No newline at end of file diff --git a/nms/1_17_R1/pom.xml b/nms/1_17_R1/pom.xml deleted file mode 100644 index f162deec2..000000000 --- a/nms/1_17_R1/pom.xml +++ /dev/null @@ -1,47 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_17_R1 - MobChip-1.17 - - - 16 - 16 - 16 - - 1.17.1-R0.1-SNAPSHOT - - - - src/main/java - - - - - org.spigotmc - spigot - ${minecraft.version} - provided - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - - - \ No newline at end of file diff --git a/nms/1_18_R1/build.gradle.kts b/nms/1_18_R1/build.gradle.kts new file mode 100644 index 000000000..53085c0d1 --- /dev/null +++ b/nms/1_18_R1/build.gradle.kts @@ -0,0 +1,35 @@ +import io.github.patrick.gradle.remapper.RemapTask + +plugins { + id("io.github.patrick.remapper") version "1.4.0" +} + +val mcVersion = "1.18.1" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") +} + +java { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 +} + +tasks { + assemble { + dependsOn("remap") + } + + remap { + dependsOn("shadowJar") + + version.set(mcVersion) + action.set(RemapTask.Action.MOJANG_TO_SPIGOT) + archiveClassifier.set("") + } +} \ No newline at end of file diff --git a/nms/1_18_R1/pom.xml b/nms/1_18_R1/pom.xml deleted file mode 100644 index 282d82e03..000000000 --- a/nms/1_18_R1/pom.xml +++ /dev/null @@ -1,89 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_18_R1 - MobChip-1.18 - - - 17 - 17 - 17 - - 1.18-R0.1-SNAPSHOT - - - - src/main/java - - - net.md-5 - specialsource-maven-plugin - 1.2.5 - - - package - - remap - - remap-obf - - org.spigotmc:minecraft-server:${minecraft.version}:txt:maps-mojang - true - org.spigotmc:spigot:${minecraft.version}:jar:remapped-mojang - true - remapped-obf - - - - package - - remap - - remap-spigot - - ${project.build.directory}/${project.artifactId}-${project.version}-remapped-obf.jar - org.spigotmc:minecraft-server:${minecraft.version}:csrg:maps-spigot - org.spigotmc:spigot:${minecraft.version}:jar:remapped-obf - - - - - - - - - - org.spigotmc - spigot - ${minecraft.version} - provided - remapped-mojang - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - ${project.groupId} - mobchip-base - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - - - \ No newline at end of file diff --git a/nms/1_18_R2/build.gradle.kts b/nms/1_18_R2/build.gradle.kts new file mode 100644 index 000000000..749415e97 --- /dev/null +++ b/nms/1_18_R2/build.gradle.kts @@ -0,0 +1,35 @@ +import io.github.patrick.gradle.remapper.RemapTask + +plugins { + id("io.github.patrick.remapper") version "1.4.0" +} + +val mcVersion = "1.18.2" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") +} + +java { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 +} + +tasks { + assemble { + dependsOn("remap") + } + + remap { + dependsOn("shadowJar") + + version.set(mcVersion) + action.set(RemapTask.Action.MOJANG_TO_SPIGOT) + archiveClassifier.set("") + } +} \ No newline at end of file diff --git a/nms/1_18_R2/pom.xml b/nms/1_18_R2/pom.xml deleted file mode 100644 index 8be95695d..000000000 --- a/nms/1_18_R2/pom.xml +++ /dev/null @@ -1,89 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_18_R2 - MobChip-1.18.2 - - - 17 - 17 - 17 - - 1.18.2-R0.1-SNAPSHOT - - - - src/main/java - - - net.md-5 - specialsource-maven-plugin - 1.2.5 - - - package - - remap - - remap-obf - - org.spigotmc:minecraft-server:${minecraft.version}:txt:maps-mojang - true - org.spigotmc:spigot:${minecraft.version}:jar:remapped-mojang - true - remapped-obf - - - - package - - remap - - remap-spigot - - ${project.build.directory}/${project.artifactId}-${project.version}-remapped-obf.jar - org.spigotmc:minecraft-server:${minecraft.version}:csrg:maps-spigot - org.spigotmc:spigot:${minecraft.version}:jar:remapped-obf - - - - - - - - - - org.spigotmc - spigot - ${minecraft.version} - provided - remapped-mojang - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - ${project.groupId} - mobchip-base - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - - - \ No newline at end of file diff --git a/nms/1_19_R1/build.gradle.kts b/nms/1_19_R1/build.gradle.kts new file mode 100644 index 000000000..c7b7c91ca --- /dev/null +++ b/nms/1_19_R1/build.gradle.kts @@ -0,0 +1,35 @@ +import io.github.patrick.gradle.remapper.RemapTask + +plugins { + id("io.github.patrick.remapper") version "1.4.0" +} + +val mcVersion = "1.19.2" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") +} + +java { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 +} + +tasks { + assemble { + dependsOn("remap") + } + + remap { + dependsOn("shadowJar") + + version.set(mcVersion) + action.set(RemapTask.Action.MOJANG_TO_SPIGOT) + archiveClassifier.set("") + } +} \ No newline at end of file diff --git a/nms/1_19_R1/pom.xml b/nms/1_19_R1/pom.xml deleted file mode 100644 index 920cc2143..000000000 --- a/nms/1_19_R1/pom.xml +++ /dev/null @@ -1,83 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_19_R1 - MobChip-1.19 - - - 17 - 17 - 17 - - 1.19.2-R0.1-SNAPSHOT - - - - src/main/java - - - net.md-5 - specialsource-maven-plugin - 1.2.5 - - - package - - remap - - remap-obf - - org.spigotmc:minecraft-server:${minecraft.version}:txt:maps-mojang - true - org.spigotmc:spigot:${minecraft.version}:jar:remapped-mojang - true - remapped-obf - - - - package - - remap - - remap-spigot - - ${project.build.directory}/${project.artifactId}-${project.version}-remapped-obf.jar - org.spigotmc:minecraft-server:${minecraft.version}:csrg:maps-spigot - org.spigotmc:spigot:${minecraft.version}:jar:remapped-obf - - - - - - - - - - org.spigotmc - spigot - ${minecraft.version} - provided - remapped-mojang - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - - - \ No newline at end of file diff --git a/nms/1_19_R2/build.gradle.kts b/nms/1_19_R2/build.gradle.kts new file mode 100644 index 000000000..5d191941a --- /dev/null +++ b/nms/1_19_R2/build.gradle.kts @@ -0,0 +1,35 @@ +import io.github.patrick.gradle.remapper.RemapTask + +plugins { + id("io.github.patrick.remapper") version "1.4.0" +} + +val mcVersion = "1.19.3" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") +} + +java { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 +} + +tasks { + assemble { + dependsOn("remap") + } + + remap { + dependsOn("shadowJar") + + version.set(mcVersion) + action.set(RemapTask.Action.MOJANG_TO_SPIGOT) + archiveClassifier.set("") + } +} \ No newline at end of file diff --git a/nms/1_19_R2/pom.xml b/nms/1_19_R2/pom.xml deleted file mode 100644 index b09a7706d..000000000 --- a/nms/1_19_R2/pom.xml +++ /dev/null @@ -1,83 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_19_R2 - MobChip-1.19.3 - - - 17 - 17 - 17 - - 1.19.3-R0.1-SNAPSHOT - - - - src/main/java - - - net.md-5 - specialsource-maven-plugin - 1.2.5 - - - package - - remap - - remap-obf - - org.spigotmc:minecraft-server:${minecraft.version}:txt:maps-mojang - true - org.spigotmc:spigot:${minecraft.version}:jar:remapped-mojang - true - remapped-obf - - - - package - - remap - - remap-spigot - - ${project.build.directory}/${project.artifactId}-${project.version}-remapped-obf.jar - org.spigotmc:minecraft-server:${minecraft.version}:csrg:maps-spigot - org.spigotmc:spigot:${minecraft.version}:jar:remapped-obf - - - - - - - - - - org.spigotmc - spigot - ${minecraft.version} - provided - remapped-mojang - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - - - \ No newline at end of file diff --git a/nms/1_19_R3/build.gradle.kts b/nms/1_19_R3/build.gradle.kts new file mode 100644 index 000000000..d24d2abdf --- /dev/null +++ b/nms/1_19_R3/build.gradle.kts @@ -0,0 +1,35 @@ +import io.github.patrick.gradle.remapper.RemapTask + +plugins { + id("io.github.patrick.remapper") version "1.4.0" +} + +val mcVersion = "1.19.4" + +dependencies { + api(project(":mobchip-base")) + api(project(":mobchip-abstraction")) + api(project(":mobchip-1_14_R1")) + + compileOnly("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") + testImplementation("org.spigotmc:spigot:$mcVersion-R0.1-SNAPSHOT:remapped-mojang") +} + +java { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 +} + +tasks { + assemble { + dependsOn("remap") + } + + remap { + dependsOn("shadowJar") + + version.set(mcVersion) + action.set(RemapTask.Action.MOJANG_TO_SPIGOT) + archiveClassifier.set("") + } +} \ No newline at end of file diff --git a/nms/1_19_R3/pom.xml b/nms/1_19_R3/pom.xml deleted file mode 100644 index 1c5e7cd85..000000000 --- a/nms/1_19_R3/pom.xml +++ /dev/null @@ -1,83 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - ../../pom.xml - - - mobchip-1_19_R3 - MobChip-1.19.4 - - - 17 - 17 - 17 - - 1.19.4-R0.1-SNAPSHOT - - - - src/main/java - - - net.md-5 - specialsource-maven-plugin - 1.2.5 - - - package - - remap - - remap-obf - - org.spigotmc:minecraft-server:${minecraft.version}:txt:maps-mojang - true - org.spigotmc:spigot:${minecraft.version}:jar:remapped-mojang - true - remapped-obf - - - - package - - remap - - remap-spigot - - ${project.build.directory}/${project.artifactId}-${project.version}-remapped-obf.jar - org.spigotmc:minecraft-server:${minecraft.version}:csrg:maps-spigot - org.spigotmc:spigot:${minecraft.version}:jar:remapped-obf - - - - - - - - - - org.spigotmc - spigot - ${minecraft.version} - provided - remapped-mojang - - - ${project.groupId} - mobchip-abstraction - ${project.version} - compile - - - ${project.groupId} - mobchip-1_14_R1 - ${project.version} - compile - - - - - \ No newline at end of file diff --git a/nms/1_19_R3/src/main/java/me/gamercoder215/mobchip/abstraction/v1_19_R3/ChipUtil1_19_R3.java b/nms/1_19_R3/src/main/java/me/gamercoder215/mobchip/abstraction/v1_19_R3/ChipUtil1_19_R3.java index 134fe9783..fb5f8aa7b 100644 --- a/nms/1_19_R3/src/main/java/me/gamercoder215/mobchip/abstraction/v1_19_R3/ChipUtil1_19_R3.java +++ b/nms/1_19_R3/src/main/java/me/gamercoder215/mobchip/abstraction/v1_19_R3/ChipUtil1_19_R3.java @@ -41,7 +41,6 @@ import net.minecraft.sounds.SoundEvent; import net.minecraft.world.Difficulty; import net.minecraft.world.damagesource.DamageSource; -import net.minecraft.world.damagesource.DamageSources; import net.minecraft.world.damagesource.DamageType; import net.minecraft.world.damagesource.DamageTypes; import net.minecraft.world.entity.NeutralMob; diff --git a/pom.xml b/pom.xml deleted file mode 100644 index 7dae81e40..000000000 --- a/pom.xml +++ /dev/null @@ -1,197 +0,0 @@ - - 4.0.0 - - me.gamercoder215 - mobchip-parent - 1.8.1-SNAPSHOT - pom - - MobChip-Parent - https://github.com/GamerCoder215/MobChip - PathfinderGoal and Behavior NMS Wrapper - - - 1.13-R0.1-SNAPSHOT - UTF-8 - UTF-8 - - 8 - 8 - - GamerCoder215/MobChip - gamercoder215 - https://sonarcloud.io - - - - - GamerCoder - - Owner - - gamercoder215@teaminceptus.us - Team Inceptus - - - - - - GPL-3.0 - https://www.gnu.org/licenses/gpl-3.0.en.html - repo - - - - - scm:git:${project.url}.git - scm:git:git@github.com:${github}.git - https://github.com/${github} - - - 2022 - - - GitHub Actions - https://github.com/${github}/actions - - - - GitHub - https://github.com/${github}/issues/ - - - - base - bukkit - abstraction - - nms/1_13_R1 - nms/1_13_R2 - nms/1_14_R1 - nms/1_15_R1 - nms/1_16_R1 - nms/1_16_R2 - nms/1_16_R3 - nms/1_17_R1 - nms/1_18_R1 - nms/1_18_R2 - nms/1_19_R1 - nms/1_19_R2 - nms/1_19_R3 - - - - - spigot-repo - Spigot-API Repository - https://hub.spigotmc.org/nexus/content/repositories/snapshots/ - - - nms-repo - NMS Repository - https://repo.codemc.org/repository/nms/ - - - papermc - PaperMC Repository - https://repo.papermc.io/repository/maven-public/ - - - - - - codemc-releases - https://repo.codemc.io/repository/maven-releases/ - - - codemc-snapshots - https://repo.codemc.io/repository/maven-snapshots/ - - - - - - - org.mockito - mockito-core - 5.3.1 - test - - - org.junit.jupiter - junit-jupiter - 5.9.3 - test - - - - - org.jetbrains - annotations - 24.0.1 - provided - - - - - ${project.name}-${project.version} - clean install - - - org.apache.maven.plugins - maven-compiler-plugin - 3.11.0 - - - org.apache.maven.plugins - maven-surefire-plugin - 3.1.0 - - - org.jacoco - jacoco-maven-plugin - 0.8.10 - - - - prepare-agent - - - - report - prepare-package - - report - - - - - - org.apache.maven.plugins - maven-shade-plugin - 3.4.1 - - - package - - shade - - - true - false - - - *:* - - META-INF/**/* - - - - - - - - - - - \ No newline at end of file diff --git a/settings.gradle.kts b/settings.gradle.kts new file mode 100644 index 000000000..29522faf1 --- /dev/null +++ b/settings.gradle.kts @@ -0,0 +1,32 @@ +rootProject.name = "mobchip-parent" + +pluginManagement { + repositories { + gradlePluginPortal() + mavenCentral() + } +} + +listOf("base", "abstraction", "bukkit").forEach { + include(":mobchip-$it") + project(":mobchip-$it").projectDir = rootDir.resolve(it) +} + +listOf( + "1_13_R1", + "1_13_R2", + "1_14_R1", + "1_15_R1", + "1_16_R1", + "1_16_R2", + "1_16_R3", + "1_17_R1", + "1_18_R1", + "1_18_R2", + "1_19_R1", + "1_19_R2", + "1_19_R3" +).forEach { + include(":mobchip-$it") + project(":mobchip-$it").projectDir = rootDir.resolve("nms/$it") +} \ No newline at end of file