- 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
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