Added key bind for opening song selection screen
This commit is contained in:
parent
44c586c25c
commit
e6f7634d93
@ -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 -> {
|
||||
|
@ -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"
|
||||
}
|
@ -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"
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user