Salut.
Alors en effet, beaucoup d'erreur...
Il faut savoir déjà que tout a une importance, comme par exemple les minuscules et majuscules, les virgules et les points.
Ton code est plein de ce genre de faute.
Deja normalement quand tu écrit quelques chose, genre transform ou Transform (ce qui est différent), si tu met un point après, il te propose tout ce qui peut venir après. si ce que tu veux écrire n'est pas suggéré c'est que ce n'est pas écrit de la bonne façon.
change donc tes Transform par transform.
tu déclare isjumping , hors plus tard dans le code tu écris isJumping qui du coup n'est pas défini dans le script ( erreur de majuscule).
Il suffit de reagrder dans la doc pour voir que Vector2.left n'existe pas, mais Vector2.right oui. donc au llieu de Vector2.left : -Vector2.right.
Tu est débutant et nous y sommes tous passé. je te conseil avant de vouloir coder un jeux a proprement parler, familiarise toi avec la syntaxe de C#. Place juste des cubes, essaye de leur mettre un script, et fait des essai simple.
Si tu veux regarder ton script corrigé : (en vert précédé de // c'est juste ce que toi tu avais écrit))
Code : Tout sélectionner
using UnityEngine;
using System.Collections;
public class Joueur : MonoBehaviour
{
public float vitesse = 7.0f;
private bool isjumping = false;
//void FixedUpdate ()
void Update () // pas besoin de FixedUpdate en utilisant les Time.deltaTime
{
if (Input.GetKey (KeyCode.Q) || Input.GetKey (KeyCode.LeftArrow)) {
//Transform.Translate(Vector2.left * vitesse * Time.deltaTime);
transform.Translate (-Vector2.right * vitesse * Time.deltaTime);
//Transform.localScale = new Vector3(-1, 1, 1);
transform.localScale = new Vector3 (-1, 1, 1);
} else if (Input.GetKey (KeyCode.D) || Input.GetKey (KeyCode.RightArrow)) {
//Transform.translate(Vector2.right * vitesse * Time.deltaTime);
transform.Translate (Vector2.right * vitesse * Time.deltaTime);
//Transform.localScale = new Vector3(1, 1, 1);
transform.localScale = new Vector3 (1, 1, 1);
}
if (Input.GetKeyDown (KeyCode.Space)) {
//if (!isJumping) {
if (!isjumping) {
StartCoroutine (Jump ());
}
}
}
IEnumerator Jump ()
{
//isJumping = true;
isjumping = true;
GetComponent<Rigidbody2D> ().AddForce (Vector2.up * 500);
//yield return new WaitForSeconds(1, 5f);
yield return new WaitForSeconds(1.5f);
//isJumping = false;
isjumping = false;
}
}
juste un doute su Rigidbody2D ( que je n'ai pas sur unity 4.0 que j'utilise)
Tu vois que tu as fait au moins une erreur pas ligne quasiment...
Comme je te l'ai suggéré, familiarise toi bien avec la syntaxe, absolument tout ce que tu écrit et la façon dont tu écrit a une importance.
Si tu as d'autres soucis, n'hésite pas