- 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
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                