56 lines
1.9 KiB
Java
56 lines
1.9 KiB
Java
package de.fullrisk.citrusDev.client;
|
|
|
|
|
|
import de.fullrisk.citrusDev.Config;
|
|
import de.fullrisk.citrusDev.UI.Module_FPS;
|
|
import de.fullrisk.citrusDev.UI.MyScreen;
|
|
import de.fullrisk.citrusDev.UI.OverviewScreen;
|
|
import io.wispforest.owo.ui.hud.Hud;
|
|
import net.fabricmc.api.ClientModInitializer;
|
|
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
|
|
import net.fabricmc.fabric.api.client.keymapping.v1.KeyMappingHelper;
|
|
import net.minecraft.client.KeyMapping;
|
|
import net.minecraft.resources.Identifier;
|
|
import org.lwjgl.glfw.GLFW;
|
|
|
|
public class CitrusDevClient implements ClientModInitializer {
|
|
|
|
private static KeyMapping openScreenKey;
|
|
private static KeyMapping openOverviewKey;
|
|
|
|
@Override
|
|
public void onInitializeClient() {
|
|
Module_FPS.register();
|
|
|
|
KeyMapping.Category category = KeyMapping.Category.register(
|
|
Identifier.fromNamespaceAndPath("citrus-dev", "general"));
|
|
|
|
openScreenKey = KeyMappingHelper.registerKeyMapping(new KeyMapping(
|
|
"key.citrus-dev.open_screen",
|
|
GLFW.GLFW_KEY_G,
|
|
category
|
|
));
|
|
openOverviewKey = KeyMappingHelper.registerKeyMapping(new KeyMapping(
|
|
"key.citrus-dev.open_ui",
|
|
GLFW.GLFW_KEY_RIGHT_SHIFT,
|
|
category
|
|
));
|
|
|
|
ClientTickEvents.END_CLIENT_TICK.register(client -> {
|
|
if (client.player != null && !client.isPaused()) {
|
|
PlaytimeTracker.tick();
|
|
}
|
|
|
|
Module_FPS.tick(); // update every tick, unconditionally
|
|
while (openScreenKey.consumeClick()) {
|
|
client.setScreen(new MyScreen(null)); // always general tab
|
|
}
|
|
|
|
while (openOverviewKey.consumeClick()) {
|
|
String lastModule = Config.get().lastModule;
|
|
client.setScreen(new MyScreen(lastModule)); // switch no longer even needed
|
|
}
|
|
|
|
});
|
|
}
|
|
} |