Bienvenue à mes collègues développeurs de jeux dans une toute nouvelle vidéo.
Et comme vous pouvez le constater,
nous avons maintenant un cercle jaune.
Que fait ce cercle jaune lorsque nous lançons notre jeu ?
Vous pouvez voir que si je passe à l'intérieur du cercle jaune,
rien ne se passe et que la vitesse de l'ennemi est un peu moindre.
Si je vais dans le cercle rouge comme d'habitude,
il commence à nous poursuivre.
J'ai essayé de m'enfuir.
Je suis dans le cercle jaune,
mais il nous poursuit toujours.
Que se passe-t-il ?
Le seul moyen de gagner est de sortir du cercle jaune.
Aussi, c'est ainsi que vous vous éloignez de
l'ennemi parce qu'il a commencé maintenant il ne veut plus vous poursuivre.
Ne perdons donc plus de temps.
Commençons.
Et j'ai oublié de vous dire que vous devez valider vos modifications à la fin.
N'oubliez pas de le faire.
Commençons donc k.
Donc maintenant nous avons l'ennemi sachant
où le joueur est basé sur une certaine distance qu'il se trouve de lui.
Lorsque le joueur atteint une certaine distance,
une certaine portée de chasse,
l'ennemi le saura et il commencera à courir après le joueur.
Eh bien, il ne fait pas ça physiquement,
mais on peut voir d'après la logique et le code qu'il connaît,
comment allons-nous faire ça ?
Tout d'abord, nous allons déterminer la direction dans laquelle cet ennemi va se diriger.
Donc, si la distance est inférieure à la portée de poursuite du joueur,
je vais arrêter le débogage et je vais sauvegarder que la direction à suivre,
elle sera égale à la portée de poursuite du joueur ou à la non-alignement Eclair pour chasser le calque
à chasser position du point moins la position de transformation.
C'est donc comme la formule que nous utilisons.
Le 2 le canon et la bonne direction,
nous choisissons la position,
nous supprimons la position du joueur à chasser.
Nous soustrayons la position de l'ennemi du
joueur pour chasser la position et nous obtenons ainsi la direction.
C'est donc semblable à la façon dont nous montrons notre disparition,
vous pouvez revenir en arrière et voir comment cela fonctionne.
Maintenant, ce que nous allons faire une fois que nous connaîtrons la direction dans laquelle nous nous dirigeons,
nous allons normaliser cette direction.
Parce que nous ne voulons pas que l'ennemi soit plus rapide lorsqu'il se déplace en diagonale.
Nous normalisons donc.
Ensuite, nous allons accéder au corps rigide.
Ainsi, le corps rigide ennemi obtient la vitesse et il va
être égal à la direction pour déplacer n fois l'ennemi.
Parlez.
Gardez ça.
Revenons maintenant à notre jeu.
Voyons comment cela fonctionne.
Je vais définir la vue du jeu à côté de la vue de scène afin que nous puissions voir comment fonctionne la plage.
Quand nous serons à portée de main,
je vais lancer le jeu.
Alors maintenant que je m'approche de l'ennemi,
oui, on y va, rien ne se passe.
Pourquoi est-ce que c'est ?
Eh bien, parce que nous avons la petite erreur ici et que l'objet,
nous n'avons pas de référence à la largeur.
Pourquoi est-ce que c'est ?
Parce que nous essayons d'accéder au corps rigide ennemi,
mais nous ne l'avons pas défini.
Ainsi, le corps rigide NMI,
le point est égal à la composante de la dette, le corps rigide 2D.
On y va.
Bon, maintenant, tout devrait bien fonctionner.
Arrêtons le jeu, relançons.
Et maintenant, on se rapproche. Et voilà.
Vous pouvez voir que l'ennemi est en train de nous poursuivre.
Et de toute évidence, nous devons régler quelques problèmes,
mais cela fonctionne.
Que se passe-t-il si nous sommes hors de portée ?
J'essaie de sortir de portée.
OK. Cela ne fonctionne donc pas.
Laissez-moi tout d'abord,
au moins ça marche.
Ce n'est pas parfait, mais ça marche.
Laissez-moi régler celle-ci.
Permettez-moi de réduire un peu la gamme parce que je veux démontrer quelque chose.
Et faisons aussi la vitesse pour que nous puissions nous échapper.
Je vais diriger le jeu.
Je vais m'approcher de l'ennemi, puis je vais m'arrêter, je suis en piste.
Comme vous pouvez le voir,
l'ennemi marche toujours et finalement il frappe un mur.
Alors, quel est le problème ici ?
Le problème, c'est que l'ennemi aura toujours l'élan avec eux.
Alors je m'approche, je m'éloigne.
Et même si je ne le suis pas et que le champ de tir marche toujours sans esprit, maintenant,
ce ne serait pas très mal s'il était un zombie,
mais apparemment c'est un squelette,
donc il devrait arrêter.
Ok, je devrais arrêter de plaisanter.
Et voyons ce que nous pouvons faire.
Donc ici, ce que nous devrions faire, c'est que lorsque nous sommes à portée de main,
nous pourchassons l'ennemi.
Si nous sommes hors de portée,
la direction à suivre sera égale au vecteur 3, 0.
On y va. C'était la direction à suivre et le vecteur trois,
accord, oui, c'était le cas. Alors, sauvegardez ça.
Maintenant, lorsque nous sommes hors de portée,
nous devrions cesser de courir après le joueur.
Alors, laissez-moi savoir quoi.
Utilisons une vue différente, une mise en page différente.
Nous pouvons utiliser les deux par trois.
Vous y allez. C'est également une bonne façon de voir le moteur Unity.
Vous pouvez donc voir maintenant changer cela de trois aspects à 19 d'ici 1920 à 1080.
Maintenant, nous pouvons voir clairement la vue de la scène et la vue du jeu clairement.
Nous gérons le jeu et nous nous rapprochons du champ de chasse.
On y va.
Vous pouvez voir qu'il continue de nous poursuivre quand je suis hors de portée.
Vous pouvez voir qu'il s'arrête immédiatement.
Vous y allez. Vous pouvez voir dès que je suis là, il s'arrête.
Quand je suis dehors, il arrête de courir après.
Ok, super.
Alors, qu'est-ce que cela a fait ?
J'espère que ça vous plaira.
Maintenant, nous pouvons agrandir le champ de chasse,
car nous savons si nous nous éloignons suffisamment de l'ennemi.
Vous y allez.
Vous pouvez voir qu'il arrête de courir après les filles.
Vous pouvez désormais ajouter une couche d'intelligence supplémentaire à l'ennemi si vous le souhaitez,
vous pouvez créer une plage d'arrêt.
Par exemple, supposons que nous ayons cette gamme,
que nous avons une autre gamme.
Et si le joueur,
si nous pouvons sortir de cette portée,
le second, alors l'ennemi cessera de nous poursuivre.
Et ce sera vraiment un défi pour vous.
Alors, comment aimez-vous les transitions vers le défi maintenant, il y en a mieux, n'est-ce pas ?
Je vous ai dépourvu là-bas, n'est-ce pas ?
J'espère donc créer une variable de plage de poursuite continue.
Vous devrez dessiner cette plage à l'aide des gadgets.
Vous devez créer un booléen est à la poursuite.
C'est vrai lors de la poursuite et faux lorsque nous sommes en dehors de la plage donnée.
Enfin, vous devrez créer une déclaration else if qui vérifie si nous poursuivons et que
nous sommes à l'intérieur de la plage de poursuite continue.
J'espère donc que vous avez compris le défi.
C'est un peu dur.
Il faudra un peu de configuration,
mais je suis sûr que vous êtes à la hauteur du défi.
Mettez la vidéo en pause maintenant et passez à l'affaire Shalon.
La première chose que nous allons faire, c'est que nous allons créer une nouvelle variable ici,
qui sera la poursuite continue.
Et nous appellerons que le joueur garde la portée de Chase.
Ensuite, nous créons un booléen.
Et ici que nous allons appeler,
je vais le rendre privé ou savoir quoi,
allons le rendre public afin que nous puissions le voir et ensuite nous le rendrons privé.
Et le booléen public est à la poursuite.
Alors, la prochaine étape,
quelle était la prochaine étape et le défi que nous voyons, dessiner
, ok, donc nous allons dessiner le cercle ici.
Je vais juste prendre ça et le dupliquer.
Donc, Contrôlez D comme toujours,
rendons-le jaune.
Et ce sera la portée des pourchases.
Gardez ça.
Et maintenant, que devons-nous faire ensuite ?
Nous devons créer un booléen comme traçage avec cela.
Et d'accord, alors quand est-ce vrai ?
C'est vrai ici lorsque nous sommes à l'intérieur du champ de tir et que nous commençons à attaquer le joueur.
La poursuite est donc égale à vraie.
Alors, que se passe-t-il si nous sortons de cette fourchette ?
La poursuite devient fausse.
Mais entre les deux, nous voulons créer un si autre ou sinon, si.
Sinon, si le vecteur ou la distance entre le joueur
et l'ennemi est toujours inférieur à v0, conservez la portée de Chase.
Et donc c'est pour, c'est courir après.
Ce que nous allons faire, c'est que nous allons garder la direction telle qu'elle est.
Vous y allez.
Sauvons ça. Regardons encore une fois ce code et voyons si tout fonctionne.
Nous avons donc créé la gamme,
nous l'avons rendue jaune.
Ce qui se passe ici, c'est que lorsque le joueur entre dans la plage de chasse,
la direction deviendra le joueur à chasser.
Et ensuite, nous allons mettre la poursuite à vrai.
Ensuite, nous allons vérifier si le joueur peut sortir
ou s'il se trouve toujours à l'intérieur de la plage Keep Chase.
Et nous poursuivons,
alors nous aurons la direction de bouger et toujours dans le joueur.
Sinon.
Si nous sommes à l'extérieur,
les deux joueurs poursuivent la portée et ils gardent la portée de Chase,
alors la poursuite est fausse.
Et ce qui est génial, c'est que si nous entrons à l'intérieur du joueur, gardez la portée de Chase,
l'ennemi ne nous suivra pas car il est fausse.
Voyons donc si cela fonctionne réellement.
Et je vais augmenter la portée de Keep Chase.
Allons-y.
Oui, on y va. Je pense que c'est assez bien.
Je vais diriger le jeu.
Et maintenant, voyons si je marche à l'intérieur de la gamme Keep Chase.
Rien ne se passe.
Si je marche à l'intérieur du champ de chasse,
l'ennemi commence à courir après.
Si c'est le cas, je peux vraiment le pousser.
Si je suis en dehors du champ de chasse,
il me suit toujours.
Que se passe-t-il si je vais en dehors des deux gammes ?
Il arrête de suivre.
Et vous pouvez voir ici que la poursuite est fausse.
Donc, il ne me poursuit pas.
Quand la poursuite est-elle vraie ?
Il continue à courir jusqu'à ce que je sorte du cercle jaune.
J'espère donc que vous allez relever le défi.
J'espère que ce n'était pas trop dur.
Je sais que lorsque j'ai fait ce défi,
j'ai senti que c'était peut-être un peu trop difficile,
un peu trop déroutant.
Mais j'espère que vous avez compris l'intérêt du booléen.
J'espère que vous avez compris comment l'autre si les déclarations ici fonctionnaient.
Si vous n'avez pas reregardé la vidéo,
je pense que je l'ai assez bien expliqué,
alors j'espère que cela vous plaira et je vous verrai dans
la prochaine vidéo où nous allons réellement animer notre ennemi.
Parce que, comme vous pouvez le constater,
il est très ennuyeux actuellement.
ici là, passez une belle journée et je vous verrai alors.