Bienvenue, mes collègues développeurs de jeux.
Dans cette vidéo, nous n'avons pas beaucoup changé,
mais ce que nous avons fait, c'est que nous venons
commencer à mettre en place un système d'armes approprié.
Nous avons déplacé le mécanicien de tir
du doom player à l'arme réelle,
qui est la console Sharp.
Comme vous pouvez le constater, il n'y a rien de nouveau ici.
Nous venons de faire quelques changements.
Cette vidéo consiste à
mettre à niveau
votre projet pour que vous arriviez à un certain point.
Vous avez toutes les mécaniques de base que vous voulez,
mais il est maintenant temps de les rendre beaucoup plus efficaces.
Donc, sans plus tarder,
ne perdons plus de temps.
Et reprenons la note du projet.
0 cas.
Il est donc temps de créer un système de tir plus
avancé et professionnel.
La première chose que nous allons
faire, c'est que nous allons déplacer
tout ce qui est lié au
tir de la manette du joueur
dans un script séparé
que je vais créer en ce moment.
Si je vais dans les scripts
et que je vais peut-être rendre ça un peu plus grand.
Nous pouvons donc les voir au moins deux rangées.
Ceux-ci, d'accord, on y va.
Je vais y aller juste ici.
Je crée un dossier qui va s'appeler
le pistolet ou
appelons ça le système d'armes.
Ayez Entrée.
Et je vais créer
ici un script qui sera le
système d'armes.
Appuyez sur Entrée, attendez qu'il soit compilé.
Et on y va.
Et maintenant, un jour. Merci.
C'était juste un scénario.
Quoi qu'il en soit, je vais faire
du point de feu un enfant du fusil de chasse,
et cela ne nous permettra pas d'ouvrir le préfabriqué.
On y va, en faire un enfant, sauf ça.
Retournez dans notre jeu. On y va.
Donc maintenant, nous avons, et parfois quand
vous voulez ajouter les préfabriqués,
faire enfant des choses et faire des parents.
Parfois, il vous faudra
passer à l'étape supplémentaire de changer l'ensemble du préfabriqué.
Et la prochaine chose que nous allons faire
, c'est que nous allons ajouter
ce système d'armes au fusil de chasse.
Maintenant, le fusil de chasse va gérer toutes les fusillades.
Tout d'abord, ouvrons le système d'armes.
Et si je regarde dans le contrôleur de couche, où est-il ?
Cliquons ici.
Alors que la manette du joueur, d'accord.
On y va donc. Comme vous pouvez le constater,
nous avons tellement de scripts en ce moment.
Mais de toute façon, ce que nous voulons faire, c'est que nous voulons
bouger, ce qui devrait être une méthode distincte.
Ce que nous voulons faire, c'est que nous voulons déplacer
tout le mécanicien de tir du joueur
de la manette du joueur vers le système d'armes.
Je l'ai peut-être déjà mentionné.
Nous ne voulons pas que le joueur gère tout.
Par exemple, nous ne voulons pas que
le joueur gère la façon dont les balles volent,
et nous ne voulons pas que le joueur gère le fonctionnement des armes.
Cela dit,
je vais vous lancer un défi.
Et votre défi sera de déplacer
le tir vers le script approprié.
Donc, deux méthodes de tir allant du contrôleur du
joueur au script du système d'armes à feu.
Assurez-vous que les deux copient toutes les variables appropriées,
définissez tout en unité et testez-les,
assurez-vous qu'elles fonctionnent correctement.
Ce défi concerne donc simplement
façon dont vous mettez à niveau votre script,
comment mettre à niveau votre projet et gagner.
Parfois, vous commencez votre projet.
Vous n'avez pas le grand plan complet pour cela,
vous devez donc effectuer des ajustements.
Ce sera juste un exercice
façon de transférer les choses d'un script,
le suivant, pour améliorer les choses,
je le ferai devant vous,
alors ne vous inquiétez pas.
Nous allons nous assurer que tout fonctionne correctement.
Mais pour l'instant, mettez la vidéo en pause et relancez le défi.
Oh, d'accord, bon retour.
Alors, que va-t-on faire ici ?
Nous allons aller de l'avant et sélectionner tout cela.
Je vais couper donc Control X. Je vais
aller de l'avant et le mettre ici ou savoir quoi,
gardons la mise à jour et commençons.
Nous aurons peut-être besoin d'eux. Je vais
tout coller ici pour que vous puissiez
voir que nous avons beaucoup de choses à gérer.
Donc, ici,
nous aurons besoin de quelques
variables qui sont, laissez-moi monter.
Tout d'abord, je vais commenter
celle-ci, sauf cela.
Alors je vais vérifier ici, de quoi avons-nous besoin ?
Nous avons besoin de l'échange et de l'automatisation de la balle au point lointain.
D'accord.
Voyons donc comme arme le temps automatique entre les tirs,
tirs contrés, le point de feu. Il y va.
C'est le cas.
Les variables et je vais les coller ici.
Gardez ça.
Voyons ce que nous avons d'autre ?
Est-ce qu'on a une erreur ici ?
Non, je ne pense pas que ce soit la mécanique.
Alors, ici, qu'avons-nous d'autre ?
0. Donc, si le joueur peut jouer, maintenant,
il est évident que le fringant fait partie de
la mécanique du
joueur, c'est celui qui va s'écraser.
Nous aurons donc besoin d'un moyen pour
nous d'obtenir une référence au tableau de bord.
Alors le joueur est-il fringant ou non ?
Que pouvons-nous faire ?
Si nous faisons défiler vers le bas, nous
pouvons créer une méthode.
Et si je regarde ici,
le tableau de bord que vous pouvez voir comme privé.
Et ce que nous pouvons faire, c'est que nous pouvons créer une méthode ici.
Et ce sont des choses que nous allons utiliser de plus en plus au
fur et à mesure que nous allons utiliser ce type de méthode.
C'est donc un livre public et c'est effrayant.
Donc ici, tout ce que vous allez faire
c'est revenir.
Et j'ajouterai un point d'exclamation
car rappelez-vous comment fonctionnent les tirets.
Et parce que nous ne retournons qu'une seule chose, c'
est ainsi que nous allons l'écrire.
Maintenant, évidemment, ce n'est pas quelque chose
qui ressemble à une norme.
C'est plutôt comme des pratiques.
Ayez donc une sorte de
variable dans un script différent
auquel vous souhaitez accéder.
Comment le faites-vous ?
Eh bien, soit vous rendez la variable publique,
vous la rendez accessible à tous.
Mais le problème lorsque vous le rendez
public, c'est que vous pouvez changer.
Donc, si je rends cela public,
je peux le changer à partir d'un scénario différent,
ce qui est une très mauvaise idée.
Croyez-moi, vous ne voulez jamais pouvoir modifier des
variables dans différents scripts à partir de différents scripts.
Donc, vous ne voulez pas pouvoir faire
sortir le joueur
du gestionnaire d'interface utilisateur par
erreur, cela arrive parfois.
Un meilleur moyen est donc de pouvoir vérifier
si nous sommes fringants pour obtenir le fringant,
mais nous ne pouvons pas changer si le joueur est fringant.
Il s'agit donc d'une couche supplémentaire de sécurité et
c'est pourquoi nous utilisons toujours des champs sérialisés.
Nous aurions pu tous les rendre publics
et cela aurait été les mêmes fonctions.
Nous aurions pu les voir dans l'inspecteur et ainsi de suite.
Mais faire de ce champ un champ sérialisé signifie que nous
ne pouvons pas accéder à ces variables à partir de différents scripts,
et cela vous rapportera des dividendes plus tard au
cours de votre parcours de développement de jeu.
assurant que vous pouvez,
non seulement dans le développement de jeux,
quand il s'agit de programmation,
vous ne voulez pas de classes différentes,
variables changeantes, d'autres classes différentes.
Quoi qu'il en soit, je me devance.
Que va-t-on faire ici ?
Nous pouvons soit trouver l'objet joueur
soit obtenir un composant dans le parent.
Et nous pouvons, supprimons ça une seconde.
Nous pouvons accéder à la manette du lecteur et au parent,
et nous pouvons aller de l'avant et vérifier.
Est-ce que le joueur est un joueur fringant ou quoi,
qu'est-ce que ce joueur est fringant ?
que cette couche est fringant, c'est en mouvement.
Il y a 0 fringant,
donc nous pouvons également le retourner.
Cette méthode n'est donc plus nécessaire.
Et ce n'était vraiment pas quelque chose que j'ai remarqué.
Mais de toute façon, la couche est fringante.
Au moins, nous en avons eu l'occasion.
Vérifions simplement si
la vitesse de déplacement actuelle est égale à la vitesse.
Ok, donc on revient vrai. Et on y va.
Si nous sommes fringants,
alors nous ne pouvons pas tirer
et nous n'appellerons pas cela le tir du joueur.
Changeons les balles de tir.
On y va. C'est donc plus logique en ce moment.
Et que devrions-nous faire d'autre ?
Eh bien, évidemment, nous devons l' appeler ici
dans la mise à jour,
assurer que nous pouvons tirer.
Je vais donc simplement appeler
la méthode des balles de tir.
Et maintenant, nous devons retourner
dans Unity et tout mettre en place.
Je vais donc ouvrir Unity.
Vous verrez que le système d'armes a changé.
Et c'était tellement embarrassant.
Je n'ai même pas remarqué que c'était juste là et
j'ai complètement oublié que nous avions affiché ce fringant.
Mais de toute façon, on apprend au moins
quelque chose d'un autre type.
Ou bien, nous avons ce petit monologue des raisons pour lesquelles
nous ne voulons pas accéder aux variables.
Maintenant, ne vous inquiétez pas. Electron,
bien sûr, nous mettrons en œuvre beaucoup de
ces méthodes au fur et à mesure que nous avançons
et rendrons notre code un peu plus professionnel.
Alors, avec ça, qui les choses ont été faites ?
Allons, tout d' abord à
70 points éloignés du fusil de chasse.
Nous allons nous assurer
que cette arme n'est pas romantique et nous ferons
le temps entre les tirs environ 1 seconde, 1, pas 21.
Nous avons besoin d'une balle, donc nous allons aller dans les Prefabs,
les balles cassées et les balles de la couche.
Gardez ça.
Allons dans le doom player et appliquons toutes les modifications.
Et maintenant, je vais voir Qu'est-ce que nous avons d'autre ?
Lançons le jeu et voyons ce qui se passe.
Donc le joueur, le joueur se déplace,
mais donc le joueur se déplace et si nous le devrions,
on y va, on peut tirer.
Et si je maintiens le bouton de la souris enfoncé,
pour une raison quelconque, il ne tire pas.
123.
Oh, ce n'est pas automatique.
D'accord.
Mais le problème va tellement bien.
Maintenant, même si je maintiens le bouton de la souris enfoncé,
ce n'est pas automatique, mais le fusil tire toujours beaucoup.
Et c'est quelque chose que nous voulons résoudre car nous parlons
maintenant d'un mécanicien de tir avancé.
Ce n'est pas le mécanicien habituel de tir.
Nous devons nous assurer que notre prise de vue soit cohérente.
Donc le fusil de chasse, si nous maintenons enfoncé,
il tire sur un bouton,
mais si nous continuons à pousser, le fusil ne devrait pas
tirer autant lors du tir.
Donc, avec ça hors du chemin,
avec toute cette section, Change, scripting tout.
J'espère que ça vous plaira et je vous verrai dans la prochaine vidéo.
Assurez-vous de toujours valider vos modifications.
Et je vais faire en sorte que ce commit
déplace le mécanicien de tir
deuxième couche, l'arme réelle.
Nous y allons, nous commettons les changements,
et je vous verrai dans la prochaine vidéo.