Je viens de commencer mon projet de jeu android de course 2D. Le jeu mettra en scène un personnage où il faudra éviter les obstacles, prendre des objets, suater sur des plateformes... Bref une sorte de plateformer avec le personnage qui avance tout seul.
J'explique mon problème, j'ai mon personnage qui saute que quand le bool ToucheSol est true soit que le personnage touche un collider avec le tag "sol". Mais le problème est que lorsqu'il saute sur une plateforme tagée Sol, le personnage peut rester coller en dessous, ou s'il reste sur les bords peut décoller vers l'infini et l'au-delà.
Voici mon bout de code.
Code : Tout sélectionner
if (Input.GetKey(KeyCode.UpArrow) && ToucheSol == true)
{
GetComponent<Rigidbody2D>().AddForce(new Vector2(0, 300));
}
void OnCollisionEnter2D(Collision2D coll)
{
anim.SetBool("jump", false);
if (coll.gameObject.tag == "Sol")
{
ToucheSol = true;
}
}
void OnCollisionExit2D(Collision2D coll)
{
anim.SetBool("jump", true);
if (coll.gameObject.tag == "Sol")
{
ToucheSol = false;
}
}
Merci en tout cas pour votre aide !
Attention à la section où vous postez.
Merci de lire la Netiquette.