- Home /
2d Ladders snap to middle?
So far I am able to go up and down the ladder and move left to right on it, but what I want is for the character to snap to the middle of the ladder in order for me to synchronize animations properly. How would I go about doing this?
How about getting the center of the ladder object and using that ?
For example, if ladders only go up in a straight line, you could just use something like
Vector3 center = new Vector3(ladder.transform.position.x, 0,ladder.transform.position.z);
player.transform.position = new Vector3(center.x, plater.transform.position.y, center.z);
^thats just an example, probably wouldn't look so pretty if the character would snapp to the position
This is what I was trying to do, find the center of the ladder sprite and just move the character to the position. $$anonymous$$aybe I could do this with a mathf lerp so it isn't like a teleport, but more of a smooth movement.
Would you know how to do this?
https://docs.unity3d.com/Documentation/ScriptReference/Vector3.Lerp.html
would probably do the trick.. so something like
Vector3 ladder = new Vector3(ladder.transform.position.x, 0,ladder.transform.position.z);
Vector startPosition = player.transform.position;
player.transform.position = Vector3.Lerp(startPosition, ladder, fracJourney);
sorry for not giving a full sample :)
Answer by hawken · Nov 09, 2015 at 01:03 PM
If you are controlling your player with physics, I'd recommend doing this in the FixedUpdate loop, no need for lerping.
Your answer
![](https://koobas.hobune.stream/wayback/20220613140804im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
How to detect CompositeCollider2D shape center? 0 Answers
Unity2D - Creating multiple Ladders that centers the player? 1 Answer
Physics2D checking if object goes out of OverlapArea 1 Answer
climb speed changes drastically when game window is not maximized 1 Answer
2D Ladder Climb Through Platforms 2 Answers