Skip to content

Commit da2af45

Browse files
Version 1.3.8.4
1 parent 2d13dd7 commit da2af45

File tree

20 files changed

+316
-195
lines changed

20 files changed

+316
-195
lines changed

api/api/api.api

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -424,13 +424,13 @@ public abstract interface class gg/essential/api/utils/GuiUtil {
424424
public abstract fun openScreen (Lnet/minecraft/client/gui/screens/Screen;)V
425425
@1.17.1-forge,1.18.2-forge,1.19.2-forge,1.19.3-forge,1.19.4-forge,1.20.1-forge,1.20.2-forge,1.20.4-forge,1.20.4-neoforge,1.20.6-forge,1.20.6-neoforge,1.21.1-forge,1.21.1-neoforge,1.21.3-forge,1.21.3-neoforge,1.21.4-forge,1.21.4-neoforge,1.21.5-forge,1.21.5-neoforge
426426
public abstract fun openedScreen ()Lnet/minecraft/client/gui/screens/Screen;
427-
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric
427+
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric,1.21.7-fabric
428428
public static fun getOpenedScreen ()Lnet/minecraft/client/gui/screen/Screen;
429-
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric
429+
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric,1.21.7-fabric
430430
public static fun open (Lnet/minecraft/client/gui/screen/Screen;)V
431-
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric
431+
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric,1.21.7-fabric
432432
public abstract fun openScreen (Lnet/minecraft/client/gui/screen/Screen;)V
433-
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric
433+
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric,1.21.7-fabric
434434
public abstract fun openedScreen ()Lnet/minecraft/client/gui/screen/Screen;
435435
@1.12.2-forge,1.8.9-forge
436436
public static fun getOpenedScreen ()Lnet/minecraft/client/gui/GuiScreen;
@@ -447,9 +447,9 @@ public final class gg/essential/api/utils/GuiUtil$Companion {
447447
public final fun getOpenedScreen ()Lnet/minecraft/client/gui/screens/Screen;
448448
@1.17.1-forge,1.18.2-forge,1.19.2-forge,1.19.3-forge,1.19.4-forge,1.20.1-forge,1.20.2-forge,1.20.4-forge,1.20.4-neoforge,1.20.6-forge,1.20.6-neoforge,1.21.1-forge,1.21.1-neoforge,1.21.3-forge,1.21.3-neoforge,1.21.4-forge,1.21.4-neoforge,1.21.5-forge,1.21.5-neoforge
449449
public final fun open (Lnet/minecraft/client/gui/screens/Screen;)V
450-
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric
450+
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric,1.21.7-fabric
451451
public final fun getOpenedScreen ()Lnet/minecraft/client/gui/screen/Screen;
452-
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric
452+
@1.16.2-fabric,1.16.2-forge,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric,1.21.7-fabric
453453
public final fun open (Lnet/minecraft/client/gui/screen/Screen;)V
454454
@1.12.2-forge,1.8.9-forge
455455
public final fun getOpenedScreen ()Lnet/minecraft/client/gui/GuiScreen;
@@ -513,7 +513,7 @@ public final class gg/essential/api/utils/KotlinAdapter : net/minecraftforge/fml
513513
public abstract interface class gg/essential/api/utils/MinecraftUtils {
514514
@1.17.1-forge,1.18.2-forge,1.19.2-forge,1.19.3-forge,1.19.4-forge,1.20.1-forge,1.20.2-forge,1.20.4-forge,1.20.4-neoforge,1.20.6-forge,1.20.6-neoforge,1.21.1-forge,1.21.1-neoforge,1.21.3-forge,1.21.3-neoforge,1.21.4-forge,1.21.4-neoforge,1.21.5-forge,1.21.5-neoforge
515515
public abstract fun getResourceImage (Lnet/minecraft/resources/ResourceLocation;)Ljava/awt/image/BufferedImage;
516-
@1.16.2-fabric,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric
516+
@1.16.2-fabric,1.17.1-fabric,1.18.1-fabric,1.18.2-fabric,1.19-fabric,1.19.2-fabric,1.19.3-fabric,1.19.4-fabric,1.20-fabric,1.20.1-fabric,1.20.2-fabric,1.20.4-fabric,1.20.6-fabric,1.21.1-fabric,1.21.3-fabric,1.21.4-fabric,1.21.5-fabric,1.21.6-fabric,1.21.7-fabric
517517
public abstract fun getResourceImage (Lnet/minecraft/util/Identifier;)Ljava/awt/image/BufferedImage;
518518
@1.12.2-forge,1.16.2-forge,1.8.9-forge
519519
public abstract fun getResourceImage (Lnet/minecraft/util/ResourceLocation;)Ljava/awt/image/BufferedImage;

build-logic/src/main/kotlin/essential/preprocessor.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ fun Project.configurePreprocessTree(versions: File) {
2020
configure<RootPreprocessExtension> {
2121
strictExtraMappings.set(true)
2222

23+
val fabric12107 = createNode("1.21.7-fabric", 12107, "yarn")
2324
val fabric12106 = createNode("1.21.6-fabric", 12106, "yarn")
2425
val neoForge12105 = createNode("1.21.5-neoforge", 12105, "srg")
2526
val forge12105 = createNode("1.21.5-forge", 12105, "srg")
@@ -61,6 +62,7 @@ fun Project.configurePreprocessTree(versions: File) {
6162
val forge11202 = createNode("1.12.2-forge", 11202, "srg")
6263
val forge10809 = createNode("1.8.9-forge", 10809, "srg")
6364

65+
fabric12107.link(fabric12106)
6466
fabric12106.link(fabric12105, versions.resolve("1.21.6-1.21.5.txt"))
6567
neoForge12105.link(fabric12105)
6668
forge12105.link(fabric12105)

build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ dependencies {
130130
12104 -> "0.110.0+1.21.4"
131131
12105 -> "0.119.0+1.21.5"
132132
12106 -> "0.126.0+1.21.6"
133+
12107 -> "0.128.1+1.21.7"
133134
else -> error("No fabric API version configured!")
134135
}
135136
include(modImplementation(fabricApi.module("fabric-api-base", fapiVersion))!!)

changelog/release-1.3.8.4.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Title: Bug Patch
2+
Summary: Minor bug fixes
3+
4+
## New Versions
5+
- Added support for 1.21.7 Fabric
6+
7+
## Bug Fixes
8+
- Fixed bold text rendering incorrectly on Minecraft 1.21.6+

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ minecraftVersion=11202
1010
# TODO remove once upgrading to Loom 1.10
1111
# fabric-api 1.21.5 was built with Loom 1.10, seems to work well enough in dev with our current 1.7 though
1212
loom.ignoreDependencyLoomVersionValidation=true
13-
version=1.3.8.3
13+
version=1.3.8.4

gradle/libs.versions.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[versions]
2-
universalcraft = "412"
2+
universalcraft = "419"
33
elementa = "708"
44
vigilance = "306"
55
mixinextras = "0.4.0"

settings.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ listOf(
117117
"1.21.5-forge",
118118
"1.21.5-neoforge",
119119
"1.21.6-fabric",
120+
"1.21.7-fabric",
120121
).forEach { version ->
121122
include(":$version")
122123
project(":$version").apply {

src/main/java/gg/essential/network/connectionmanager/telemetry/TelemetryManager.java

Lines changed: 36 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
//$$ import oshi.hardware.CentralProcessor;
4545
//#endif
4646

47+
import java.io.IOException;
4748
import java.nio.charset.StandardCharsets;
4849
import java.nio.file.Files;
4950
import java.nio.file.Path;
@@ -160,6 +161,7 @@ private void init(InitializationEvent event) {
160161
put("lang", UMinecraft.getMinecraft().gameSettings.language);
161162
}}));
162163
queueInstallerTelemetryPacket();
164+
queueIntegrationModTelemetryPacket();
163165
}
164166

165167
/**
@@ -257,15 +259,9 @@ private void queueInstallerTelemetryPacket() {
257259
}
258260
String pathChecksum = pathChecksumBuilder.toString();
259261

260-
// Grab the raw JSON object from the telemetry file
262+
// Grab the raw JSON data from the telemetry file
261263
// This is to allow installer to add telemetry fields without having to update the mod
262-
String rawFile = new String(Files.readAllBytes(installerMetadataPath), StandardCharsets.UTF_8);
263-
JsonObject telemetryObject = new Gson().fromJson(rawFile, JsonObject.class);
264-
// Convert to map
265-
HashMap<String, Object> telemetryMap = new HashMap<>();
266-
for (Map.Entry<String, JsonElement> entry : telemetryObject.entrySet()) {
267-
telemetryMap.put(entry.getKey(), entry.getValue());
268-
}
264+
HashMap<String, Object> telemetryMap = getHashMapFromJsonFile(installerMetadataPath);
269265
// Check if the game folder has been moved
270266
boolean hasBeenMoved = false;
271267
Object installPathChecksum = telemetryMap.get("installPathChecksum");
@@ -285,4 +281,36 @@ private void queueInstallerTelemetryPacket() {
285281
});
286282
}
287283

284+
private void queueIntegrationModTelemetryPacket() {
285+
// We go async, since we are reading a file
286+
Multithreading.runAsync(() -> {
287+
try {
288+
Path integrationModMetadataPath = Essential.getInstance().getBaseDir().toPath().resolve("partner-integration-mod-metadata.json");
289+
290+
if (Files.notExists(integrationModMetadataPath))
291+
return;
292+
293+
// Send telemetry file as-is
294+
HashMap<String, Object> telemetryMap = getHashMapFromJsonFile(integrationModMetadataPath);
295+
// Then queue the packet on the main thread again
296+
Multithreading.scheduleOnMainThread(() -> enqueue(new ClientTelemetryPacket("PARTNER_INTEGRATION_MOD", telemetryMap)), 0, TimeUnit.SECONDS);
297+
// Delete file after enqueueing, to ensure we only send this packet once.
298+
Files.deleteIfExists(integrationModMetadataPath);
299+
} catch (Exception e) {
300+
Essential.logger.warn("Error when trying to parse partner integration mod telemetry!", e);
301+
}
302+
});
303+
}
304+
305+
private HashMap<String, Object> getHashMapFromJsonFile(Path path) throws IOException {
306+
String rawFile = new String(Files.readAllBytes(path), StandardCharsets.UTF_8);
307+
JsonObject telemetryObject = new Gson().fromJson(rawFile, JsonObject.class);
308+
// Convert to map
309+
HashMap<String, Object> telemetryMap = new HashMap<>();
310+
for (Map.Entry<String, JsonElement> entry : telemetryObject.entrySet()) {
311+
telemetryMap.put(entry.getKey(), entry.getValue());
312+
}
313+
return telemetryMap;
314+
}
315+
288316
}

src/main/java/gg/essential/util/BuildInfo.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,8 @@ public class BuildInfo {
5353
//$$ 12105;
5454
//#elseif MC==12106
5555
//$$ 12106;
56+
//#elseif MC==12107
57+
//$$ 12107;
5658
//#else
5759
//$$ ADD_CASE_FOR_NEW_VERSION_TO_ABOVE_LIST;
5860
//#endif

src/main/kotlin/gg/essential/gui/menu/LeftSideBar.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ import gg.essential.vigilance.utils.onLeftClick
4646
import gg.essential.gui.elementa.state.v2.State as StateV2
4747

4848
class LeftSideBar(
49-
private val topButton: UIContainer,
49+
private val topButtonAndMultiplayer: UIContainer,
5050
private val bottomButton: UIContainer,
5151
menuVisible: StateV2<Boolean>,
5252
collapsed: StateV2<Boolean>,
@@ -139,13 +139,13 @@ class LeftSideBar(
139139
bindConstraints(isCompact) { compact ->
140140
if (compact) {
141141
x = if (EssentialConfig.closerMenuSidebar) {
142-
basicXConstraint { (topButton.getLeft() / 2) - (it.getWidth() / 2) }.coerceIn(
143-
basicXConstraint { topButton.getLeft() - (player.getWidth() / 2) - (wardrobeButton.getWidth() / 2) - PauseMenuDisplay.maxSpaceBetweenSides },
144-
17.pixels(alignOutside = true) boundTo topButton,
142+
basicXConstraint { (topButtonAndMultiplayer.getLeft() / 2) - (it.getWidth() / 2) }.coerceIn(
143+
basicXConstraint { topButtonAndMultiplayer.getLeft() - (player.getWidth() / 2) - (wardrobeButton.getWidth() / 2) - PauseMenuDisplay.maxSpaceBetweenSides },
144+
17.pixels(alignOutside = true) boundTo topButtonAndMultiplayer,
145145
)
146146
} else {
147-
basicXConstraint { (topButton.getLeft() / 2) - (it.getWidth() / 2) }
148-
.coerceAtMost(17.pixels(alignOutside = true) boundTo topButton)
147+
basicXConstraint { (topButtonAndMultiplayer.getLeft() / 2) - (it.getWidth() / 2) }
148+
.coerceAtMost(17.pixels(alignOutside = true) boundTo topButtonAndMultiplayer)
149149
}
150150
y = 0.pixels boundTo player
151151
width = 100.percent boundTo player

0 commit comments

Comments
 (0)