Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Fabric version 1.21.3 #4167

Open
wants to merge 3 commits into
base: v3.0
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions bukkit-helper/.settings/org.eclipse.jdt.core.prefs
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
#
#Sun Jun 16 01:19:02 CDT 2024
eclipse.preferences.version=1
org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=ignore
org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=javax.annotation.ParametersAreNonnullByDefault
org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable
org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
Expand All @@ -12,5 +13,7 @@ org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning
org.eclipse.jdt.core.compiler.problem.nullReference=warning
org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning
org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=ignore
org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=enabled
org.eclipse.jdt.core.compiler.source=1.8
32 changes: 32 additions & 0 deletions fabric-1.21.3/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# gradle

.gradle/
build/
out/
classes/

# eclipse

*.launch

# idea

.idea/
*.iml
*.ipr
*.iws

# vscode

.settings/
.vscode/
bin/
.classpath
.project

# fabric

run/

# other
*.log
76 changes: 76 additions & 0 deletions fabric-1.21.3/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
plugins {
id 'fabric-loom' version '1.8.11'
}

archivesBaseName = "Dynmap"
version = parent.version
group = parent.group

eclipse {
project {
name = "Dynmap(Fabric-1.21.3)"
}
}

sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = JavaLanguageVersion.of(21) // Need this here so eclipse task generates correctly.

configurations {
shadow
implementation.extendsFrom(shadow)
}

repositories {
mavenCentral()
maven { url 'https://oss.sonatype.org/content/repositories/snapshots' }
}

dependencies {
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}"

compileOnly group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.2'

shadow project(path: ':DynmapCore', configuration: 'shadow')

modCompileOnly "me.lucko:fabric-permissions-api:0.1-SNAPSHOT"
compileOnly 'net.luckperms:api:5.4'

//implementation 'org.xerial:sqlite-jdbc:3.30.1'
shadow group: 'org.xerial', name: 'sqlite-jdbc', version: '3.30.1'
}

loom {
accessWidenerPath = file("src/main/resources/dynmap.accesswidener")
}

processResources {
filesMatching('fabric.mod.json') {
expand "version": project.version
}
}

java {
// 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"
from {
configurations.shadow.collect { it.toString().contains("guava") ? null : it.isDirectory() ? it : zipTree(it) }
}
}

remapJar {
archiveFileName = "${archivesBaseName}-${project.version}-fabric-${project.minecraft_version}.jar"
destinationDirectory = file '../target'
}

remapJar.doLast {
task ->
ant.checksum file: task.archivePath
}
4 changes: 4 additions & 0 deletions fabric-1.21.3/gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
minecraft_version=1.21.3
yarn_mappings=1.21.3+build.1
loader_version=0.16.9
fabric_version=0.108.0+1.21.3
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package org.dynmap.fabric_1_21_3;

import net.fabricmc.api.ModInitializer;
import net.fabricmc.loader.api.FabricLoader;
import net.fabricmc.loader.api.ModContainer;
import org.dynmap.DynmapCore;
import org.dynmap.Log;

import java.io.File;
import java.net.URISyntaxException;
import java.nio.file.Path;
import java.nio.file.Paths;

public class DynmapMod implements ModInitializer {
private static final String MODID = "dynmap";
private static final ModContainer MOD_CONTAINER = FabricLoader.getInstance().getModContainer(MODID)
.orElseThrow(() -> new RuntimeException("Failed to get mod container: " + MODID));
// The instance of your mod that Fabric uses.
public static DynmapMod instance;

public static DynmapPlugin plugin;
public static File jarfile;
public static String ver;
public static boolean useforcedchunks;

@Override
public void onInitialize() {
instance = this;

Path path = MOD_CONTAINER.getRootPath();
try {
jarfile = new File(DynmapCore.class.getProtectionDomain().getCodeSource().getLocation().toURI());
} catch (URISyntaxException e) {
Log.severe("Unable to get DynmapCore jar path", e);
}

if (path.getFileSystem().provider().getScheme().equals("jar")) {
path = Paths.get(path.getFileSystem().toString());
jarfile = path.toFile();
}

ver = MOD_CONTAINER.getMetadata().getVersion().getFriendlyString();

Log.setLogger(new FabricLogger());
org.dynmap.modsupport.ModSupportImpl.init();

// Initialize the plugin, we will enable it fully when the server starts.
plugin = new DynmapPlugin();
}
}
Loading