Jump to content

How would i go about implementaling wall climbing. Ability to climb walls like ladders but slower. Using events


greetthemoth

Recommended Posts

6 hours ago, greetthemoth said:

Perhaps im missing something, but there doesnt seem to be any event that can help me in this. OR is there? Any ideas.

You could try using a PlayerTickEvent like this:

@SubscribeEvent
public static void onPlayerTickEvent(PlayerTickEvent event) {
  if (event.phase == Phase.START && event.player.collidedHorizontally) {
  Vec3d motion = event.player.getMotion();
  event.player.setMotion(motion.getX(), 0.2, motion.getZ());
  }
}

 

Link to comment
Share on other sites

27 minutes ago, greetthemoth said:

wow that worked! thanks! ill need to do some touching up. slowing down the speed of the climb, as well as requiring the player to looking in the direction of the wall before climbing.

No problem, glad I could help! Slowing down the speed of the climb is easy, just change the y value in setMotion from 0.2 to something lower. As for requiring the player to look at the wall, that might be a bit harder, but should be doable with something like a RayTrace.

Link to comment
Share on other sites

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.