Posted December 8, 20213 yr Hello, I have an item which call a procedure each inventory tick. This item overrides Player motion vector to 0. However, the player can't jump. How can I get if the jump key is pressed, on PlayerEntity ? Is there sth like player.isKeyPressed(...) or do i need to register an event for this ? If so, how ? PS: 1.16.5 Thanks in advance !
December 8, 20213 yr You can make a Keybind for this. This isn't very hard. The problem is that the player can change the key for triggering the Keybind. I wouldn't make a keybind, I just wouldn't change the y value of the player motion vector (set it to playerMotionVector.y). Sorry if my Posts are weird sometimes, I just try to help and learn as much as I can Also: PLEASE use SPOILERS for logs!
December 8, 20213 yr Author Thanks ! I made a keybind which sets itself on the key choosed for the jump keybind each time game load.
December 8, 20213 yr But you can change the Keybind while the game is running What do you want to do? Edited December 8, 20213 yr by OutCraft Last sentence Sorry if my Posts are weird sometimes, I just try to help and learn as much as I can Also: PLEASE use SPOILERS for logs!
December 10, 20213 yr Author Thanks for your advice !!! Now all the things I wanted works except the KeyBind change. The Keybind is only defined on jump key when the Keybind wasn't in options.txt So now what I want is setting My KeyBind to the key defined for jump by player Each time world is loaded. How can I do that ?
December 11, 20213 yr You can get the jump key with Minecraft.getInstance().options.keyJump.getKey() Sorry if my Posts are weird sometimes, I just try to help and learn as much as I can Also: PLEASE use SPOILERS for logs!
December 13, 20213 yr Author Thanks for you reply. But ... How can I bind my custom keybind to this key I tried KeyBinding keys; keys = new KeyBinding("key.example_mod.jump", GLFW.GLFW_KEY_SPACE, "key.categories.movement"); keys.bind(Minecraft.getInstance().gameSettings.keyBindJump.getKey()); and KeyBinding keys; keys = new KeyBinding("key.example_mod.jump", Minecraft.getInstance().gameSettings.keyBindJump.getKey(), "key.categories.movement"); and replacing the get key method with the one you provided Minecraft.getInstance().options.keyJump.getKey() But nothing works ! It compiles but doesn't change my keybind if i have modified it in the Minecraft settings gui. What can I do Thanks a lot !!!
December 13, 20213 yr The keybind has a method for this, doesn't it? Edit: Are you trying to modify the default value or change it back to space on change through player? Edited December 13, 20213 yr by OutCraft Sorry if my Posts are weird sometimes, I just try to help and learn as much as I can Also: PLEASE use SPOILERS for logs!
December 13, 20213 yr Author I want to set my Custom KeyBind Key to the key selected for jump by player. How can I do that I don't want to change the default value, which is space, but wants to set My keybind to the jump's one. For example A player jump with K. If he changed my custom keybind to S I want it to set to K. Thanks
December 14, 20213 yr I would make a ClientTickEvent in my EventBusSubscriber and change the key to the jump key there. The keybind has a method for changing the key, pass in On 12/11/2021 at 10:47 AM, OutCraft said: Minecraft.getInstance().options.keyJump.getKey() Sorry if my Posts are weird sometimes, I just try to help and learn as much as I can Also: PLEASE use SPOILERS for logs!
December 14, 20213 yr 3 minutes ago, diesieben07 said: check the vanilla key binding How do you check the vanilla keybind? Just like a custom? Edited December 14, 20213 yr by OutCraft Sorry if my Posts are weird sometimes, I just try to help and learn as much as I can Also: PLEASE use SPOILERS for logs!
December 14, 20213 yr Ohh.. Learned something new again Sorry if my Posts are weird sometimes, I just try to help and learn as much as I can Also: PLEASE use SPOILERS for logs!
December 14, 20213 yr Author Thanks for your help but ... So If I want to check when the player press the vanilla jump keybind, how can I do this ? I know I can register a onKeyPressed event, but I can't figure how to check if jump key is pressed. Because Minecraft.getInstance().options.keyJump.getKey() Return the key selected, but not if this key was pressed. How can I check ? Thanks a lot for your help
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.