Improved separation
This commit is contained in:
+1
-1
Submodule common updated: f139ff5bd3...2e72fc5d6b
+55
-7
@@ -2,27 +2,32 @@ package org.saturnclient.impl.mixins;
|
|||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||||
import org.saturnclient.common.ref.game.MinecraftClientRef;
|
import org.saturnclient.common.ref.game.MinecraftClientRef;
|
||||||
import org.saturnclient.common.ref.render.WindowRef;
|
import org.saturnclient.common.ref.render.WindowRef;
|
||||||
import org.saturnclient.saturnclient.SaturnClient;
|
|
||||||
import org.saturnclient.ui.SaturnScreen;
|
import org.saturnclient.ui.SaturnScreen;
|
||||||
import org.saturnclient.ui.SaturnScreenFabric;
|
import org.saturnclient.ui.SaturnScreenFabric;
|
||||||
import org.saturnclient.ui.screens.TitleMenu;
|
import org.saturnclient.ui.screens.TitleMenu;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.Shadow;
|
import org.spongepowered.asm.mixin.Shadow;
|
||||||
|
|
||||||
|
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
|
||||||
import net.minecraft.client.MinecraftClient;
|
import net.minecraft.client.MinecraftClient;
|
||||||
|
import net.minecraft.client.gui.screen.Screen;
|
||||||
import net.minecraft.client.gui.screen.multiplayer.MultiplayerScreen;
|
import net.minecraft.client.gui.screen.multiplayer.MultiplayerScreen;
|
||||||
import net.minecraft.client.gui.screen.option.OptionsScreen;
|
import net.minecraft.client.gui.screen.option.OptionsScreen;
|
||||||
import net.minecraft.client.gui.screen.world.SelectWorldScreen;
|
import net.minecraft.client.gui.screen.world.SelectWorldScreen;
|
||||||
|
import net.minecraft.client.option.GameOptions;
|
||||||
|
import net.minecraft.client.session.Session;
|
||||||
import net.minecraft.client.util.Window;
|
import net.minecraft.client.util.Window;
|
||||||
import net.minecraft.resource.ReloadableResourceManagerImpl;
|
import net.minecraft.resource.ReloadableResourceManagerImpl;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
|
|
||||||
@Mixin(MinecraftClient.class)
|
@Mixin(MinecraftClient.class)
|
||||||
public class MinecraftClientMixin implements MinecraftClientRef {
|
public abstract class MinecraftClientMixin implements MinecraftClientRef {
|
||||||
@Shadow
|
@Shadow
|
||||||
public File runDirectory;
|
public File runDirectory;
|
||||||
|
|
||||||
@@ -30,7 +35,20 @@ public class MinecraftClientMixin implements MinecraftClientRef {
|
|||||||
private Window window;
|
private Window window;
|
||||||
|
|
||||||
@Shadow
|
@Shadow
|
||||||
public ReloadableResourceManagerImpl resourceManager;
|
private ReloadableResourceManagerImpl resourceManager;
|
||||||
|
|
||||||
|
@Shadow
|
||||||
|
public GameOptions options;
|
||||||
|
|
||||||
|
@Shadow
|
||||||
|
private Session session;
|
||||||
|
|
||||||
|
@Shadow
|
||||||
|
public abstract void setScreen(@Nullable Screen screen);
|
||||||
|
|
||||||
|
@Shadow
|
||||||
|
@Override
|
||||||
|
public abstract void scheduleStop();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public File getRunDirectory() {
|
public File getRunDirectory() {
|
||||||
@@ -53,7 +71,7 @@ public class MinecraftClientMixin implements MinecraftClientRef {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setScreen(SaturnScreen screen) {
|
public void setScreen(SaturnScreen screen) {
|
||||||
SaturnClient.client.setScreen(new SaturnScreenFabric(screen));
|
this.setScreen(new SaturnScreenFabric(screen));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -62,16 +80,46 @@ public class MinecraftClientMixin implements MinecraftClientRef {
|
|||||||
|
|
||||||
switch (screen) {
|
switch (screen) {
|
||||||
case SelectWorld:
|
case SelectWorld:
|
||||||
SaturnClient.client.setScreen(new SelectWorldScreen(exitTarget));
|
this.setScreen(new SelectWorldScreen(exitTarget));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Multiplayer:
|
case Multiplayer:
|
||||||
SaturnClient.client.setScreen(new MultiplayerScreen(exitTarget));
|
this.setScreen(new MultiplayerScreen(exitTarget));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Options:
|
case Options:
|
||||||
SaturnClient.client.setScreen(new OptionsScreen(exitTarget, SaturnClient.client.options));
|
this.setScreen(new OptionsScreen(exitTarget, this.options));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getAccessToken() {
|
||||||
|
if (session == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.session.getAccessToken();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public UUID getUuid() {
|
||||||
|
if (session == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return this.session.getUuidOrNull();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getUsername() {
|
||||||
|
if (session == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return this.session.getUsername();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClientStopping(Runnable handler) {
|
||||||
|
ClientLifecycleEvents.CLIENT_STOPPING.register(_o -> handler.run());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ import org.saturnclient.saturnclient.SaturnClient;
|
|||||||
import dev.kosmx.playerAnim.api.layered.AnimationStack;
|
import dev.kosmx.playerAnim.api.layered.AnimationStack;
|
||||||
import dev.kosmx.playerAnim.minecraftApi.PlayerAnimationAccess;
|
import dev.kosmx.playerAnim.minecraftApi.PlayerAnimationAccess;
|
||||||
import dev.kosmx.playerAnim.minecraftApi.PlayerAnimationRegistry;
|
import dev.kosmx.playerAnim.minecraftApi.PlayerAnimationRegistry;
|
||||||
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
|
|
||||||
import net.minecraft.client.network.AbstractClientPlayerEntity;
|
import net.minecraft.client.network.AbstractClientPlayerEntity;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
|
|
||||||
@@ -51,38 +50,6 @@ public class SaturnProviderImpl implements SaturnProvider {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getAccessToken() {
|
|
||||||
var session = SaturnClient.client.getSession();
|
|
||||||
if (session == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
return session.getAccessToken();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public UUID getUuid() {
|
|
||||||
var session = SaturnClient.client.getSession();
|
|
||||||
if (session == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
return session.getUuidOrNull();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getUsername() {
|
|
||||||
var session = SaturnClient.client.getSession();
|
|
||||||
if (session == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
return session.getUsername();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onClientStopping(Runnable handler) {
|
|
||||||
ClientLifecycleEvents.CLIENT_STOPPING.register(_o -> handler.run());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void logInfo(String message) {
|
public void logInfo(String message) {
|
||||||
SaturnClient.LOGGER.info(message);
|
SaturnClient.LOGGER.info(message);
|
||||||
@@ -98,11 +65,6 @@ public class SaturnProviderImpl implements SaturnProvider {
|
|||||||
SaturnClient.LOGGER.error(message, throwable);
|
SaturnClient.LOGGER.error(message, throwable);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void stop() {
|
|
||||||
SaturnClient.client.scheduleStop();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void registerBufferedImageTexture(IdentifierRef i, BufferedImage bi) {
|
public void registerBufferedImageTexture(IdentifierRef i, BufferedImage bi) {
|
||||||
IdentifierUtils.registerBufferedImageTextureFast((Identifier) (Object) i, bi);
|
IdentifierUtils.registerBufferedImageTextureFast((Identifier) (Object) i, bi);
|
||||||
|
|||||||
Reference in New Issue
Block a user