Added key bind for opening song selection screen

This commit is contained in:
Semmieboy YT 2022-05-31 18:11:50 +02:00
parent 44c586c25c
commit e6f7634d93
3 changed files with 20 additions and 1 deletions

View File

@ -1,17 +1,23 @@
package semmiedev.disc_jockey;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.command.v2.FabricClientCommandSource;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper;
import net.fabricmc.fabric.api.client.networking.v1.ClientLoginConnectionEvents;
import net.fabricmc.fabric.api.client.rendering.v1.HudRenderCallback;
import net.fabricmc.loader.api.FabricLoader;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.option.KeyBinding;
import net.minecraft.client.util.InputUtil;
import net.minecraft.client.world.ClientWorld;
import net.minecraft.text.MutableText;
import net.minecraft.text.Text;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.lwjgl.glfw.GLFW;
import semmiedev.disc_jockey.gui.hud.BlocksOverlay;
import semmiedev.disc_jockey.gui.screen.DiscJockeyScreen;
import java.io.File;
import java.util.ArrayList;
@ -36,6 +42,8 @@ public class Main implements ClientModInitializer {
SongLoader.loadSongs();
KeyBinding openScreenKeyBind = KeyBindingHelper.registerKeyBinding(new KeyBinding(MOD_ID+".key_bind.open_screen", InputUtil.Type.KEYSYM, GLFW.GLFW_KEY_J, "key.category."+MOD_ID));
ClientTickEvents.START_CLIENT_TICK.register(new ClientTickEvents.StartTick() {
private ClientWorld prevWorld;
@ -46,6 +54,14 @@ public class Main implements ClientModInitializer {
SONG_PLAYER.stop();
}
prevWorld = client.world;
if (openScreenKeyBind.wasPressed()) {
if (SongLoader.loadingSongs) {
client.inGameHud.getChatHud().addMessage(Text.translatable(Main.MOD_ID+".still_loading"));
} else {
client.setScreen(new DiscJockeyScreen());
}
}
}
});
ClientTickEvents.START_WORLD_TICK.register(world -> {

View File

@ -15,5 +15,7 @@
"disc_jockey.loading_done": "All songs are loaded",
"disc_jockey.song_not_found": " Song '%s' does not exist",
"disc_jockey.not_playing": "Not playing any song",
"disc_jockey.stopped_playing": "Stopped playing '%s'"
"disc_jockey.stopped_playing": "Stopped playing '%s'",
"key.category.disc_jockey": "Disc Jockey",
"disc_jockey.key_bind.open_screen": "Open song selection screen"
}

View File

@ -23,6 +23,7 @@
"fabric-lifecycle-events-v1": "*",
"fabric-networking-api-v1": "*",
"fabric-rendering-v1": "*",
"fabric-key-binding-api-v1": "*",
"minecraft": "1.19-beta.4"
}
}