Créer un jeu en 2D facilement avec Unity (#6 : Dégâts des ennemis)

Поділитися
Вставка
  • Опубліковано 27 бер 2020
  • Aujourd'hui on ajoute la possibilité pour nos ennemis de blesser notre joueur. On ajoute également un petit délais d'invincibilité après chaque coup reçu par notre joueur.
    ▶️ Tutoriel sur les coroutines : • Apprendre le C# - Épis...
    ☕ Soutenir la chaîne ☕
    ➡️ sur Tipeee : www.tipeee.com/tuto-unity-fr
    ➡️ sur uTip : utip.io/tutounityfr
    📥 Télécharger le projet de la série : github.com/TUTOUNITYFR/creer-...
    ········································­­·······································­·­····
    Version Unity de la vidéo: Unity 2019.2 (Version personnelle)
    ········································­­·······································­·­····
    💻 Site internet : www.tutounity.fr
    👉 Twitter : / tutounityfr
    👉 Facebook : / tutounityfr
    👉 Discord : www.tutounity.fr/discord
    ⚗️ Chaîne secondaire (ZEF LAB) : / @zeflab
    📅 Planning des vidéos à venir : www.tutounity.fr/videos-a-ven...
    ········································­­·······································­·­····
    Merci de bien vouloir respecter les autres utilisateurs dans la section des commentaires et de signaler ou d'ignorer les commentaires irrespectueux.
    ········································­­·······································­·­····
    Télécharger Unity (toutes versions):
    unity3d.com/get-unity/downloa...

КОМЕНТАРІ • 174

  • @kaosjk1802
    @kaosjk1802 4 роки тому +2

    Excellente série de vidéos mec, t'es le patron continue!

  • @FlashTheorie
    @FlashTheorie 4 роки тому +15

    Salut, bravo pour ces tutos, j'en ai essayé plusieurs, mais c'est les tiens qui fonctionnent le mieux !

  • @jean-michel.houbre
    @jean-michel.houbre 4 роки тому +5

    Je suis en parallèle ton tuto sur le RPG (oui, il est vieux, et alors ?), on mesure la différence en quelques années ! Merci pour cette série.

  • @funkymedlol
    @funkymedlol 3 роки тому +3

    Vraiment top, merci pour le tuto !

  • @KillingFire
    @KillingFire 3 роки тому +3

    Tes tutos sont supers !

  • @Asmekti
    @Asmekti 10 місяців тому

    Merci beaucoup pour ces Tutos.

  • @MadameCocotte23
    @MadameCocotte23 3 роки тому +1

    Super !!! Ca avance vite !!!

  • @evan.3199
    @evan.3199 Рік тому +9

    Si vous aviez eu l'erreur "inaccessible due to protection level" quand vous lancez le script après la minute 06:00 , c'est du au fait que le dernier paragraphe du script de votre Ennemipatrol commence par "private" car visiblement Unity ne pas pas y accéder. Il suffit de changer le "private" en "public" de ce paragraphe et normalement ça devrait marcher :))

    • @matteoperez3135
      @matteoperez3135 Рік тому

      Merci pour le conseil 👍

    • @Felix-lu2gl
      @Felix-lu2gl Рік тому +4

      Hey !
      Pour moi ça n'a pas marché, je cherche encore une solution

    • @user-ne2yl5eq6i
      @user-ne2yl5eq6i 9 місяців тому

      Ca peu provenir de ta fonction TakeDamage, il suffit de la passer en public @@Felix-lu2gl

    • @jeremyclement5060
      @jeremyclement5060 2 місяці тому

      ​@@Felix-lu2gl slt pareil je cherche aussi erreur CS1513

    • @Faufauu
      @Faufauu Місяць тому

      Mercii!@@user-ne2yl5eq6i

  • @fatihakman5110
    @fatihakman5110 4 роки тому +5

    Je galerais avec mes animations de dégât.. Pourquoi je n'y avais jamais pensé, merci beaucoup!!

  • @stegjgzades6019
    @stegjgzades6019 4 роки тому +5

    juste bravo, j'ai enchainé les premières vidéos d'un coup. Elles passent vraiment vite, c'est du travail de pro. Franchement il y a rien a dire de mauvais. Le contenu est très bien expliqué mais c'est aussi très instructif.
    Je met un pouce qui compte double (je sais pas si c'est possible) ;-)

    • @TUTOUNITYFR
      @TUTOUNITYFR  4 роки тому +2

      Merci beaucoup pour ce retour !

  • @kevinadam6550
    @kevinadam6550 Рік тому

    merci pour vos vidéos elles sont géniales, si je réussis à générer de l'argent grace à vos vidéos, j'en vous donnerais une partie

  • @lechat_mc_officiel
    @lechat_mc_officiel 6 місяців тому

    J'arrivais pas à faire des dégâts à mes ennemis, maintenant je peux ! Merci pour ce tuto !!!

  • @merdymathis5003
    @merdymathis5003 3 роки тому

    Nickel

  • @dariusfanou4334
    @dariusfanou4334 6 місяців тому

    Super tuto merci beaucoup pour le travail que tu accomplis
    Personnellement moi je me suis amusé à rendre la diminution de la barre de vie un peu plus dynamique.
    C'est-à-dire que la vie ne diminue pas d'un coup mais plutôt progressivement

  • @krampoueshaer5898
    @krampoueshaer5898 3 роки тому +1

    Coucou, toujours aussi sympa d'arriver à un résultat au bout de 20 min de vidéo, ça fait plaisir, le jeu avance bien, félicitation pour tes vidéos.
    Pour certaines erreurs ne trouvant pas ou j'ai pu faire en faire lorsque j'en ai la remarque à la lecture du jeu, je remarque qu'il faille seulement fermer Unity et Visual pour que tout rentre dans l'ordre, mais cela sans avoir d'erreur et qu'il m'en déclare, après il oublie ou n'en tient pas vraiment compte puisque je n'en ai pas vraiment. J'espère que je me fait comprendre, pas facile d'expliquer cela. Je pense que cela arrive à plusieurs personnes puisque je lis aussi les commentaires, j'espère que ces personnes liront les miens ;)

    • @ASCIO-Studio
      @ASCIO-Studio Рік тому

      Je suis tout à fait comme toi!
      Mais malheureusement je suis en retard de 2ans on dirait!

  • @fredericcohensalmon9207
    @fredericcohensalmon9207 3 роки тому

    Super tuto !!! Merci :-) Comme évoqué en début de vidéo, il ne me semble pas avoir entendu la différence entre OnCollisionEnter2D et OnTriggerEnter2D...

  • @fredric7901
    @fredric7901 4 роки тому +2

    Super vidéo comme toujours, j'ai bien pris plaisir a faire avancer mon petit jeu 2D.
    Je vais essayer d'aller un peu plus loin seul avec ce que tu a expliquer précédemment pour faire une fonction de récupération de vie en ramassant des petits cœurs :p
    ... Vivement la suite ;)

    • @TUTOUNITYFR
      @TUTOUNITYFR  4 роки тому +2

      Bon courage ! On l'abordera plus tard ce n'est pas très compliqué :)

    • @fredric7901
      @fredric7901 4 роки тому +1

      @@TUTOUNITYFR ... j'ai réussit :p
      j'ai aussi ajouter des décors ennemi ,(du feu) qui te donne des dégâts quand tu le traverse... et aussi des récompenses (Pièces) dont le total s'affiche sous la barre de vie et tout va bien :)
      Sauf un petit bug, lors du ramassage parfois le compteur de pièces s'incrémente de deux unités, mais je suis contents du résultat.

  • @chambwibwi
    @chambwibwi 4 роки тому +5

    Merci énormément j'ai pu faire un petit jeu vachement mignon ou j'ai tout dessiné moi même , et où il y a des la lumière animée enfin bref je me suis trop éclatée grâce a toi

  • @LounyLouny-wz7gd
    @LounyLouny-wz7gd 4 роки тому +1

    J'adore cette série de tuto. J'ai suivi pas mal de tes séries sur la 3d et je les trouve également top!
    Je rencontre actuellement un problème dans le développement d'un jeu:
    Dans mon jeu le joueur est amené à collectionner des objets. Je veux que, si le joueur les a récupérés au cours de sa partie, ceux-ci s'affichent dans la scène d'après. Or je n'ai aucune idée de comment faire pour sauvegarder une variable( en l'occurence des booléens) d'une scène à l'autre et faire que les objets aparraissent dans la scène d'après uniquement si les booléens sont vérifiés.
    Si quelqu'un sait comment faire je suis preneuse!
    En attendant je continue de suivre toutes les vidéos de la chaîne, elles sont super!

    • @chambwibwi
      @chambwibwi 4 роки тому

      Je suis là seulement parce que je suis intéressée aussi

    • @adrienakriche3610
      @adrienakriche3610 4 роки тому

      @@chambwibwi Tu peut utiliser les PlayerPrefs; c'est un système de sauvegarde très simple pour sauvegarder des données(int float et string)
      Tuto Unity FR en a fait un tuto: ua-cam.com/video/vQ3nrXOYiGU/v-deo.html

  • @miaoumixed4268
    @miaoumixed4268 2 роки тому +2

    Bonjour, très bon tuto, merci.
    Juste que je me demande s'il ne serait pas plus simple, efficace, sécurisé et optimisé, d'utiliser un système d'"event" pour les dégâts puisqu'on aura d'autres ennemies d'un côté et des regains de vie d'un autre ?
    M. D.

  • @Maxent420
    @Maxent420 4 роки тому +8

    Hey, déjà, merci énormément pour cette série, elle m'est vraiment utile !
    Et j'ai une question assez bête: Est-ce qu'en apprenant énormément pendant plusieurs années, c'est possible d'arriver à un résultat genre Unravel ou Ori and the Blind Forest (ou Will of the Wisps) ?
    (Je ne parle pas au niveau des graphismes, mais au niveau du gameplay).
    Merci !

    • @liamschwartz2169
      @liamschwartz2169 4 роки тому +1

      Maxent_ bien sûr!!

    • @liamschwartz2169
      @liamschwartz2169 4 роки тому +3

      Même après quelques mois si tu try hard unity pendant le confinement.

    • @Maxent420
      @Maxent420 4 роки тому

      @@liamschwartz2169 D'accord, merci ^^

    • @AlexanderMATHIEU
      @AlexanderMATHIEU 3 роки тому +1

      On peut arriver à tout faire si on y met beaucoup de volonté. Donc vasy, fonce. Sort nous le prochains jeu next gen ! Xd

    • @Maxent420
      @Maxent420 3 роки тому

      @@AlexanderMATHIEU tkt Ubisoft et Xbox sont chauds 😂😂

  • @Hassiou
    @Hassiou 3 роки тому +1

    s'il te plait, quand je lance le jeu en mode game, je vois toujours les contours en blanc de canevas, quand je le désactive je ne le vois plus mais la HealthBar non plus.. peux-tu m'aider?

  • @kikjeen
    @kikjeen Рік тому +2

    Salut ! J’ai une petite question, quand j’avance vers l’ennemi et lui vers moi je prends les dégâts puis je suis invincible donc tout est normal, mais quand mon invincibilité se termine, si je ne me suis pas éloigné du monstre, je ne reprends pas de dégâts. Est-ce que c’est normal et est-ce qu’on peut le désactiver ? En tout cas merci pour le tuto il est super !

  • @ErmanDo3169
    @ErmanDo3169 4 роки тому +4

    Je te remercie tu a pas un grand public mes gras a toi je comprends le système je te remercie ce se voir que tu fait pas ça pour la youtube monet

    • @poloi3440
      @poloi3440 3 роки тому +4

      UA-cam Monet? Le fameux peintre :p

  • @KevinDIJOUX-Blu
    @KevinDIJOUX-Blu 4 роки тому +8

    J'aimerais savoir si tu pense faire un épisode un peu plus basé sur les mécaniques par exemple l'échelle ou un affichage avec des panneaux
    Pouvoir interagir avec le décor

  • @alexrayder1
    @alexrayder1 3 роки тому +1

    Salut ! Super tutos !
    Juste au cas où, j'imagine que tu le sais mais toute fonction ou variable définie dans une class est automatiquement private par défaut.
    Donc au lieu d'écrire : private void Foo() {...}
    Tu peux juste écrire : void Foo() {...}
    Je dis ça car beaucoup de devs ne le mettent pas notamment parce que ça permet de gagner en lisibilité et savoir plus facilement ce qui est public ou pas.
    Aussi, c'est peut être un peu avancé, mais pas mal de component auraient pu être récupérés directement par le code vu que le code est directement attaché à l'objet qui a les components.
    Et d'autres fonctionnalités peuvent être accédées par les singeltons ce qui évite de faire tout un tat de :
    public GameObject ...; ou public Transform ...; pour récupérer les valeurs ou méthodes des autres scripts !
    Après je dis ça mais si ça se trouve tu as déjà fait ça dans les épisodes à venir et j'aurais l'air bien bête :D
    Merci pour ton travail en tout cas ! C'est un super tuto.

  • @craaazyyy-6799
    @craaazyyy-6799 Рік тому

    super le tuto mais , au lieu de recréer une coroutine pour désactiver isInvicible t'aurais pas juste pu mettre isInvicible = false; après la première coroutine que tu copie colle ?

  • @killerlick9351
    @killerlick9351 Рік тому

    j'ai une question,, pourquoi lorsqu'on est dans la boucle while pour l'invincibilité , est ne boucle pas a l'infini puisque on peut pas la quitter sans avoir mis le bool sur false

  • @clemd667
    @clemd667 2 роки тому +2

    qq aurait un conseil, j'ai fais comme toi mais moi quand je me rapproche de ennemi, je ne perd pas de vie mais il le detruit, on dirait que le Collider du weakSpot et Graphics sont les meme mais j'arrive pas a regler le truc ?

  • @floperatox2306
    @floperatox2306 3 роки тому

    love you

  • @alexandrebrousse6275
    @alexandrebrousse6275 4 роки тому +2

    Super la vidéo
    Serait-il possible d'avancer la date de sortie de l'épisode 7 car on a plus de temps à consacrer à Unity à cause du confinement ?

  • @enzomarino2274
    @enzomarino2274 5 місяців тому

    Bonjour ! Pourquoi coder les dégâts dans le script du snake et pas dans celui du Player en se servant d'un tag pr le mob ? Est-ce équivalent ?

  • @allan6952
    @allan6952 2 роки тому

    Salut! Je rencontre un problème dans le contact avec l'ennemi : en gros quand je le touche je deviens invincible, mais si je reste en contact avec l'ennemi pendant les 3s d'invincibilité, alors quand je redeviens "normal" le choc n'est plus détecté malgré le fait que je sois TOUJOURS en contact avec l'ennemi après tout ce temps. Avez vous ce problème aussi ? Est-ce réglable avec le code utilisé ?

  • @siregl4787
    @siregl4787 3 роки тому

    Bonjour à tous, j'ai un problème à propos du tuto #6 dégâts des ennemis, dans la partis PlayerMovements.cs après avoir créer void Update et déplacer une partis du contenu de FixedUpdate, mon personnage (player) ce déplace beaucoup plus lentement malgré la moveSpeed à 250,je suis obliger de mettre 1000 pour qu'il ce déplace normalement (alors que précédemment cela fonctionnait bien sauf le saut qui était mal géré) Merci de vos solutions

  • @arzh5569
    @arzh5569 4 роки тому +3

    Petite question, est-ce que ce script peut être utilisé pour faire de la 3D ?

    • @TUTOUNITYFR
      @TUTOUNITYFR  4 роки тому +2

      Il est à adapter mais le principe est le même oui

    • @arzh5569
      @arzh5569 4 роки тому

      @@TUTOUNITYFR
      Super merci beaucoup ^^

    • @abdennourhaoul7655
      @abdennourhaoul7655 3 роки тому

      Ça sera génial

  • @legofilmr3987
    @legofilmr3987 3 роки тому

    Yo moi j'ai un souci mon perso prend des dégats mais fait pas l'annimation puis en plus l'ennemis est mort alors que j'ai pas touché sa tête

  • @jp-qh4fu
    @jp-qh4fu 2 роки тому +2

    tu as oublié de nous expliquer la différence entre "OnTrigerEnter2D" et "OnCollisionEnter2D" , je l'attend toujours XD

    • @TUTOUNITYFR
      @TUTOUNITYFR  2 роки тому +3

      OnTrigger c'est quand un élément RENTRE dans un autre, OnCollision c'est lu quand deux objets se touchent.

    • @jp-qh4fu
      @jp-qh4fu 2 роки тому

      @@TUTOUNITYFR ah d'accord merci

  • @edenamar1133
    @edenamar1133 3 роки тому +5

    Bonjour, j'ai un problème au tout début de la vidéo, je n'ai pas d'erreur mais quand je rentre en contact avec un ennemi ma barre de vie ne diminue pas, je ne comprends pas pourquoi. Si quelqu'un à le même problème ou sait le règler hesitez pas. Merci

    • @berbouchee1234
      @berbouchee1234 2 роки тому

      j ai le meme probleme ! t as trouvé la solution ?

    • @RpgGamingFrance
      @RpgGamingFrance 2 роки тому

      @@berbouchee1234 même problème pour moi !

    • @vagadozz
      @vagadozz 2 роки тому

      Pareille toujours pas de solution :/

    • @Miguel_lyr
      @Miguel_lyr 2 роки тому

      Hello ! j'ai commenté la ligne "AudioManager.instance.PlayClipAt(hitSound, transform.position);" et je perds bien de la vie
      je sais pas trop pourquoi, j'ai pas creusé :)

    • @ASCIO-Studio
      @ASCIO-Studio Рік тому

      Il voit si la fonction OnCollisionEnter2D(Collision2D collision)
      est bien écrite comme ça chez toi!

  • @Ludiks
    @Ludiks 2 роки тому +1

    Salut, bon le souci du soir c'est que tout fonctionnait bien et puis d'un coup sur la fin "Assets\Script\PlayerHealth.cs(4,14): error CS0101: The namespace '' already contains a definition for 'PlayerHealth' "
    Je vois pas d'où ça peut venir :(
    1ere fois que je m'arrête sur un echec :(
    Ah bha j'ai fini par trouver, pour une raison que j'explique pas trop, quand j'ai déplacé le script PlayerHealth en fait ça l'avait copié ^^
    Level 6 Complete ! Merci

  • @pyrielt
    @pyrielt 2 роки тому

    16:39 mais pourquoi on n'utilise pas juste sleep(duration) ?

  • @semahbelhaj5389
    @semahbelhaj5389 3 роки тому +2

    Merci pour cette série, mais j'ai un problème, la collision ne fait pas des dégâts au player alors que lorsque je presse "H" on a des dégats, que dois-je faire ?

    • @romandelucia4729
      @romandelucia4729 3 роки тому

      Pareil, je ne sais pas pourquoi.

    • @romandelucia4729
      @romandelucia4729 3 роки тому +3

      Enfaite j'ai compris tu vas sur ennemi puis sur graphics puis sur ennemi patrol (script) et il y a damage colision et tu mais le nombre de dégats que tu veux infliger à ton perso(j'espère que je t'es aidé...)

    • @unitywithneo
      @unitywithneo 3 роки тому

      @@romandelucia4729 Merci j'avais le même problème et c'était sa la solution.

    • @VaddyLD
      @VaddyLD 3 роки тому

      @@romandelucia4729 Merci d'avoir trouvé LA solution !

    • @swiizyfhd
      @swiizyfhd 2 роки тому +1

      @@VaddyLD j'arrive un peu tard mais ça m'a aidé merci ! :D

  • @robobob104
    @robobob104 4 роки тому

    J'ai un probleme lorsque j'ecrit HandleInvincibilityDelay ca me dit : CS0501 C# must declare a body because it is not marked abstract, extern, or partial

    • @skatheo_2804
      @skatheo_2804 3 роки тому

      salut, deso je viens seulement mtn, c'est pas handleinvicibilitydelay mais : WandleInvicibilityDelay

  • @rikituss_officiel1336
    @rikituss_officiel1336 4 роки тому +1

  • @abdennourhaoul7655
    @abdennourhaoul7655 3 роки тому

    J'ai un probleme : quand je sauvgarde mon script quelque comande ne sauvgarde pas

  • @ArchiiManiaK
    @ArchiiManiaK Рік тому

    Salut, que se passe t'il si 2 ennemies nous touchent à la même frame? On prend 2 fois les dégats ? si oui existe comment faire pour éviter celà ? merci.

    • @TUTOUNITYFR
      @TUTOUNITYFR  Рік тому

      C'est très rare, pour ne pas dire quasi impossible. Je ne crois pas qu'on puisse éviter ça

  • @thomaschevalier9626
    @thomaschevalier9626 3 роки тому

    Bonjour, j'ai un problème mon personnage ne prend pas de dégât.

  • @jordanhoc8783
    @jordanhoc8783 3 роки тому +4

    Salut, j'ai fait a la lettre le tutoriel pour les dégâts des monstres, et aucun moyen que cela fonctionne. Qui pourrai m'aider ?

    • @vivaeltarlo
      @vivaeltarlo Рік тому

      Je sais que ça fait un an mais pour ma part j'ai du désactiver le paramètre Is Trigger de ma Box Collider 2D du Graphics.

  • @monishgokulsing5903
    @monishgokulsing5903 4 роки тому +1

    dans invicibility flash il me dit not all code path return value

  • @_sayroto_
    @_sayroto_ 5 місяців тому

    pour moi, pourquoi il ne s'afiche pas le ''cadre" du canvas lorsque je le cree et c est la meme chose pour l image (juste en mode scene)

    • @_sayroto_
      @_sayroto_ 5 місяців тому

      c est pour la barre de vie

  • @ffi4447
    @ffi4447 2 роки тому +1

    J'ai problème
    J'ai mis le using.colections vérifiée lettre par lettre mais n'arrive pas à utiliser les couroutines la console me renvoie une erreur

    • @TUTOUNITYFR
      @TUTOUNITYFR  2 роки тому

      C'est : using System.Collections;

  • @Whisman_
    @Whisman_ 2 роки тому

    J'ai un probleme le IsInvicible ne marche pas quelqu'un peu m'aider ?

  • @CrisParanormal
    @CrisParanormal 3 роки тому

    est ce que le "NullReferenceException: Object reference not set to an instance" Unity est grave ?

    • @kisorito3238
      @kisorito3238 3 роки тому

      J'ai le même problème que toi et j'aimerais bien savoir aussi :)
      Par contre après avoir sauvegardé et redémarrer l'applis l'erreur a disparue, j'espère que tu a toi aussi trouver d'où venait ton problème :)

    • @CrisParanormal
      @CrisParanormal 3 роки тому

      @@kisorito3238 moi aussi j'ai redémarrer pleins de fois mais aucun effet :/ après c'est une erreur dans player health alors que j'ai tout bien re-recopier. j'ai fait un test en faisant un build et s ana rien changer alors je ne fait plus attention a sa :)

  • @DoZruser
    @DoZruser 4 роки тому

    Pour essayer, j'ai fait currentHealth = currentHealth - damage; dans la variable TakeDamage et Unity a considéré que le chemin d'accès était protégé. J'ai repris la même écriture que Tuto et là, aucun soucis. Une idée du pourquoi ? :/

    • @TUTOUNITYFR
      @TUTOUNITYFR  4 роки тому

      Ta fonction était sans doute en privée, si tu ne met pas public devant le mot clé function elle est en privée et ne peut être appelée depuis un autre script. Pareil pour les variables.

    • @DoZruser
      @DoZruser 4 роки тому

      @@TUTOUNITYFR je pensais que c'était ça mais il s'avère que le soucis est resté, que ce soit public ou private 😶

    • @canard542
      @canard542 3 роки тому

      @@DoZruser t'a reussi?

    • @matteo7125
      @matteo7125 3 роки тому

      @@canard542 je rencontre actuellement le meme problème

    • @canard542
      @canard542 3 роки тому +1

      @@matteo7125 va a la fonction current health et met public devant

  • @RpgGamingFrance
    @RpgGamingFrance 2 роки тому

    Quand je coche la case "IsInvincible" je ne peux plus bouger !

  • @saikoo1150
    @saikoo1150 3 роки тому

    Bonjour j'ai un problème à 5:28 je recopie le script et sauvegarde et voici se que unity me dit : Assets\Script\EnneniPatrol.cs(45,26): error CS1061: 'PlayerHealth' does not contain a definition for 'TakeDamage' and no accessible extension method 'TakeDamage' accepting a first argument of type 'PlayerHealth' could be found (are you missing a using directive or an assembly reference?) . Je cherche l'erreur mais je ne la trouve pas pouvez-vous m'aider ??

    • @canard542
      @canard542 3 роки тому +5

      Va dans le script PlayerHealth et rajoute public devant '' void TakeDamage(int damage) ''

    • @kacylord
      @kacylord 2 роки тому

      @@canard542 merci bro

  • @berbouchee1234
    @berbouchee1234 2 роки тому +2

    je comprend pas, quand je rentre en contact avec l ennemi il meurt instantanément sans que mon Player ne prenne de degat... j ai vérifié la hitbox de ma weakzone elle est bien plus petite... je vois ou j ai foiré. quelqu'un a eu ce soucis ?

    • @bluemope867
      @bluemope867 2 роки тому +1

      J’ai eu le même problème et j’ai rendu ma wekzone moins large et tout fonctionne comme il faut

    • @Smarteez83
      @Smarteez83 2 роки тому +2

      J'ai eu le même problème. C'était juste qu'il fallait écrire OnCollisionEnter2D avec une majuscule... 40 min pour ça !

  • @jspmoi5101
    @jspmoi5101 3 роки тому

    Salut je comprend pas un truc j ai recopié à la lettre ton tuto mais mon joueur ne prend pas de dommage quand il touche le serpent je n ai pas d erreur et j ai bien marquer onCollison2d je comprend pas pourquoi ça ne marche pas
    Problème reglé j avais juste oublié une majuscule sur le tag Player

    • @bluemope867
      @bluemope867 2 роки тому +1

      Merci j’ai eu le même problème et j’avais la même erreur

  • @roithevark1810
    @roithevark1810 4 роки тому +2

    5:31 j'ai deux problèmes voilà les messages.
    L'appel est ambigu entre les méthodes ou propriétés suivantes : 'PlayerHealth.TakeDamage(int)' et 'PlayerHealth.TakeDamage(int)'
    Le type 'PlayerHealth' définit déjà un membre appelé 'TakeDamage' avec les même types de paramètres

    • @nbdy-uh5fe
      @nbdy-uh5fe 3 роки тому

      Moi aussi
      Comment ta fait en fin de compte ?

    • @roithevark1810
      @roithevark1810 3 роки тому

      @@nbdy-uh5fe j'ai recommencer

    • @guyguy.
      @guyguy. 3 роки тому

      c'est souvent du a ton nom de ficher. Ca me la fait un moment j'ai modifier le nom et paf, ça fonctionne

  • @tenebros7748
    @tenebros7748 3 роки тому +1

    On aurait pu faire l'invicibliter dans l'animator avec un sprite vide nan ?

  • @not_shayva8627
    @not_shayva8627 4 роки тому +2

    J'ai fait exactement les mêmes script quand vidéo et je ne prend pas de dégat et aucun message d'erreur ne s'affiche

    • @bouste2701
      @bouste2701 4 роки тому +2

      J'ai eu même problème ! Je suis bien rester 30 minutes a chercher pour final découvrir que j'avais écris : "onCollisionEnter2D" a la place de "OnCollisionEnter2D" Et ettonement, aucune erreur lors de la compilation ! Ducoup je te conseil de vérifier les Majuscule et toutes les potentielle fautes de frappe si ça peut t'aider :)

    • @liviopaupe5634
      @liviopaupe5634 3 роки тому +2

      J'ai eu le même problème mais enfaite j'ai mis la fonction dans la fonction Update et ça ne fonctionnait pas, il faut la mettre en dehors!

    • @salmonofwisdom2715
      @salmonofwisdom2715 3 роки тому

      @@liviopaupe5634 Merci je galérais tu as été ma lumière

  • @mgameur8145
    @mgameur8145 4 роки тому

    S'il te plait j'ai un gros problème.
    Dans ce tuto qui est sur les dégât des ennemis, peut-tu nous montrer comment faire plusieurs type de dégât.
    exemple: on a une barre de 100 point de vie, un premier ennemie nous en enlève 5, un second, nous en enlève 10.
    J'espère que tu lira se message et que tu m'aidera.
    Sinon j'aime tes vidéo, elles m'aide énormément.

    • @TUTOUNITYFR
      @TUTOUNITYFR  4 роки тому +1

      Je l'ai montré dans cette même vidéo ... chaque ennemi peut être paramétré pour faire le nombre de dégâts que tu veux.

    • @monishgokulsing5903
      @monishgokulsing5903 4 роки тому

      @@TUTOUNITYFR hey j'ai un probleme moi aussi
      regarde mon script
      private void OnCollisionEnter2d (Collider2D collision)
      {
      if (collision.transform.CompareTag("Player"))
      {
      PlayerHealth playerHealth = collision.transform.GetComponent();
      playerHealth.TakeDamge(40);
      }
      }
      }
      il me dit prameter must be collision 2d

    • @ewgon3424
      @ewgon3424 4 роки тому

      @@monishgokulsing5903 c'est pas Collider2D mais Collision2D dans la parenthèse

  • @Daimzed
    @Daimzed 4 роки тому

    Je me demande aussi, ça veut dire quoi les points entre les fonctions, je comprend pas, exemple fonction.fonction2= true

    • @TUTOUNITYFR
      @TUTOUNITYFR  4 роки тому +1

      C'est pour accéder à un sous élément. Exemple :
      Classe.Fonction ou Classe.variable
      C'est pour définir dans quel objet on va chercher quoi. Je te recommande la série C# pour bien comprendre ce concepte

    • @Daimzed
      @Daimzed 4 роки тому

      @@TUTOUNITYFRokay ça semble simple mtn, je suis sur le coup oui mais avant tout je vais connaître l'interface de visual Studio il y a trop d'incompréhension, merci beaucoup

    • @adriensenut7924
      @adriensenut7924 4 роки тому

      c'est pour accéder aux attributs ( ou aux fonctions) publics des classes

  • @theomarchand9758
    @theomarchand9758 4 роки тому +1

    Mon personnage ne prend pas de dégât avec le serpent je sais pas pourquoi

    • @mouraddahmani6663
      @mouraddahmani6663 4 роки тому +3

      Le problème se pose avec la variable qu'on a ajouté : "public int damageOnCollision = 20;" , il faut l'enlever et remetre la ligne playerHealth.TakeDamage(20); comme ça , ainsi tout va fonctionner normalement , de toute façon t'as pas besoin d'ajouter une nouvelle variable , tu peux fixer le damage . Bonne récéption

  • @razar4043
    @razar4043 Рік тому

    Salut tes tuto son super mais pour les dégâts je préfère utiliser une animation le problème est que dès que je prends des dégâts mon animation se répète à l’infini

    • @TUTOUNITYFR
      @TUTOUNITYFR  Рік тому +1

      Il faut désactiver l'option "loop" pour quelle ne se joue pas en boucle.

    • @razar4043
      @razar4043 Рік тому

      @@TUTOUNITYFR d’accord merci de m’avoir répondu c’est super d’avoir un créateur de contenu qui continue d’aider sa communauté.

    • @user-ni8mk9ix4b
      @user-ni8mk9ix4b 11 місяців тому +1

      @@TUTOUNITYFR Bonjour, je rencontre un problème avec 2 choses :
      1 Le personnage ne prend pas dégâts lorsqu’il touche le serpent mais seulement lorsque j’appuie sur H, et au moment de clignoter, il disparait.
      2 Et lorsque je suis dans l’onglet game, le personnage prend du temps à commencer à marcher, a du mal à sauter et s’arrête parfois alors que la touche est maintenue.
      Merci d’avance.

    • @whalygaming1071
      @whalygaming1071 11 місяців тому

      @@user-ni8mk9ix4b moi aussi j'ai ses problème

  • @louisrichard4275
    @louisrichard4275 4 роки тому

    Il reste combien d'épisodes sur la série ?

    • @TUTOUNITYFR
      @TUTOUNITYFR  4 роки тому +1

      Dit dans l'épisode 0, pas de nombre défini pour le moment.

    • @louisrichard4275
      @louisrichard4275 4 роки тому

      @@TUTOUNITYFR OK merci

  • @Mathys-Dupon
    @Mathys-Dupon 3 роки тому +1

    ça y est j'en ai ras le bol, à chaque vidéo je passe 5heures à corriger une erreur;
    je suis à la lettre pourtant enfin j'en ai l'impression en tout cas
    Assets\Script\PlayerHealth.cs(24,17): error CS0111: Type 'PlayerHealth' already defines a member called 'TakeDamage' with the same parameter types

    • @forrob
      @forrob 3 роки тому

      Même erreur je sais pas comment faire non plus

  • @Daimzed
    @Daimzed 4 роки тому

    Mais qu'est ce que tu appel "Méthode" et pourquoi tu ne met ma ta fonctions dans l'uptdate.. On doit vérifier en permanence que l'ennemie face des dégâts non ?

    • @Impact_t
      @Impact_t 4 роки тому

      En gros pour faire simple méthode = fonction, et dans la vidéo il met bien la fonction TakeDamage dans l'update.

  • @Logan-it6kc
    @Logan-it6kc 3 роки тому

    Salut ​ @TUTO UNITY FR
    Juste une question d'optimisation.
    Dans le While, tu instancies deux objets Color pour les mettre à chaque fois dans la même variable. Est-ce que ce ne serait pas mieux d'en instancier un une seule fois et de juste le modifier deux fois dans le While ?
    Parce que là tu crées plein d'objets qui vont polluer la mémoire non ?

  • @damienjean3438
    @damienjean3438 4 роки тому +1

    Salut! J'ai un message d'erreur dans ma console disant:« NullReferenceException: Object Reference not set to an instance of an object» quelqu'un pourrait m'aider svp? En passant super cool ta série!

    • @jean-michel.houbre
      @jean-michel.houbre 4 роки тому

      En général, tu prends ton message d'erreur, tu le cherches dans Google en ajoutant Unity, et tu as la piste à suivre.
      Dans ton cas tu as probablement oublié de glisser un objet ou un composant dans un champ de script (SpriteRenderer du joueur peut-être ?).

    • @damienjean3438
      @damienjean3438 4 роки тому

      @@jean-michel.houbre Exactement merci beaucoup!

  • @labossdu916501
    @labossdu916501 2 роки тому

    Bonjour, j'ai suivi l'ensemble du scirpt et j'ai ce message: Assets\EnnemyPatrol.cs(36,26): error CS0122: 'PlayerHealth.TakeDamage(int)' is inaccessible due to its protection level
    quelqu'un pourrait m'aider svp?

    • @TUTOUNITYFR
      @TUTOUNITYFR  2 роки тому

      TakeDamage doit être public

    • @labossdu916501
      @labossdu916501 2 роки тому

      @@TUTOUNITYFR il est public, j'ai copié toute la procédure depuis le début

    • @Nathsum
      @Nathsum Рік тому

      Dans le script PlayerHealth il te suffit de rajouter "public" devant : "void TakeDamage(int damage)"

  • @nomegakazuto7432
    @nomegakazuto7432 4 роки тому

    Tu travailles dans quoi avec toutes ses connaissances ? :D

    • @TUTOUNITYFR
      @TUTOUNITYFR  4 роки тому +1

      Dans le développement web :)

    • @nomegakazuto7432
      @nomegakazuto7432 4 роки тому

      @@TUTOUNITYFR ah, de jeu vidéo ou application ...

    • @gaskania4006
      @gaskania4006 4 роки тому +6

      @@nomegakazuto7432 web il a dit xD

  • @amine567S
    @amine567S 4 роки тому

    svp la camera ne suive pas la character tu peux m aider

    • @nomegakazuto7432
      @nomegakazuto7432 4 роки тому

      Mon script pour la caméra :
      using System;
      using UnityEngine;
      public class CameraMouvement : MonoBehaviour
      {
      public GameObject player;
      public float timeOffset;
      public Vector3 posOffset;
      private Vector3 velocity;
      void Update()
      {
      transform.position = Vector3.SmoothDamp(transform.position, player.transform.position + posOffset, ref velocity, timeOffset);
      }
      }

    • @nomegakazuto7432
      @nomegakazuto7432 4 роки тому

      Glisse ton personnage dans Player. Le timeOffset permet d'avoir un temps entre le déplacement du personnage et la camera.
      Pour le reste c'est assez intuitif 😉

  • @imaneguendouz4883
    @imaneguendouz4883 3 роки тому

    euh juste les couleurs primaires sont le bleu le rouge et le jaune

  • @greanorgamedev1221
    @greanorgamedev1221 3 роки тому +1

    Hey, je suis vraiment bloqué
    J'ai tout fais correctement (normalement) et j'ai pluusieur erreur CS0111
    - Assets\WeakSpot.cs(8,18): error CS0111: Type 'WeakSpot' already defines a member called 'OnTriggerEnter2D' with the same parameter types
    - Assets\Scripts\EnemyPatrol.cs(18,17): error CS0111: Type 'EnemyPatrol' already defines a member called 'Update' with the same parameter types
    Par exemple, j'en ai 5 au total, j'ai cherché et pas trouvé, si quelqu'un peux m'aider :)
    Edit: j'ai suppr et recoller tout les scripts, j'ai ensuite trouvé des minuscule a la place de maj et tout est revenu dans l'ordre :)

    • @forrob
      @forrob 3 роки тому

      Même erreur je sais pas comment faire

  • @youssefmiled1425
    @youssefmiled1425 2 роки тому

    mal heureusement vous ne pourer pas peutére recopier le script parce que il est trop dépacer (visual code le l'accepte plus):(

  • @syphakusu275
    @syphakusu275 4 роки тому +2

    isInvincible = false fais exactement le contraire je suis obligé de le mettre sur true ca me fais le contraire je ne sais pas pourquoi help
    edit : j'avis oublié de mettre la négation (!) dans if(!isInvincible) quel con xD

  • @Vox-YT1906
    @Vox-YT1906 Рік тому

    Bonjour j'ai un petit probléme quand je m'approche du personnage Snake a la place de perdre de la vie sa arréte le jeu et après j'ai ce message Resolve of invalid GC handle. The handle is from a previous domain. The resolve operation is skipped.
    UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&) merci en avance de votre réponse

  • @F0Xy__
    @F0Xy__ 2 роки тому

    Un message d'erreur me dit : Assets/PlayerHealth.cs(46,51): error CS1001: Identifier expected ou encore : Assets/PlayerHealth.cs(46,51): error CS1003: Syntax error, ',' expected. alors qu'il n'y a aucune virgule je ne comprend pas.

  • @aiolia59
    @aiolia59 7 місяців тому

    Y'a encore un bug quand l'ennemie va vers le player et pousse le player on reste invincible tous le long (même après la fin du clignotement) c'est pas ouf :/
    Edit :
    j'ai fait mes petites recherches et j'ai du coup opter pour un knockback de l'ennemi, c'est beaucoup plus réaliste et plus de problème d'invincibilité:
    private void OnCollisionEnter2D(Collision2D collision)
    {
    if (collision.transform.CompareTag("Player"))
    {
    collision.rigidbody.AddForce(Vector3.left*knockBackForce);
    PlayerHealth playerHealth = collision.transform.GetComponent();
    playerHealth.TakeDamage(damageOnCollision);
    }
    }