- Home /
player jump script 2d
My "game" is a 3d project, has 3d models, but the player can only move between two axis, (x, and y for jump). I need a script that can jump my player, https://unity3d.com/learn/tutorials/topics/2d-game-creation/2d-character-controllers I have seen the part of the jump, and I see other tutorials but I don't understanded it. In the game there are more than one 3d objects, used as ground (like plane,and some cubes), can anyone help me? thanks! (example)
Answer by nikcio · Oct 21, 2016 at 08:08 PM
Hi you can use Rigidbody.AddForce and just add force at the Y-Axis Example:
Rigidbody.AddForce(new Vector2(0, 10));
or
Rigidbody.AddForce(new Vector3(0, 10, 0));
and for checking if the gameobject is on the ground just use:
private bool IsGrounded;
void OnCollisionEnter(Collision other)
{
if(other.transform.tag == "Ground")
{
IsGrounded = true;
}
}
and just remember to tag your ground with the tag (Ground).
Hope it helps.
Thanks for the answer, but, actually my moving script is this :
using UnityEngine; using System.Collections;
public class mov : $$anonymous$$onoBehaviour {
public float velocità;
private Rigidbody rb;
private bool IsGrounded;
void Start (){
rb = GetComponent<Rigidbody> ();
IsGrounded = true;
}
void FixedUpdate()
{
//move
float movehoriz = Input.GetAxis ("Horizontal");
Vector3 movement = new Vector2 (movehoriz, 0.0f);
rb.velocity = rb.velocity + movement * velocità;
//jump
if (IsGrounded==true){
if (Input.GetButton ("salto")) {
rb.AddForce (new Vector2 (0, 10));
}
}
}
void OnCollisionEnter(Collision other)
{
if(other.transform.tag == "Ground")
{
IsGrounded = true;
}
}
}
I tried this but doesn't work could you correct it? I need to have the move and the jump in one script, the second question is won't be too "heawy" the game if I add another box collider (triggered) to each platform, (so I have to colliders for each), because I'd like to publish the game on mobiles platform... is that the only way?
Your answer
Follow this Question
Related Questions
Jumping effectively in a 2D sidescroller 0 Answers
Detecting Collision from top side of 2d box collider 0 Answers
Need help with Raycast2D 0 Answers
PLayer animation 0 Answers
Player cannot jump 0 Answers