From cac23d12a1e716cd729f7adeb214d3d695305af2 Mon Sep 17 00:00:00 2001 From: Motschen Date: Tue, 3 May 2022 20:29:29 +0200 Subject: [PATCH] MidnightControls 0.3.0 - Automatic mapping downloading - Automatic downloading of mappings from https://github.com/gabomdq/SDL_GameControllerDB - Change some default settings - Fix OkZoomer compat by @akemin-dayo - German translations (by myself) - Add contributors to fabric.mod.json - Fix some issues --- README.md | 2 +- gradle.properties | 4 +- .../MidnightControlsConstants.java | 2 +- .../client/MidnightControlsClient.java | 2 +- .../client/MidnightControlsConfig.java | 10 +- .../client/MidnightInput.java | 3 +- .../client/controller/Controller.java | 19 ++- .../client/gui/MidnightControlsHud.java | 12 +- .../gui/MidnightControlsSettingsScreen.java | 5 +- .../assets/midnightcontrols/lang/de_de.json | 148 ++++++++++++++++++ .../assets/midnightcontrols/lang/en_us.json | 5 +- .../assets/midnightcontrols/lang/es_mx.json | 2 - .../assets/midnightcontrols/lang/fr_ca.json | 2 - .../assets/midnightcontrols/lang/fr_fr.json | 2 - .../assets/midnightcontrols/lang/tr_tr.json | 3 - .../assets/midnightcontrols/lang/zh_cn.json | 2 - src/main/resources/fabric.mod.json | 11 +- 17 files changed, 191 insertions(+), 43 deletions(-) create mode 100644 src/main/resources/assets/midnightcontrols/lang/de_de.json diff --git a/README.md b/README.md index 794771e..c6bdf21 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ [![GitHub license](https://img.shields.io/github/license/TeamMidnightDust/MidnightControls?style=flat-square)](https://raw.githubusercontent.com/TeamMidnightDust/MidnightControls/master/LICENSE) ![Environment: Client](https://img.shields.io/badge/environment-client-1976d2?style=flat-square) [![Mod loader: Quilt/Fabric]][quilt] -![Version](https://img.shields.io/github/v/tag/TeamMidnightDust/MidnightControls?label=version&style=flat-square) +[![Version](https://img.shields.io/github/v/tag/TeamMidnightDust/MidnightControls?label=version&style=flat-square)](https://github.com/TeamMidnightDust/MidnightControls/releases) [![CurseForge](http://cf.way2muchnoise.eu/title/354231.svg)](https://www.curseforge.com/minecraft/mc-mods/midnightcontrols) diff --git a/gradle.properties b/gradle.properties index 53297a3..18c8084 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,10 +8,10 @@ yarn_mappings=1.18.1+build.22 loader_version=0.13.3 # Mod Properties -mod_version = 0.2.0 +mod_version = 0.3.0 maven_group = eu.midnightdust archives_base_name = midnightcontrols -modrinth_id=W1D3UXEc +modrinth_id=bXX9h73M # Dependencies # currently not on the main fabric site, check on the maven: https://maven.fabricmc.net/net/fabricmc/fabric-api/fabric-api diff --git a/src/main/java/eu/midnightdust/midnightcontrols/MidnightControlsConstants.java b/src/main/java/eu/midnightdust/midnightcontrols/MidnightControlsConstants.java index 0593e7e..9491bc4 100644 --- a/src/main/java/eu/midnightdust/midnightcontrols/MidnightControlsConstants.java +++ b/src/main/java/eu/midnightdust/midnightcontrols/MidnightControlsConstants.java @@ -23,5 +23,5 @@ public class MidnightControlsConstants { public static final String NAMESPACE = "midnightcontrols"; public static final Identifier CONTROLS_MODE_CHANNEL = new Identifier(NAMESPACE, "controls_mode"); public static final Identifier FEATURE_CHANNEL = new Identifier(NAMESPACE, "feature"); - public static final Identifier HELLO_CHANNEL = new Identifier(NAMESPACE, "hello"); + public static final Identifier HELLO_CHANNEL = new Identifier("lambdacontrols", "hello"); } diff --git a/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsClient.java b/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsClient.java index 6ea4926..6cdf001 100644 --- a/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsClient.java +++ b/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsClient.java @@ -64,7 +64,7 @@ public class MidnightControlsClient extends MidnightControls implements ClientMo public static final Identifier CONTROLLER_EXPANDED = new Identifier(MidnightControlsConstants.NAMESPACE, "textures/gui/controller_expanded.png"); public static final Identifier CONTROLLER_AXIS = new Identifier(MidnightControlsConstants.NAMESPACE, "textures/gui/controller_axis.png"); public static final Identifier CURSOR_TEXTURE = new Identifier(MidnightControlsConstants.NAMESPACE, "textures/gui/cursor.png"); - public final static File MAPPINGS_FILE = new File("config/gamecontrollerdb.txt"); + public final static File MAPPINGS_FILE = new File("config/gamecontrollercustommappings.txt"); public final MidnightInput input = new MidnightInput(); public final MidnightRing ring = new MidnightRing(this); public final MidnightReacharound reacharound = new MidnightReacharound(); diff --git a/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsConfig.java b/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsConfig.java index bd68566..cd8bbff 100644 --- a/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsConfig.java +++ b/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightControlsConfig.java @@ -31,11 +31,10 @@ import static org.lwjgl.glfw.GLFW.GLFW_GAMEPAD_AXIS_LEFT_Y; public class MidnightControlsConfig extends MidnightConfig { // General @Entry public static ControlsMode controlsMode = ControlsMode.DEFAULT; - @Entry public static boolean autoSwitchMode = false; + @Entry public static boolean autoSwitchMode = true; @Entry public static boolean debug = false; // HUD @Entry public static boolean hudEnable = true; - @Entry public static boolean hudAlwaysShow = true; // Enabled by default so that users migrating from LambdaControls will have a consistent experience. @Entry public static HudSide hudSide = HudSide.LEFT; // Gameplay @Entry public static boolean analogMovement = true; @@ -58,18 +57,11 @@ public class MidnightControlsConfig extends MidnightConfig { @Entry public static boolean unfocusedInput = false; @Entry public static boolean virtualMouse = false; @Entry public static VirtualMouseSkin virtualMouseSkin = VirtualMouseSkin.DEFAULT_LIGHT; -// @Entry public static List ringPages = new ArrayList(); -// @Entry public static double maxAnalog1 = 1; -// @Entry public static double maxAnalog2 = 1; -// @Entry public static double maxAnalog3 = 1; -// @Entry public static double maxAnalog4 = 1; @Entry public static Object controllerID = 0; @Entry public static Object secondControllerID = -1; @Entry public static Map BINDINGS = Map.of(); private static final Pattern BUTTON_BINDING_PATTERN = Pattern.compile("(-?\\d+)\\+?"); - // Gameplay. - // Controller settings @Entry public static double[] maxAnalogValues = new double[]{DEFAULT_MAX_VALUE, DEFAULT_MAX_VALUE, DEFAULT_MAX_VALUE, DEFAULT_MAX_VALUE}; /** diff --git a/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightInput.java b/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightInput.java index 35ada2a..0fc2380 100644 --- a/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightInput.java +++ b/src/main/java/eu/midnightdust/midnightcontrols/client/MidnightInput.java @@ -31,6 +31,7 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.Element; import net.minecraft.client.gui.ParentElement; import net.minecraft.client.gui.screen.Screen; +import net.minecraft.client.gui.screen.TitleScreen; import net.minecraft.client.gui.screen.advancement.AdvancementTab; import net.minecraft.client.gui.screen.advancement.AdvancementsScreen; import net.minecraft.client.gui.screen.ingame.CreativeInventoryScreen; @@ -312,7 +313,7 @@ public class MidnightInput { } if (button == GLFW.GLFW_GAMEPAD_BUTTON_B) { - if (client.currentScreen != null) { + if (client.currentScreen != null && client.currentScreen.getClass() != TitleScreen.class) { if (!MidnightControlsCompat.handleMenuBack(client, client.currentScreen)) if (!this.tryGoBack(client.currentScreen)) client.currentScreen.onClose(); diff --git a/src/main/java/eu/midnightdust/midnightcontrols/client/controller/Controller.java b/src/main/java/eu/midnightdust/midnightcontrols/client/controller/Controller.java index e854dfe..849d80f 100644 --- a/src/main/java/eu/midnightdust/midnightcontrols/client/controller/Controller.java +++ b/src/main/java/eu/midnightdust/midnightcontrols/client/controller/Controller.java @@ -23,7 +23,8 @@ import org.lwjgl.glfw.GLFWGamepadState; import org.lwjgl.system.MemoryStack; import org.lwjgl.system.MemoryUtil; -import java.io.IOException; +import java.io.*; +import java.net.URL; import java.nio.ByteBuffer; import java.nio.file.Files; import java.nio.file.Paths; @@ -145,9 +146,23 @@ public record Controller(int id) implements Nameable { */ public static void updateMappings() { try { + MidnightControlsClient.get().log("Updating controller mappings..."); + File databaseFile = new File("config/gamecontrollerdatabase.txt"); + try { + BufferedInputStream in = new BufferedInputStream(new URL("https://raw.githubusercontent.com/gabomdq/SDL_GameControllerDB/master/gamecontrollerdb.txt").openStream()); + + BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(databaseFile)); + byte[] dataBuffer = new byte[1024]; + int bytesRead; + while ((bytesRead = in.read(dataBuffer, 0, 1024)) != -1) { + out.write(dataBuffer, 0, bytesRead); + } + out.close(); + } catch (Exception ignored) {/* Just continue when internet connection is not available */} + var database = ioResourceToBuffer(databaseFile.getPath(), 1024); + GLFW.glfwUpdateGamepadMappings(database); if (!MidnightControlsClient.MAPPINGS_FILE.exists()) return; - MidnightControlsClient.get().log("Updating controller mappings..."); var buffer = ioResourceToBuffer(MidnightControlsClient.MAPPINGS_FILE.getPath(), 1024); GLFW.glfwUpdateGamepadMappings(buffer); } catch (IOException e) { diff --git a/src/main/java/eu/midnightdust/midnightcontrols/client/gui/MidnightControlsHud.java b/src/main/java/eu/midnightdust/midnightcontrols/client/gui/MidnightControlsHud.java index a596c3b..4d89381 100644 --- a/src/main/java/eu/midnightdust/midnightcontrols/client/gui/MidnightControlsHud.java +++ b/src/main/java/eu/midnightdust/midnightcontrols/client/gui/MidnightControlsHud.java @@ -79,13 +79,11 @@ public class MidnightControlsHud extends Hud { @Override public void render(MatrixStack matrices, float tickDelta) { if (MidnightControlsConfig.controlsMode == ControlsMode.CONTROLLER && this.client.currentScreen == null) { - if (MidnightControlsConfig.hudAlwaysShow || (MidnightControlsConfig.getController().isConnected() && MidnightControlsConfig.getController().isGamepad())) { - int y = bottom(2); - this.renderFirstIcons(matrices, MidnightControlsConfig.hudSide == HudSide.LEFT ? 2 : client.getWindow().getScaledWidth() - 2, y); - this.renderSecondIcons(matrices, MidnightControlsConfig.hudSide == HudSide.RIGHT ? 2 : client.getWindow().getScaledWidth() - 2, y); - this.renderFirstSection(matrices, MidnightControlsConfig.hudSide == HudSide.LEFT ? 2 : client.getWindow().getScaledWidth() - 2, y); - this.renderSecondSection(matrices, MidnightControlsConfig.hudSide == HudSide.RIGHT ? 2 : client.getWindow().getScaledWidth() - 2, y); - } + int y = bottom(2); + this.renderFirstIcons(matrices, MidnightControlsConfig.hudSide == HudSide.LEFT ? 2 : client.getWindow().getScaledWidth() - 2, y); + this.renderSecondIcons(matrices, MidnightControlsConfig.hudSide == HudSide.RIGHT ? 2 : client.getWindow().getScaledWidth() - 2, y); + this.renderFirstSection(matrices, MidnightControlsConfig.hudSide == HudSide.LEFT ? 2 : client.getWindow().getScaledWidth() - 2, y); + this.renderSecondSection(matrices, MidnightControlsConfig.hudSide == HudSide.RIGHT ? 2 : client.getWindow().getScaledWidth() - 2, y); } if (this.mod.reacharound.isLastReacharoundVertical()) { diff --git a/src/main/java/eu/midnightdust/midnightcontrols/client/gui/MidnightControlsSettingsScreen.java b/src/main/java/eu/midnightdust/midnightcontrols/client/gui/MidnightControlsSettingsScreen.java index 7fff583..59f1ee0 100644 --- a/src/main/java/eu/midnightdust/midnightcontrols/client/gui/MidnightControlsSettingsScreen.java +++ b/src/main/java/eu/midnightdust/midnightcontrols/client/gui/MidnightControlsSettingsScreen.java @@ -72,7 +72,6 @@ public class MidnightControlsSettingsScreen extends SpruceScreen { private final SpruceOption controllerTypeOption; private final SpruceOption virtualMouseSkinOption; private final SpruceOption hudEnableOption; - private final SpruceOption hudAlwaysShowOption; private final SpruceOption hudSideOption; // Controller options private final SpruceOption controllerOption = @@ -213,8 +212,6 @@ public class MidnightControlsSettingsScreen extends SpruceScreen { null); this.hudEnableOption = new SpruceToggleBooleanOption("midnightcontrols.menu.hud_enable", () -> MidnightControlsConfig.hudEnable, this.mod::setHudEnabled, new TranslatableText("midnightcontrols.tooltip.hud_enable")); - this.hudAlwaysShowOption = new SpruceToggleBooleanOption("midnightcontrols.menu.hud_always_show", () -> MidnightControlsConfig.hudAlwaysShow, - value -> MidnightControlsConfig.hudAlwaysShow = value, new TranslatableText("midnightcontrols.tooltip.hud_always_show")); this.hudSideOption = new SpruceCyclingOption("midnightcontrols.menu.hud_side", amount -> MidnightControlsConfig.hudSide = MidnightControlsConfig.hudSide.next(), option -> option.getDisplayText(MidnightControlsConfig.hudSide.getTranslatedText()), @@ -261,6 +258,7 @@ public class MidnightControlsSettingsScreen extends SpruceScreen { @Override protected void init() { super.init(); + Controller.updateMappings(); this.buildTabs(); @@ -323,7 +321,6 @@ public class MidnightControlsSettingsScreen extends SpruceScreen { list.addSingleOptionEntry(this.virtualMouseSkinOption); list.addSingleOptionEntry(new SpruceSeparatorOption("midnightcontrols.menu.title.hud", true, null)); list.addSingleOptionEntry(this.hudEnableOption); - list.addSingleOptionEntry(this.hudAlwaysShowOption); list.addSingleOptionEntry(this.hudSideOption); return list; } diff --git a/src/main/resources/assets/midnightcontrols/lang/de_de.json b/src/main/resources/assets/midnightcontrols/lang/de_de.json new file mode 100644 index 0000000..e2cc207 --- /dev/null +++ b/src/main/resources/assets/midnightcontrols/lang/de_de.json @@ -0,0 +1,148 @@ +{ + "midnightcontrols.midnightconfig.title": "MidnightControls Erweiterte Konfiguration", + "key.midnightcontrols.look_down": "Nach unten schauen", + "key.midnightcontrols.look_left": "Nach links schauen", + "key.midnightcontrols.look_right": "Nach rechts schauen", + "key.midnightcontrols.look_up": "Nach oben schauen", + "key.midnightcontrols.ring": "Zeige Steuerungsring", + "midnightcontrols.action.attack": "Angreifen", + "midnightcontrols.action.back": "Zurück", + "midnightcontrols.action.chat": "Chat öffnen", + "midnightcontrols.action.drop_item": "Item droppen", + "midnightcontrols.action.exit": "Schließen", + "midnightcontrols.action.forward": "Vorwärts", + "midnightcontrols.action.hit": "Schlagen", + "midnightcontrols.action.hotbar_left": "Hotbar nach links", + "midnightcontrols.action.hotbar_right": "Hotbar nach rechts", + "midnightcontrols.action.inventory": "Inventar", + "midnightcontrols.action.jump": "Springen", + "midnightcontrols.action.left": "Links", + "midnightcontrols.action.pause_game": "Spiel pausieren", + "midnightcontrols.action.pick_block": "Block auswählen", + "midnightcontrols.action.pickup": "Aufheben", + "midnightcontrols.action.pickup_all": "Alles aufheben", + "midnightcontrols.action.place": "Platzieren", + "midnightcontrols.action.player_list": "Spielerliste", + "midnightcontrols.action.quick_move": "Schnell bewegen", + "midnightcontrols.action.right": "Rechts", + "midnightcontrols.action.screenshot": "Screenshot aufnehmen", + "midnightcontrols.action.sneak": "Schleichen", + "midnightcontrols.action.sprint": "Sprinten", + "midnightcontrols.action.swap_hands": "Hände wechseln", + "midnightcontrols.action.toggle_perspective": "Perspektive wechseln", + "midnightcontrols.action.toggle_smooth_camera": "Cinematische Kamera", + "midnightcontrols.action.use": "Benutzen", + "midnightcontrols.action.zoom": "Zoom", + "midnightcontrols.action.zoom_in": "Zoom erhöhen", + "midnightcontrols.action.zoom_out": "Zoom verringern", + "midnightcontrols.action.zoom_reset": "Zoom zurücksetzen", + "midnightcontrols.action.key.emotecraft.fastchoose": "Emote Schnellauswahl", + "midnightcontrols.action.key.emotecraft.stop": "Emote stoppen", + "midnightcontrols.button.left_bumper": "Linke Schultertaste", + "midnightcontrols.button.right_bumper": "Rechte Schultertaste", + "midnightcontrols.button.back": "Zurück", + "midnightcontrols.button.start": "Start", + "midnightcontrols.button.guide": "Guide", + "midnightcontrols.button.left_thumb": "Linker Stick", + "midnightcontrols.button.right_thumb": "Rechter Stick", + "midnightcontrols.button.dpad_up": "Steuerkreuz hoch", + "midnightcontrols.button.dpad_right": "Steuerkreuz rechts", + "midnightcontrols.button.dpad_down": "Steuerkreuz runter", + "midnightcontrols.button.dpad_left": "Steuerkreuz links", + "midnightcontrols.button.l4": "L4", + "midnightcontrols.button.l5": "L5", + "midnightcontrols.button.r4": "R4", + "midnightcontrols.button.r5": "L5", + "midnightcontrols.axis.left_x+": "Links X+", + "midnightcontrols.axis.left_y+": "Links Y+", + "midnightcontrols.axis.right_x+": "Rechts X+", + "midnightcontrols.axis.right_y+": "Rechts Y+", + "midnightcontrols.axis.left_trigger": "Linker Trigger", + "midnightcontrols.axis.right_trigger": "Rechter Trigger", + "midnightcontrols.axis.left_x-": "Links X-", + "midnightcontrols.axis.left_y-": "Links Y-", + "midnightcontrols.axis.right_x-": "Rechts X-", + "midnightcontrols.axis.right_y-": "Rechts Y-", + "midnightcontrols.button.unknown": "Unbekannt (%d)", + "midnightcontrols.controller.connected": "Controller %d verbunden.", + "midnightcontrols.controller.disconnected": "Controller %d getrennt.", + "midnightcontrols.controller.mappings.1": "Um die Controller-Mappings anzupassen, benutze %s", + "midnightcontrols.controller.mappings.3": "und füge die Controller-Mappings in den Mapping-Editor ein.", + "midnightcontrols.controller.mappings.error": "Fehler beim Laden der Controller-Mappings.", + "midnightcontrols.controller.mappings.error.write": "Fehler beim Schreiben der Controller Mappings.", + "midnightcontrols.controller.mappings.updated": "Mappings aktualisiert!", + "midnightcontrols.controller_type.default": "Standard", + "midnightcontrols.controls_mode.default": "Tastatur/Maus", + "midnightcontrols.controls_mode.controller": "Controller", + "midnightcontrols.controls_mode.touchscreen": "Touchscreen", + "midnightcontrols.hud_side.left": "links", + "midnightcontrols.hud_side.right": "rechts", + "midnightcontrols.menu.analog_movement": "Analoge Bewegung", + "midnightcontrols.menu.auto_switch_mode": "Automatischer Wechsel", + "midnightcontrols.menu.controller": "Controller", + "midnightcontrols.menu.controller2": "Zweiter Controller", + "midnightcontrols.menu.controller_type": "Controller-Typ", + "midnightcontrols.menu.controls_mode": "Modus", + "midnightcontrols.menu.fast_block_placing": "Schnelles Bauen", + "midnightcontrols.menu.fly_drifting": "Flug-Drifting", + "midnightcontrols.menu.fly_drifting_vertical": "Vertikales Flug-Drifting", + "midnightcontrols.menu.hud_enable": "HUD aktivieren", + "midnightcontrols.menu.hud_side": "HUD-Seite", + "midnightcontrols.menu.invert_right_x_axis": "X rechts umkehren", + "midnightcontrols.menu.invert_right_y_axis": "Y rechts umkehren", + "midnightcontrols.menu.keyboard_controls": "Tastatureinstellungen...", + "midnightcontrols.menu.left_dead_zone": "Linke tote Zone", + "midnightcontrols.menu.mappings.open_input_str": "Öffne den Controller-Mapping Editor", + "midnightcontrols.menu.max_left_x_value": "Maximalwert Linke X-Achse", + "midnightcontrols.menu.max_left_y_value": "Maximalwert Linke Y-Achse", + "midnightcontrols.menu.max_right_x_value": "Maximalwert Rechte X-Achse", + "midnightcontrols.menu.max_right_y_value": "Maximalwert Rechte Y-Achse", + "midnightcontrols.menu.mouse_speed": "Mausgeschwindigkeit", + "midnightcontrols.menu.reacharound.horizontal": "Vorderes Blockplatzieren", + "midnightcontrols.menu.reacharound.vertical": "Vertikales Umgreifen", + "midnightcontrols.menu.reload_controller_mappings": "Controller-Mappings neuladen", + "midnightcontrols.menu.right_dead_zone": "Rechte tote Zone", + "midnightcontrols.menu.rotation_speed": "Rotationsgeschwindigkeit", + "midnightcontrols.menu.separator.controller": "Controller", + "midnightcontrols.menu.separator.general": "Generell", + "midnightcontrols.menu.title": "MidnightControls - Einstellungen", + "midnightcontrols.menu.title.controller": "Controlleroptionen", + "midnightcontrols.menu.title.controller_controls": "Controller Steuerung", + "midnightcontrols.menu.title.gameplay": "Gameplay Optionen", + "midnightcontrols.menu.title.general": "Generelle Optionen", + "midnightcontrols.menu.title.hud": "HUD Optionen", + "midnightcontrols.menu.title.mappings.string": "Mapping-Datei Editor", + "midnightcontrols.menu.title.visual": "Visuelle Optionen", + "midnightcontrols.menu.unfocused_input": "Unfokussierte Eingabe", + "midnightcontrols.menu.virtual_mouse": "Virtuelle Maus", + "midnightcontrols.menu.virtual_mouse.skin": "Aussehen der Virtuellen Maus", + "midnightcontrols.narrator.unbound": "%s entbunden", + "midnightcontrols.not_bound": "Nicht zugewiesen", + "midnightcontrols.tooltip.analog_movement": "Aktiviert analoge Bewegung, wenn möglich.", + "midnightcontrols.tooltip.auto_switch_mode": "Ob der Eingabemodus automatisch auf Controller eingestellt werden soll, wenn einer verbunden wird.", + "midnightcontrols.tooltip.controller2": "Zweiter Controller, zum Beispiel für Joy-Cons.", + "midnightcontrols.tooltip.controller_type": "Der Controllertyp für den die Knöpfe angezeigt werden sollen.", + "midnightcontrols.tooltip.controls_mode": "Der Steuerungsmodus.", + "midnightcontrols.tooltip.fast_block_placing": "Während des Fliegens im Kreativmodus das schnelle Platzieren von Knöpfen aktivieren. §cWird von manchen Servern als cheaten eingestuft.", + "midnightcontrols.tooltip.fly_drifting": "Aktiviert das Flug-Drifting von Vanilla Minecraft.", + "midnightcontrols.tooltip.fly_drifting_vertical": "Aktiviert das vertikale Flug-Drifting von Vanilla Minecraft", + "midnightcontrols.tooltip.hud_enable": "(De-)Aktiviert die Knopfanzeige im Spiel", + "midnightcontrols.tooltip.hud_side": "Die Position der Knopfanzeige.", + "midnightcontrols.tooltip.left_dead_zone": "Die tote Zone für den linken Analogstick.", + "midnightcontrols.tooltip.max_left_x_value": "Ändert den maximalen Wert der linken X-Achse. Nützlich, wenn deine Achse nicht bis zum Maximum geht.", + "midnightcontrols.tooltip.max_left_y_value": "Ändert den maximalen Wert der linken Y-Achse. Nützlich, wenn deine Achse nicht bis zum Maximum geht.", + "midnightcontrols.tooltip.max_right_x_value": "Ändert den maximalen Wert der rechten X-Achse. Nützlich, wenn deine Achse nicht bis zum Maximum geht.", + "midnightcontrols.tooltip.max_right_y_value": "Ändert den maximalen Wert der rechten Y-Achse. Nützlich, wenn deine Achse nicht bis zum Maximum geht.", + "midnightcontrols.tooltip.mouse_speed": "Die emulierte Mausgeschwindigkeit des Controllers.", + "midnightcontrols.tooltip.reacharound.horizontal": "Aktiviert vorderes Platzieren von Blöcken, §cwird von manchen Servern als cheaten eingestuft§r.", + "midnightcontrols.tooltip.reacharound.vertical": "Aktiviert vertikales Platzieren von Blöcken, §cwird von manchen Servern als cheaten eingestuft§r.", + "midnightcontrols.tooltip.reload_controller_mappings": "Lädt die Controller-Mappings neu.", + "midnightcontrols.tooltip.right_dead_zone": "Die tote Zone für den rechten Analogstick.", + "midnightcontrols.tooltip.rotation_speed": "Die Kamerarotationsgeschwindigkeit im Controllermodus.", + "midnightcontrols.tooltip.unfocused_input": "Erlaube Controllereingabe auch wenn das Fenster nicht fokussiert ist.", + "midnightcontrols.tooltip.virtual_mouse": "Aktiviere die virtuelle Maus.", + "midnightcontrols.virtual_mouse.skin.default_light": "Standard Light", + "midnightcontrols.virtual_mouse.skin.default_dark": "Standard Dark", + "midnightcontrols.virtual_mouse.skin.second_light": "Alternativ Light", + "midnightcontrols.virtual_mouse.skin.second_dark": "Alternativ Dark" +} diff --git a/src/main/resources/assets/midnightcontrols/lang/en_us.json b/src/main/resources/assets/midnightcontrols/lang/en_us.json index dba1ccb..aa7b287 100644 --- a/src/main/resources/assets/midnightcontrols/lang/en_us.json +++ b/src/main/resources/assets/midnightcontrols/lang/en_us.json @@ -96,7 +96,6 @@ "midnightcontrols.menu.fly_drifting": "Fly Drifting", "midnightcontrols.menu.fly_drifting_vertical": "Vertical Fly Drifting", "midnightcontrols.menu.hud_enable": "Enable HUD", - "midnightcontrols.menu.hud_always_show": "Always Show HUD When in Controller Mode", "midnightcontrols.menu.hud_side": "HUD Side", "midnightcontrols.menu.invert_right_x_axis": "Invert Right X", "midnightcontrols.menu.invert_right_y_axis": "Invert Right Y", @@ -137,7 +136,6 @@ "midnightcontrols.tooltip.fly_drifting": "While flying, enables Vanilla drifting/inertia.", "midnightcontrols.tooltip.fly_drifting_vertical": "While flying, enables Vanilla vertical drifting/intertia.", "midnightcontrols.tooltip.hud_enable": "Toggles the on-screen controller button indicator.", - "midnightcontrols.tooltip.hud_always_show": "Toggles whether or not to always show the HUD when in Controller Mode, regardless of whether or not a controller is actually connected.", "midnightcontrols.tooltip.hud_side": "The position of the HUD.", "midnightcontrols.tooltip.left_dead_zone": "The dead zone for the controller's left analogue stick.", "midnightcontrols.tooltip.max_left_x_value": "Changes what the mod considers the highest value for the left X axis. Useful if your axis does not use the full range and seems slow.", @@ -155,5 +153,6 @@ "midnightcontrols.virtual_mouse.skin.default_light": "Default Light", "midnightcontrols.virtual_mouse.skin.default_dark": "Default Dark", "midnightcontrols.virtual_mouse.skin.second_light": "Second Light", - "midnightcontrols.virtual_mouse.skin.second_dark": "Second Dark" + "midnightcontrols.virtual_mouse.skin.second_dark": "Second Dark", + "modmenu.descriptionTranslation.midnightcontrols": "Adds controller support and enhanced controls overall.\nForked from LambdaControls, which sadly got discontinued." } \ No newline at end of file diff --git a/src/main/resources/assets/midnightcontrols/lang/es_mx.json b/src/main/resources/assets/midnightcontrols/lang/es_mx.json index c799cf0..f61731a 100644 --- a/src/main/resources/assets/midnightcontrols/lang/es_mx.json +++ b/src/main/resources/assets/midnightcontrols/lang/es_mx.json @@ -89,7 +89,6 @@ "midnightcontrols.menu.fly_drifting": "Volar a la deriva", "midnightcontrols.menu.fly_drifting_vertical": "Volar a la deriva vertical", "midnightcontrols.menu.hud_enable": "Habilitar HUD", - "midnightcontrols.menu.hud_always_show": "Always Show HUD When in Controller Mode", "midnightcontrols.menu.hud_side": "Lado de HUD", "midnightcontrols.menu.invert_right_x_axis": "Invertir derecha X", "midnightcontrols.menu.invert_right_y_axis": "Invertir derecha Y", @@ -130,7 +129,6 @@ "midnightcontrols.tooltip.fly_drifting": "Mientras vuela, habilita la deriva/inercia de vainilla.", "midnightcontrols.tooltip.fly_drifting_vertical": "Mientras vuela, habilita la deriva/inercia vertical de vainilla.", "midnightcontrols.tooltip.hud_enable": "Alterna el indicador del botón del controlador en pantalla.", - "midnightcontrols.tooltip.hud_always_show": "Toggles whether or not to always show the HUD when in Controller Mode, regardless of whether or not a controller is actually connected.", "midnightcontrols.tooltip.hud_side": "La posición del HUD.", "midnightcontrols.tooltip.left_dead_zone": "La zona muerta de la palanca analógica izquierda del controlador.", "midnightcontrols.tooltip.max_left_x_value": "Cambia lo que el mod considera el valor más alto para el eje X izquierdo. Útil si su eje no usa el rango completo y parece lento.", diff --git a/src/main/resources/assets/midnightcontrols/lang/fr_ca.json b/src/main/resources/assets/midnightcontrols/lang/fr_ca.json index 18d1e5f..d8129ad 100644 --- a/src/main/resources/assets/midnightcontrols/lang/fr_ca.json +++ b/src/main/resources/assets/midnightcontrols/lang/fr_ca.json @@ -89,7 +89,6 @@ "midnightcontrols.menu.fly_drifting": "Inertie de vol", "midnightcontrols.menu.fly_drifting_vertical": "Inertie verticale de vol", "midnightcontrols.menu.hud_enable": "Activer le HUD", - "midnightcontrols.menu.hud_always_show": "Always Show HUD When in Controller Mode", "midnightcontrols.menu.hud_side": "Côté du HUD", "midnightcontrols.menu.invert_right_x_axis": "Inverser le stick droit (X)", "midnightcontrols.menu.invert_right_y_axis": "Inverser le stick droit (Y)", @@ -130,7 +129,6 @@ "midnightcontrols.tooltip.fly_drifting": "Pendant que le joueur vole, active le glissement Vanilla.", "midnightcontrols.tooltip.fly_drifting_vertical": "Pendant que le joueur vole, active le glissement vertical Vanilla.", "midnightcontrols.tooltip.hud_enable": "Détermine si l'indicateur des buttons de la manette doit être affiché ou non.", - "midnightcontrols.tooltip.hud_always_show": "Toggles whether or not to always show the HUD when in Controller Mode, regardless of whether or not a controller is actually connected.", "midnightcontrols.tooltip.hud_side": "Change la position du HUD.", "midnightcontrols.tooltip.left_dead_zone": "Zone morte de l'axe gauche de la manette.", "midnightcontrols.tooltip.max_left_x_value": "Change ce que le mod considère comme valeur maximale pour l'axe X gauche. Utile si votre axe n'utilise pas l'entièreté de l'ensemble des valeurs et paraît lent.", diff --git a/src/main/resources/assets/midnightcontrols/lang/fr_fr.json b/src/main/resources/assets/midnightcontrols/lang/fr_fr.json index 18d1e5f..d8129ad 100644 --- a/src/main/resources/assets/midnightcontrols/lang/fr_fr.json +++ b/src/main/resources/assets/midnightcontrols/lang/fr_fr.json @@ -89,7 +89,6 @@ "midnightcontrols.menu.fly_drifting": "Inertie de vol", "midnightcontrols.menu.fly_drifting_vertical": "Inertie verticale de vol", "midnightcontrols.menu.hud_enable": "Activer le HUD", - "midnightcontrols.menu.hud_always_show": "Always Show HUD When in Controller Mode", "midnightcontrols.menu.hud_side": "Côté du HUD", "midnightcontrols.menu.invert_right_x_axis": "Inverser le stick droit (X)", "midnightcontrols.menu.invert_right_y_axis": "Inverser le stick droit (Y)", @@ -130,7 +129,6 @@ "midnightcontrols.tooltip.fly_drifting": "Pendant que le joueur vole, active le glissement Vanilla.", "midnightcontrols.tooltip.fly_drifting_vertical": "Pendant que le joueur vole, active le glissement vertical Vanilla.", "midnightcontrols.tooltip.hud_enable": "Détermine si l'indicateur des buttons de la manette doit être affiché ou non.", - "midnightcontrols.tooltip.hud_always_show": "Toggles whether or not to always show the HUD when in Controller Mode, regardless of whether or not a controller is actually connected.", "midnightcontrols.tooltip.hud_side": "Change la position du HUD.", "midnightcontrols.tooltip.left_dead_zone": "Zone morte de l'axe gauche de la manette.", "midnightcontrols.tooltip.max_left_x_value": "Change ce que le mod considère comme valeur maximale pour l'axe X gauche. Utile si votre axe n'utilise pas l'entièreté de l'ensemble des valeurs et paraît lent.", diff --git a/src/main/resources/assets/midnightcontrols/lang/tr_tr.json b/src/main/resources/assets/midnightcontrols/lang/tr_tr.json index f433df6..e16c88a 100644 --- a/src/main/resources/assets/midnightcontrols/lang/tr_tr.json +++ b/src/main/resources/assets/midnightcontrols/lang/tr_tr.json @@ -89,7 +89,6 @@ "midnightcontrols.menu.fly_drifting": "Kayarak Uç", "midnightcontrols.menu.fly_drifting_vertical": "Dikey uçuşta kayaaak git", "midnightcontrols.menu.hud_enable": "HUD'u Etkinleştir", - "midnightcontrols.menu.hud_always_show": "Always Show HUD When in Controller Mode", "midnightcontrols.menu.hud_side": "HUD Yanı", "midnightcontrols.menu.invert_right_x_axis": "Sağ X'i Terse Çevir", "midnightcontrols.menu.invert_right_y_axis": "Sağ Y'i Terse Çevir.", @@ -116,12 +115,10 @@ "midnightcontrols.tooltip.controller2": "Kullanılacak ikinci oyun kolu, örnek olarak Joy-Con desteği de mümkün.", "midnightcontrols.tooltip.controller_type": "Doğru tuşları göstermesi için oyun kolu türü.", "midnightcontrols.tooltip.controls_mode": "Kontrol Modu", - "midnightcontrols.tooltip.dead_zone": "Oyun kolunun analog çubukları için ayarlanan ölü bölge/dead zone", "midnightcontrols.tooltip.fast_block_placing": "Yaratıcı modda uçarken, hızına bağlı olarak hızlı blok koymayı etkinleştirir. §cBazı sunucular bunun hile olduğunu düşünebilir.", "midnightcontrols.tooltip.fly_drifting": "Uçarken, Vanilla'daki gibi ani duruşlarda kayma efektini etkinleştirir.", "midnightcontrols.tooltip.fly_drifting_vertical": "Yukarı/aşağı uçarken, Vanilla'daki gibi ani duruşlarda kayma efektini etkinleştirir.", "midnightcontrols.tooltip.hud_enable": "Ekranın üstünde oyun kolu tuşu göstergesini açar/kapatır.", - "midnightcontrols.tooltip.hud_always_show": "Toggles whether or not to always show the HUD when in Controller Mode, regardless of whether or not a controller is actually connected.", "midnightcontrols.tooltip.hud_side": "HUD'un konumu", "midnightcontrols.tooltip.mouse_speed": "Oyun kolunun taklit edilen fare hızı.", "midnightcontrols.tooltip.reacharound.horizontal": "Hızlı blok koymayı etkinleştirir. §cBazı sunucular bunun hile olduğunu düşünebilir.§r.", diff --git a/src/main/resources/assets/midnightcontrols/lang/zh_cn.json b/src/main/resources/assets/midnightcontrols/lang/zh_cn.json index b62556c..c04a639 100644 --- a/src/main/resources/assets/midnightcontrols/lang/zh_cn.json +++ b/src/main/resources/assets/midnightcontrols/lang/zh_cn.json @@ -89,7 +89,6 @@ "midnightcontrols.menu.fly_drifting": "水平方向飞行惯性", "midnightcontrols.menu.fly_drifting_vertical": "垂直方向飞行惯性", "midnightcontrols.menu.hud_enable": "启用HUD", - "midnightcontrols.menu.hud_always_show": "Always Show HUD When in Controller Mode", "midnightcontrols.menu.hud_side": "HUD位置", "midnightcontrols.menu.invert_right_x_axis": "反转右摇杆X轴", "midnightcontrols.menu.invert_right_y_axis": "反转右摇杆Y轴", @@ -130,7 +129,6 @@ "midnightcontrols.tooltip.fly_drifting": "处于飞行状态时,启用原版的水平方向飞行惯性(缓停滑行)。", "midnightcontrols.tooltip.fly_drifting_vertical": "处于飞行状态时,启用原版的垂直方向飞行惯性(缓停滑行)。", "midnightcontrols.tooltip.hud_enable": "显示手柄按键操作提示。", - "midnightcontrols.tooltip.hud_always_show": "Toggles whether or not to always show the HUD when in Controller Mode, regardless of whether or not a controller is actually connected.", "midnightcontrols.tooltip.hud_side": "HUD的位置位于画面的哪一侧。", "midnightcontrols.tooltip.left_dead_zone": "左摇杆配置的死区。\n死区决定摇杆要偏离中心位置多远才能让摇杆的输入有效。", "midnightcontrols.tooltip.max_left_x_value": "更改左摇杆X轴最大值的识别范围。\n若感觉即便推满摇杆也未达到最大的输入值,导致在识别摇杆输入的精确值的情况下,左右移动较为缓慢等问题,本项可能会有所帮助。", diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 024d159..423cbb8 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -3,11 +3,20 @@ "id": "midnightcontrols", "name": "MidnightControls", "version": "${version}", - "description": "Adds better controls, and controller support.", + "description": "Adds controller support and enhanced controls overall.", "authors": [ "LambdAurora", "Motschen" ], + "contributors": [ + "akemin-dayo", + "FlashyReese", + "Hambaka", + "joaoh1", + "DioEgizio", + "EnnuiL", + "egeesin" + ], "contact": { "homepage": "https://modrinth.com/mod/midnightcontrols", "sources": "https://github.com/TeamMidnightDust/MidnightControls",