Untitled
unknown
plain_text
3 years ago
2.2 kB
9
Indexable
package net.fabricmc.spiritsmp.event;
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.ClientPlayNetworking;
import net.fabricmc.fabric.api.networking.v1.PacketByteBufs;
import net.fabricmc.spiritsmp.item.ModItems;
import net.fabricmc.spiritsmp.networking.ModPackets;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.option.KeyBinding;
import net.minecraft.client.util.InputUtil;
import org.lwjgl.glfw.GLFW;
public class KeyInputHandler {
public static final String KEY_CATEGORY_SPIRITSMP = "key.category.spiritsmp.spirit";
public static final String KEY_KATANA_FORCEFIELD = "key.category.spiritsmp.katana_forcefield";
public static final String KEY_KATANA_RIGHT_SLASH = "key.category.spiritsmp.katana_right_slash";
public static KeyBinding katanaForceField;
public static KeyBinding katanaRightSlash;
static boolean player = MinecraftClient.getInstance().player.getMainHandStack().getItem() == ModItems.KATANA;
public static void registerKeyInputs() {
boolean player = MinecraftClient.getInstance().player.getMainHandStack().getItem() == ModItems.KATANA;
ClientTickEvents.END_CLIENT_TICK.register(client -> {
if (player && katanaForceField.isPressed() && MinecraftClient.getInstance().options.useKey.isPressed()) {
ClientPlayNetworking.send(ModPackets.KATANA_BLAST_ID, PacketByteBufs.create());
}
});
}
public static void register() {
katanaForceField = KeyBindingHelper.registerKeyBinding(new KeyBinding(
KEY_KATANA_FORCEFIELD,
InputUtil.Type.KEYSYM,
GLFW.GLFW_KEY_G,
KEY_CATEGORY_SPIRITSMP
));
katanaRightSlash = KeyBindingHelper.registerKeyBinding(new KeyBinding(
KEY_KATANA_RIGHT_SLASH,
InputUtil.Type.KEYSYM,
GLFW.GLFW_KEY_R,
KEY_CATEGORY_SPIRITSMP
));
registerKeyInputs();
}
}Editor is loading...