Modern KeyBinding

Quick rating

Community listing page, reviews here may not be monitored by the author.

Modern KeyBinding

No reviews yet

Add key conflict context and key modifier back to 1.7.10

Mod Loaders
Minecraft

About

Description

Fabric? Here.

The mod ported newer version's KeyModifier && KeyConflictContext back to Forge 1.7.10.

For common players:

Features

  • You can now define a keybinding's activation key with key modifiers. Like "Ctrl + G" or "Alt + S";
  • The keybindings with the same activation key but different key conflict contexts will not conflict now.
  • "Non-conflict keys" (disabled by default): The keybindings with the same key will all be activated if the key is pressed.

Configurations

general {
    # Non-conflict keys function. Set to true to activate. [Default: false]
    B:nonConflictKeys=false
}

 

For developers:

The mod's WIKI(English | 简体中文).

ATTENTION:

You DEFINITELY CAN add the mod to your modpack;

The "mixinless" version of the mod needs SpongeMixins;

NEI will crash with the mod, use NEI Unofficial(Dependencies: CodeChickenCore, CodeChickenLib) instead to prevent crashes.

Forge? Here.

The official port of Modern KeyBinding.

For common players:

Features

  • You can now define a keybinding's activation key with key modifiers. Like "Ctrl + G" or "Alt + S";
  • The keybindings with the same activation key but different key conflict contexts will not conflict now.
  • "Non-conflict keys" (disabled by default): The keybindings with the same key will all be activated if the key is pressed.

Configurations

# ModernKeyBinding-Config

# Non-conflict keys function. Set to true to activate. [Default: false]

nonConflictKeys=false

For developers:

The mod's WIKI(English | 简体中文).

ATTENTION:

You DEFINITELY CAN add the mod to your modpack;

Check legacyfabric.net for more info about Legacyfabric.

Modern KeyBinding

The mod ported the newer version's KeyModifier && KeyConflictContext back to Fabric & Early Forge.

Features

You can now define a keybinding's activation key with key modifiers. Like "Ctrl + G" or "Alt + S";

The keybindings with the same activation key but different key conflict contexts no longer conflict.

"Non-conflict keys" (disabled by default): The keybindings with the same key will all be activated if the key is pressed.

Attention:

The mod will crash with NEI. Use NEI Unofficial(Dependencies: CodeChickenCore | CodeChickenLib) by GTNH instead.

Import as a Gradle dependency

repositories {
    //...
    maven {
        url "https://maven.nova-committee.cn/releases"
    }
}
dependencies {
    //...
    // Forge
    implementation "committee.nova.mkb.forge:mkb-${mc_version}:${mod_version}"
    // Fabric
    modImplementation "committee.nova.mkb.fabric:mkb-${mc_version}:${mod_version}"
}

Register a keybinding

Register a keybinding that:

  • Activates when Alt and C are pressed;

  • Only available in GUI.

ClientProxy.java

public class ClientProxy {
    public void init(final FMLInitializationEvent event) {
        //...
        yourKeyBinding = KeyBindingRegistry.INSTANCE.registerKeyBinding("key.exampleKey", KeyConflictContext.GUI, KeyModifier.ALT, Keyboard.KEY_C, "key.categories.example");
    }
}

Change the properties of an existing keybinding

ClientProxy.java

public class ClientProxy {
    //...
    public void postInit(final FMLPostInitializationEvent event) {
        final IKeyBinding extended = (IKeyBinding) yourKeyBinding;
        // Change the key's keyCode and modifier, as their default values.
        extended.setInitialKeyModifierAndCode(KeyModifier.ALT, Keyboard.KEY_E);
        // Change the key's keyCode and modifier.
        extended.setKeyModifierAndCode(KeyModifier.ALT, Keyboard.KEY_E);
        // Change the key's conflict context.
        extended.setKeyConflictContext(KeyConflictContext.IN_GAME);
    }
}