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

Port to 1.21 (rc.1) for fabric #4118

Merged
merged 1 commit into from
Jun 15, 2024
Merged
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
32 changes: 32 additions & 0 deletions fabric-1.21/.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
73 changes: 73 additions & 0 deletions fabric-1.21/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
plugins {
id 'fabric-loom' version '1.6.11'
}

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

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

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'
}

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/gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
minecraft_version=1.21
yarn_mappings=1.21+build.1
loader_version=0.15.11
fabric_version=0.100.1+1.21
50 changes: 50 additions & 0 deletions fabric-1.21/src/main/java/org/dynmap/fabric_1_21/DynmapMod.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
package org.dynmap.fabric_1_21;

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