Skip to content
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
1 change: 1 addition & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches:
- main
pull_request:
workflow_dispatch:
inputs:
version:
Expand Down
38 changes: 18 additions & 20 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
plugins {
id("fabric-loom") version "1.12-SNAPSHOT"
alias(libs.plugins.fabric.loom)
}

base {
archivesName = properties["archives_base_name"] as String
version = properties["mod_version"] as String
version = libs.versions.mod.version.get()
group = properties["maven_group"] as String
}

Expand All @@ -18,40 +18,38 @@ repositories {
name = "meteor-maven-snapshots"
url = uri("https://maven.meteordev.org/snapshots")
}
flatDir {
dirs("libs")
}
}

dependencies {
// Fabric
minecraft("com.mojang:minecraft:${properties["minecraft_version"] as String}")
mappings("net.fabricmc:yarn:${properties["yarn_mappings"] as String}:v2")
modImplementation("net.fabricmc:fabric-loader:${properties["loader_version"] as String}")

// Meteor - using local JAR for consistent version
modImplementation(files("libs/meteor-client-${properties["meteor_version"] as String}.jar"))
// Minecraft
minecraft(libs.minecraft)
mappings(variantOf(libs.yarn) { classifier("v2") })
modImplementation(libs.fabric.loader)

// Compile-time access to Orbit event bus (provided by Meteor at runtime)
compileOnly("meteordevelopment:orbit:0.2.4")
// Meteor Client
modImplementation(libs.meteor.client)
compileOnly(libs.orbit)

// NanoHTTPD for HTTP server and WebSocket support
modImplementation("org.nanohttpd:nanohttpd:2.3.1")!!.let { include(it) }
modImplementation("org.nanohttpd:nanohttpd-websocket:2.3.1")!!.let { include(it) }
modImplementation(libs.nanohttpd.core)
include(libs.nanohttpd.core)
modImplementation(libs.nanohttpd.websocket)
include(libs.nanohttpd.websocket)

// JSON serialization for WebSocket messages
modImplementation("com.google.code.gson:gson:2.11.0")!!.let { include(it) }
modImplementation(libs.gson)
include(libs.gson)

// Testing
testImplementation("org.junit.jupiter:junit-jupiter-api:5.10.2")
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.10.2")
testImplementation(libs.junit.api)
testRuntimeOnly(libs.junit.engine)
}

tasks {
processResources {
val propertyMap = mapOf(
"version" to project.version,
"mc_version" to project.property("minecraft_version"),
"mc_version" to libs.versions.minecraft.get(),
)

inputs.properties(propertyMap)
Expand Down
9 changes: 0 additions & 9 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,15 +1,6 @@
org.gradle.jvmargs=-Xmx4G
org.gradle.configuration-cache=false

# Fabric Properties (https://fabricmc.net/develop)
minecraft_version=1.21.10
yarn_mappings=1.21.10+build.2
loader_version=0.17.3

# Mod Properties
mod_version=0.2.0
maven_group=com.cope.meteorwebgui
archives_base_name=meteor-webgui

# Dependencies
meteor_version=1.21.10-32
44 changes: 44 additions & 0 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
[versions]
# Mod Properties
mod-version = "0.2.0"

# Minecraft
minecraft = "1.21.10"
yarn-mappings = "1.21.10+build.2"
fabric-loader = "0.17.3"
loom = "1.12-SNAPSHOT"

# Dependencies
meteor = "1.21.10-SNAPSHOT"
orbit = "0.2.4"

# WebServer and WebSocket
nanohttpd = "2.3.1"
gson = "2.11.0"

# Testing
junit = "5.10.2"

[libraries]
# Minecraft
minecraft = { module = "com.mojang:minecraft", version.ref = "minecraft" }
yarn = { module = "net.fabricmc:yarn", version.ref = "yarn-mappings" }
fabric-loader = { module = "net.fabricmc:fabric-loader", version.ref = "fabric-loader" }

# Meteor
meteor-client = { module = "meteordevelopment:meteor-client", version.ref = "meteor" }
orbit = { module = "meteordevelopment:orbit", version.ref = "orbit" }

# WebServer
nanohttpd-core = { module = "org.nanohttpd:nanohttpd", version.ref = "nanohttpd" }
nanohttpd-websocket = { module = "org.nanohttpd:nanohttpd-websocket", version.ref = "nanohttpd" }

# JSON
gson = { module = "com.google.code.gson:gson", version.ref = "gson" }

# Testing
junit-api = { module = "org.junit.jupiter:junit-jupiter-api", version.ref = "junit" }
junit-engine = { module = "org.junit.jupiter:junit-jupiter-engine", version.ref = "junit" }

[plugins]
fabric-loom = { id = "fabric-loom", version.ref = "loom" }
Binary file removed libs/meteor-client-1.21.10-32.jar
Binary file not shown.
Binary file removed libs/meteor-client-1.21.8-56.jar
Binary file not shown.