Skip to content
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
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# AutoReconnect [1.20.1][Fabric][Client]
# AutoReconnect [1.20.4][Fabric][Client]

## Description

Expand Down
11 changes: 6 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
plugins {
id 'fabric-loom' version '1.3-SNAPSHOT'
id 'fabric-loom' version '1.6-SNAPSHOT'
}

// Minecraft 1.18 (1.18-pre2) upwards uses Java 17.
var java_version = 17
// Minecraft 1.20.5 upwards uses Java 21.
var java_version = 21

version = project.mod_version
//noinspection GroovyUnusedAssignment
archivesBaseName = project.mod_id

repositories {
Expand Down Expand Up @@ -65,8 +66,8 @@ java {
// If you remove this line, sources will not be generated.
withSourcesJar()

sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
sourceCompatibility = JavaVersion.VERSION_21
targetCompatibility = JavaVersion.VERSION_21
}

jar {
Expand Down
14 changes: 7 additions & 7 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,16 @@ org.gradle.jvmargs=-Xmx1G

# Fabric Properties
# check these on https://fabricmc.net/develop
minecraft_version=1.20.1
yarn_mappings=1.20.1+build.9
loader_version=0.14.21
minecraft_version=1.20.5
yarn_mappings=1.20.5+build.1
loader_version=0.15.10

# Mod Properties
mod_id = autoreconnect
mod_name = AutoReconnect
mod_version = 2.3.0-dev
mod_version = 2.4.0-dev

# Dependencies
fabric_version=0.85.0+1.20.1
modmenu_version=7.0.1
clothconfig_version=11.0.99
fabric_version=0.97.5+1.20.5
modmenu_version=10.0.0-beta.1
clothconfig_version=14.0.126
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Thu Feb 02 15:26:43 IST 2023
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
7 changes: 4 additions & 3 deletions src/main/java/autoreconnect/mixin/ConnectScreenMixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@
import autoreconnect.AutoReconnect;
import autoreconnect.reconnect.MultiplayerReconnectStrategy;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.gui.screen.ConnectScreen;
import net.minecraft.client.gui.screen.multiplayer.ConnectScreen;
import net.minecraft.client.network.CookieStorage;
import net.minecraft.client.network.ServerAddress;
import net.minecraft.client.network.ServerInfo;
import org.spongepowered.asm.mixin.Mixin;
Expand All @@ -13,8 +14,8 @@

@Mixin(ConnectScreen.class)
public class ConnectScreenMixin {
@Inject(at = @At("HEAD"), method = "connect(Lnet/minecraft/client/MinecraftClient;Lnet/minecraft/client/network/ServerAddress;Lnet/minecraft/client/network/ServerInfo;)V")
private void connect(MinecraftClient client, ServerAddress address, ServerInfo serverInfo, CallbackInfo info) {
@Inject(at = @At("HEAD"), method = "connect(Lnet/minecraft/client/MinecraftClient;Lnet/minecraft/client/network/ServerAddress;Lnet/minecraft/client/network/ServerInfo;Lnet/minecraft/client/network/CookieStorage;)V")
private void connect(MinecraftClient client, ServerAddress address, ServerInfo serverInfo, CookieStorage cookieStorage, CallbackInfo info) {
if (serverInfo == null) return;
AutoReconnect.getInstance().setReconnectHandler(new MultiplayerReconnectStrategy(serverInfo));
}
Expand Down
3 changes: 2 additions & 1 deletion src/main/java/autoreconnect/mixin/MinecraftClientMixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@ public class MinecraftClientMixin {
public Screen currentScreen;

@Inject(method = "startIntegratedServer", at = @At("HEAD"))
private void startIntegratedServer(String levelName, LevelStorage.Session session, ResourcePackManager dataPackManager, SaveLoader saveLoader, boolean newWorld, CallbackInfo info) {
private void startIntegratedServer(LevelStorage.Session session, ResourcePackManager dataPackManager, SaveLoader saveLoader, boolean newWorld, CallbackInfo ci) {
var levelName = saveLoader.saveProperties().getLevelName();
AutoReconnect.getInstance().setReconnectHandler(new SingleplayerReconnectStrategy(levelName));
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package autoreconnect.reconnect;

import net.minecraft.client.MinecraftClient;
import net.minecraft.client.gui.screen.ConnectScreen;
import net.minecraft.client.gui.screen.multiplayer.ConnectScreen;
import net.minecraft.client.gui.screen.TitleScreen;
import net.minecraft.client.gui.screen.multiplayer.MultiplayerScreen;
import net.minecraft.client.network.ServerAddress;
Expand Down Expand Up @@ -29,6 +29,7 @@ public void reconnect() {
MinecraftClient.getInstance(),
ServerAddress.parse(serverInfo.address),
serverInfo,
false);
false,
null);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,7 @@
import net.minecraft.client.realms.RealmsClient;
import net.minecraft.client.realms.dto.RealmsServer;
import net.minecraft.client.realms.gui.screen.RealmsLongRunningMcoTaskScreen;
import net.minecraft.client.realms.gui.screen.RealmsMainScreen;
import net.minecraft.client.realms.task.RealmsGetServerDetailsTask;

import java.util.concurrent.locks.ReentrantLock;
import net.minecraft.client.realms.task.RealmsPrepareConnectionTask;

public class RealmsReconnectStrategy extends ReconnectStrategy {
private final RealmsServer realmsServer;
Expand All @@ -28,7 +25,7 @@ public String getName() {
@Override
public void reconnect() {
TitleScreen titleScreen = new TitleScreen();
RealmsGetServerDetailsTask realmsGetServerDetailsTask = new RealmsGetServerDetailsTask(new RealmsMainScreen(titleScreen), titleScreen, realmsServer, new ReentrantLock());
MinecraftClient.getInstance().setScreen(new RealmsLongRunningMcoTaskScreen(titleScreen, realmsGetServerDetailsTask));
RealmsPrepareConnectionTask realmsPrepareConnectionTask = new RealmsPrepareConnectionTask(titleScreen, realmsServer);
MinecraftClient.getInstance().setScreen(new RealmsLongRunningMcoTaskScreen(titleScreen, realmsPrepareConnectionTask));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,6 @@ public void reconnect() {
MinecraftClient client = MinecraftClient.getInstance();
if (!client.getLevelStorage().levelExists(getName())) return;
client.setScreenAndRender(new MessageScreen(Text.translatable("selectWorld.data_read")));
client.createIntegratedServerLoader().start(new TitleScreen(), getName());
client.createIntegratedServerLoader().start(getName(), () -> client.setScreen(new TitleScreen()));
}
}