Transcription
1. Introduction: Créer un jeu de tir spatial est un moyen classique de s'
initier à la
création de jeux vidéo. Dans ce cours, nous
allons aller de l'avant et examiner quelques mécanismes
différents, y compris un
arrière-plan de défilement. Classique pour des jeux comme celui-ci, avec différents micros
que nous pouvons activer, nous allons créer nos
propres petites explosions en utilisant le système de particules. Nous allons créer
un système de tir multiple pour aller de l'avant, nous rejoindre et apprendre à créer un jeu de tir
spatial aujourd'hui.
2. Où télécharger Godot: Très bien, bienvenue à tous.
Et si vous n'avez pas le moteur nécessaire pour
créer notre jeu ici aujourd'hui, vous pouvez vous rendre sur Godot Engine.org et vous
pouvez le récupérer
directement sur le site Web en sélectionnant l'
onglet Télécharger ici sur la page haut. Vous n'avez besoin que de la version
standard pour suivre
ce cours. La version mono prend
en charge le do dièse. Cependant, nous n'
utiliserons pas C-sharp, bien que vous puissiez le récupérer. Il n'est pas nécessaire de l'utiliser. Je n'utiliserais pas la
version standard, très bien. Ce moteur est disponible
sur Linux, Mac et Windows, ainsi que directement dans
le navigateur Web. Si tu le sais, comment as-tu réussi ? Nous pouvons voir, nous pouvons simplement
faire défiler ici un peu et vous avez
les instructions de votre scoop. En ramassant ça. Vous pouvez également le créer directement à partir du référentiel GitHub. Et comme vous pouvez le voir, il y a aussi une page sur laquelle
vous pouvez le récupérer, ainsi que la page Steam sur
laquelle vous pouvez le récupérer. endroit où vous décidez de
l'obtenir dépend entièrement de vous. Dans les deux cas.
Assurez-vous simplement de le récupérer. Et je te verrai dans la prochaine où nous pourrons commencer.
3. Configuration du projet: Très bien, donc une fois que vous aurez
ouvert le moteur pour
la première fois, vous serez accueilli par cet écran. Bien sûr, vous n'
aurez rien à l'intérieur des projets
locaux à moins d'avoir déjà fait
des choses ici auparavant. Mais nous allons cliquer sur
le bouton Nouveau projet ici. Vous pouvez
donner
un nom à votre projet et le parcourir où
vous le souhaitez. Et quand vous le faites, vous pouvez simplement cliquer sur le bouton
Créer un dossier. Et un nouveau répertoire
sera créé. Par exemple, mon jeu de démonstration. Si je clique sur Créer un dossier,
il sera échangé. Vous pouvez utiliser GL ES 3 ou 2. Cela ne devrait pas faire de différence dans ce projet en particulier. Et si vous regardez
ça à l'avenir, vous aurez deux options
vulcaines ici. Rien de ce qu'elle ne fera
vraiment différence
quant à
ce que nous sélectionnons ici. Donc pour les besoins de cela, je vais juste le laisser sur OpenGL en trois points. Oh, je vois. Il n'y a aucune raison de le changer. Et je vais déjà
appuyer sur Annuler. Créez-en un vide ici. Nous pouvons donc ouvrir ça. Très bien, maintenant que nous
avons un projet ouvert, maintenant que
notre projet est ouvert, nous pouvons aller de l'avant et nous
pouvons accéder à
l'onglet Projet ici en haut et nous
pouvons obtenir la configuration de notre projet. Donc ce que nous allons
faire, c'est aller de l'
avant et dans Config, dans l'application, nous allons choisir d'
utiliser un dare personnalisé. De cette façon,
nous pouvons envoyer nos journaux dans un dossier contenant notre nom de jeu, ce qui aura l'air un peu
plus professionnel. Si un utilisateur a besoin d'accéder
aux journaux pour une raison quelconque, si vous souhaitez
lui donner un nom personnalisé, vous pouvez le faire ici. Je ne vais pas m'embêter. Je suis d'accord pour le
laisser comme nom de projet. Maintenant, si nous faisons défiler vers le bas, nous pouvons rechercher
la section appelée display et aller à l'intérieur de la fenêtre. Maintenant, pour ce contexte
que j'ai ici, nous allons l'utiliser
comme T2 et T4 d'ici 400. C'est donc sur cela que je vais
régler notre fenêtre. Nous allons maintenant ajuster la taille
réelle de celui-ci plus tard. Mais pour l'instant, c'est sur cela que
nous créons
notre fenêtre, 224 par 400. Nous allons le régler, nous assurer
qu'il se trouve sur notre ordinateur de poche ou
le régler en mode portrait et
infrastructure. Nous pouvons le définir sur 2D et conserver
l'aspect. Maintenant que notre projet
est prêt à démarrer, nous
pouvons passer à la vidéo suivante et commencer à
faire avancer les choses.
4. Fond défilant: accord, donc la première
chose que nous allons faire est de configurer notre fond de défilement
pour notre jeu de tir spatial. Puisque notre joueur ne
va
pas faire de mouvement réel aussi loin
que de se déplacer, comme vous le verriez dans
un jeu de plateforme. Dans un jeu de tir spatial, l'arrière-plan
bouge réellement et le joueur reste immobile et se déplace
sur l'écran visible. Pour ce faire,
vous allez utiliser les textures que j'ai
incluses dans ce cours. Et vous pouvez aller de l'avant et les
intégrer à votre projet. Pour le moment, je n'
ai qu'un dossier de sprites ici. Et j'ai mon
expérience, Brendan. Et j'ai ici un dossier appelé
scenes dans lequel je vais
conserver toutes mes
scènes individuelles que nous créons ici. Le premier que nous allons
créer s'appellera World. Cela allait atteindre la scène 2D ici au niveau du nœud supérieur ou racine. Et je vais commencer
et renommer mon monde. Ensuite, vous pouvez aller sur scène ou ici et enregistrer. Ou vous pouvez appuyer sur
Control C ou désolé, Control S ou Control Shift
S pour enregistrer votre scène, je vais fermer celle-ci car j'en ai
une vide créée ici. Et on y va. Tu
devrais le faire ressembler à ça. C'est à cela que devrait ressembler notre
projet. Et vous pouvez voir ce
léger contour bleu ici. Il s'agit essentiellement de notre Canvas. C'est ce qui va
être affiché dans notre fenêtre. Ainsi, tout ce qui se trouve à l'intérieur ce rectangle bleu
sera visible. Rien en dehors de ça ne le sera pas. Donc je vais aller de l'avant et apporter
mon point PNG d'arrière-plan. Maintenant, nous pouvons simplement
le faire glisser et le
déposer comme ça. Dans notre cas, puisqu'il
va fonctionner comme un sprite, c'est parfaitement bien que
nous le fassions glisser dedans. Dans certains cas, vous
pouvez cliquer sur le bouton
plus ici et ajouter ce que
vous voulez rechercher. Dans ce cas, c'était une égratignure. Ensuite, vous pouvez simplement faire glisser l'image vers la droite dans l'emplacement de
texture ici à droite. Maintenant, je vais m'
assurer que ce sont les propriétés de configuration ici. Je vais déplacer le mien
vers la gauche, un vers le bas. De cette façon, il
remplit tout mon écran. Et maintenant, quand j'appuie sur ce bouton
Lecture ici, le bouton de scène de lecture sur le raccourci
Windows est
F. Comme vous pouvez le voir, je vais cliquer
dessus et je devrais maintenant avoir ma propre petite fenêtre et voir ceci le contexte a
occupé le tout. Maintenant, j'ai dit que nous allons ajuster la taille de cette fenêtre
plus tard, car encore une fois ,
selon votre moniteur, cela
peut sembler énorme ou extrêmement petit. On y va, j'ai mis ma fenêtre
sur l'écran. Donc ce que vous voyez juste
ici dans notre petite boîte rouge,
désolé, ce n'est pas une
petite vue de boîte rouge. qu'elle ici, c'est maintenant exactement ce que nous
voyons dans nos jeux. C'est sur le
côté droit. Donc, comme vous le voyez, cela peut être très petit ou extrêmement grand en fonction de la résolution de
votre écran. Je ne vais pas le savoir. Mais lorsque
nous modifierons la taille de la fenêtre, vous pourrez modifier
les valeurs qui s'y trouvent. Mais pour l'instant, nous pouvons voir qu'il
couvre toute notre fenêtre. Et ça a l'air bien. C'est juste que ça ne bouge pas. Ce que nous allons faire,
c'est
créer notre mouvement pour cela. Et tout ce que ça va faire
c'est descendre. Nous allons donc
créer un script. Maintenant, vous pouvez cliquer avec
le bouton droit de la souris sur notre arrière-plan ici et sélectionner
où se trouve notre tâche une ici, script joint. Ou, lorsqu'il est sélectionné, vous pouvez simplement appuyer sur le bouton de
script ci-joint en haut, comme
je le fais normalement. Quoi qu'il en soit, vous serez amené
avec ce menu ici. Nous allons utiliser le langage de script
GD. Comme vous le voyez par défaut, nous avons un script
visuel, un script pour enfants et
un script natif. Et si vous avez le Versus mono, vous aurez également une option
C-dièse. Mais pour ce cours, encore une fois, nous utilisons simplement le
script GD sélectionné, il hérite d'un sprite
car c'est le type notre arrière-plan
, le modèle. Nous pouvons simplement le laisser par défaut. Nous n'avons pas besoin de script
intégré. Et notre chemin à l'intérieur de nos
scènes, nous ne le voulons pas. Nous voulons que les
choses restent organisées. Nous allons donc créer un
nouveau dossier appelé scripts. Et c'est là que nous allons
coller notre
script d'arrière-plan et cliquer sur Créer. Très bien, nous avons donc
nos variables ici. Et nous allons continuer et en
créer un pour la vitesse de défilement. Nous allons maintenant utiliser deux-points égal et nous pouvons le définir sur un nombre. Je vais régler ce chiffre à dix pour l'instant et nous verrons si cela
fonctionne bien. Nous n'allons pas
avoir besoin de la
fonction prête que nous voyons ici. Et comme vous voyez ce que
la note ici, elle est appelée dès
que la note entre en
scène pour la première fois. Ce n'est pas ce que nous voulons faire. Ça va faire quelque chose.
Juste pour une fois. Nous allons en fait
utiliser la fonction process. C'est donc quelque chose qui peut se produire en continu avec les deux
lignes sélectionnées ici. Je vais juste appuyer sur Control
K pour les décommenter. Et nous pouvons supprimer la fonction
pass ici. Et nous pouvons appeler la position du point
automatique. J'ai compris parce que ce
sera le haut et le bas. Et nous pouvons le définir sur. Maintenant, je me
perds toujours de savoir si c'est
positif, c'est haut ou bas ou
des inconvénients de haut en bas, non ? Voyons voir, faisons plus égal à et nous
verrons comment cela fonctionne. Je vais régler ce plus
égal à notre vitesse de défilement. Très bien, nous allons commencer
et tester notre scène. Et ça descend pour, ça avance super vite. Donc la première chose que je vais
faire est de multiplier ou de faire défiler vitesse ici par delta. Et cela aidera également notre jeu à
être indépendant du cadre. Quel que soit le nombre de
frames que possède notre joueur, que devons-nous trouver avec ce jeu vraiment old
school ? Et les graphismes ne sont
pas trop exigeants ici. Mais quoi qu'il en soit,
cela devrait permettre de le faire défiler
de manière fluide. Peu importe. Si nous y
jetons un coup d'œil, comme nous pouvons le voir, cela peut également se déplacer beaucoup
plus lentement, c'est pourquoi je vais modifier cette option avant de
toucher mon écran. Maintenant,
c'est à vous de décider à quelle vitesse vous voulez
qu'il se déplace . Cela dépendra entièrement de vous et
de vos préférences. Je pense que je veux ralentir un peu la
mienne. Essayons neuf ou un
peu plus extrême. Essayons de le
couper en deux. Retrouvez-moi ici jusqu'à cinq heures. D'accord, je crois
que j'en aime cinq. Donc je pense que c'est ce que
je vais faire. Maintenant, ce dont nous avons besoin,
c'est de notre image. Tu as vraiment réséqué. Tu vois, quand ça
descend, c'est parti. Ce que nous devons
faire, c'est après avoir défini notre
position, nous pouvons le faire. Et si vous cochez ici, nous pouvons vérifier si la session self
point y. Nous pouvons vérifier si elle est
supérieure à un nombre défini. Dans ce cas, le
nombre serait de 400. Dites supérieur
ou égal à 400. Cependant, si nous prenons note ici, notes le ferment
pour supprimer l'erreur. Si nous prenons note, nous avons remarqué que notre position est en fait
au centre de notre image. Donc, si cela doit
être dépassé 400, alors nous allons toujours
voir une image en demi-partie. Nous devons donc ajouter
la moitié de cela ou
la moitié de notre
image à cela. Dans ce cas, ce
sera 600. Tout ce que nous allons faire,
c'est remettre la position de y
à ce qu'elle est actuellement, que vous pouvez cliquer sur l'
arrière-plan et que vous pouvez le faire correctement
dans l'inspecteur. Mais puisque je sais que c'est
au milieu ça devrait être 200. Et si j'entre et que je
jette un œil à Transform, mon y est définitivement à 200. Donc pour vérifier
que cela fonctionne, je vais changer
mon bonbon à 15. Si nous y jetons un coup d'œil, défilons un peu trop lentement vers le
bas, doublons ce chiffre jusqu'
à 30 pour les tests. Et nous pouvons le voir descendre et dès qu'il arrive au
bas de l'écran, il devrait être tout
en haut. Et continuez simplement à
faire défiler vers le bas. Allons-y. Allons-y. Le problème que nous
avons ici est évidemment que nous pouvons voir l'image ou l'absence
d'image derrière. Et nous pouvions évidemment
voir que cette image se termine. C'est donc
certainement un problème. Nous devons donc modifier
certaines de ces options. Et ce que
nous allons faire, c'est définir ceci sur, nous allons créer
une nouvelle variable appelée Let's set this to reset. Comment l'appelons-nous ? Réinitialiser ? Appelons-le « reset scroll ». Je vais dire moins
égal, mettez-le à 0. Maintenant, remarquez que j'utilise
export var ici. Et si vous regardez
cela à l'avenir, peut-être que l'utilisation de
la version 4.01 des modifications que vous
devrez effectuer ici est en
fait le signe avant l'exportation. Mais si vous utilisez la version trois, vous n'en aurez pas besoin. Qu'est-ce que c'est ? Ce que cela va faire, c'est sélectionner un fond
humide. Vous pouvez voir sur
le côté droit, nous pouvons modifier le
numéro de celui-ci. maintenant à nos spécificités. Il nous en faut 600 pour
celui-ci. Nous pouvons donc définir ceci, notre position y si elle est
supérieure ou égale à. Réinitialiser le scroll De cette façon, étant donné sa
coordonnée x ici, nous pouvons utiliser le même script sur un
autre qui peut avoir des nombres
complètement différents. Nous pouvons donc en faire un autre pour la barre
d'exportation, démarrer le défilement. Et avec cela, nous pouvons définir
la position de départ, qui est de 200 pour nous ici. Et remplissez ceci en
remplaçant dans notre code. C'est bon, on y va. Si c'est le cas,
avez-vous une erreur qui
s'affiche à propos d'un nœud ? Allons-y et appuyons sur le bouton d'
arrêt en haut
et ouvrons-le à nouveau,
ou rejouons la scène. Et vous devriez voir que
cela fonctionne parfaitement encore. Ce qui est génial. Parce que maintenant nous pouvons ajouter des nombres
complètement différents
avec un second ici. Je vais donc sélectionner
mon arrière-plan en appuyant sur Control
D pour le dupliquer. Et je déplace mon
second tout en haut. Je vais juste m'assurer que c'est
parfaitement réglé pour que
rien ne s'affiche entre les deux. Et maintenant, nous pouvons simplement modifier
nos chiffres ici. Notre position de départ
devrait donc être de moins 200. Et notre parchemin de réinitialisation, nous devrions avoir un signe moins. Serait-ce positif
200 peut-être. Mais maintenant, si nous allons de
l'avant et
que nous lançons ceci, nous devrions voir
apparaître comme une image continue. Et quand il se réinitialise, on ne le remarquera
même pas parce que tout va
être parfaitement aligné. Cela
ressemblera donc toujours à un défilement constant. Allons-y. Nous avons maintenant notre arrière-plan de
défilement. Encore une fois, allez-y et
réduisez la vitesse à ce que
vous voulez. Et si vous vous
demandez pourquoi nous n'exportons pas notre vitesse, simplement parce que nous
n'avons pas besoin de modifier la valeur
de vitesse pour nos deux arrière-plans. Nous pouvons simplement laisser ce numéro comme
étant le même. Nous pouvons donc venir ici et le changer en cinq maintenant. Ou si vous vouliez utiliser et, ou 20, ce que vous
voulez utiliser pour votre jeu. Tu me vois entrer et
tout fonctionne parfaitement bien. Nous avons maintenant un
arrière-plan défilant pour notre jeu de tir spatial.
5. Multiplicateur de fenêtre: D'accord, dans cette vidéo, ça ne devrait nous prendre qu'un os qui doit être assez court. Nous allons juste ajuster taille de
notre fenêtre
maintenant afin de
pouvoir l'éliminer
maintenant plutôt que de revenir
et de le traiter plus tard. Ce que nous allons faire, c'
est mettre ça dans un script global. Maintenant, cela peut également être appelé
chargement automatique ou singleton. Tout dépend de l'
environnement
dans lequel vous vous trouvez et de la personne à qui
vous parlez. Mais ils sont généralement
considérés comme la même chose. Nous sommes juste, tout dépend
vraiment, vraiment comme si le singleton
serait dans un motif de conception. Un global est une chose à
laquelle on fait souvent référence. Et ici, on
parle de prêts automobiles. Mais ce que je vais faire,
c'est
descendre dans mon biosystème ici. Sélectionnez des scripts, cliquez dessus avec le bouton droit et sélectionnez Nouveau script. Et comme c'est
un script global, je vais juste appeler
le mien global. Appuyez sur Créer. Je vais venir ici pour le projet, les paramètres
du projet. Allez dans l'onglet Chargement automatique, rouse ou ouvre le chemin du fichier. Nous allons sélectionner notre script global. Appuyez sur le bouton Ajouter pour voir le
script en cours de chargement. Il est activé, c'
est-à-dire qu'il est actif. Et le nom que nous voyons ici, vous pouvez entrer ici et le modifier si vous le souhaitez. Je vais laisser le mien
comme étant en désaccord avec le mot global et ce mot, ce nom est la façon dont nous allons accéder
à ce script plus tard. Si jamais nous avions besoin d'accéder à
quoi que ce soit, que ce soit des variables
ou non, d'autres fonctions. Ce que nous allons faire, c'est utiliser
la fonction ready ici. Et nous pouvons aller de l'avant et définir l'écran de la fenêtre du
point OS sur une taille de fenêtre. La taille de notre fenêtre est égale
à celle de notre système d'exploitation. Et nous pouvons régler cela sur
n'importe quel multiplicateur. Si vous le souhaitez, vous pouvez
venir ici et créer une variable pour le multiplicateur de taille. Et la raison pour laquelle nous le
réglons avec deux points est égal. Si vous vous demandez,
plutôt que d'utiliser simplement un signe égal, comme vous le voyez ici,
qui est également valide. Mais en utilisant juste les égaux ici, il va le mettre à deux. Cependant, si nous avec
le deux-points est égal ici, c'est aussi le mettre au strict sur le fait que deux est un entier. Donc ce serait pareil que
si on faisait ça. Seulement c'est où ils feraient
cela en écrivant une
leçon avec un int, n'est pas terrible, mais parfois vous pouvez avoir quelque chose de très long
comme un dictionnaire. Et cela
raccourcit vraiment ce tout, raccourcit tout cela
en deux
caractères de début. Nous le réglons sur deux, en plus de déclarer le
type comme étant deux. Ainsi, si nous lançons ceci, nous verrons maintenant que
notre fenêtre s'ouvre. Et maintenant je dois
redimensionner ça ici. Mais je vois que ça s'ouvre. Notre fenêtre est deux fois plus grande, ce
qui, en fonction de
votre écran, peut être beaucoup plus facile de
voir ce qui se passe et être
beaucoup plus jouable pour vous. Mais maintenant tu peux entrer
et il change
juste la taille du multiplicateur,
comme tu veux. Donc si tu veux le
réduire, tu Doug 0,75. Si vous le vouliez, si
vous êtes sur écran 720 P. Ou si vous êtes sur un écran de
Fourier, vous pouvez augmenter ce multiplicateur
à quatre fois pour obtenir
quelque chose de beaucoup plus grand. Et nous maintenons également cela, la résolution et voyons
exactement ce qu'il y a dedans et ne
sortons pas de notre boîte. N'oubliez pas, en raison de
notre réglage ici, mode d'
étirement en ayant
le mode sur 2D, en réglant notre aspect
à conserver. Très bien. Maintenant que cela
fonctionne à tout moment,
nos fenêtres sont réglées et nous
passons à des choses plus
intéressantes.
6. Configuration du joueur: Très bien, allons-y et
préparons la configuration de notre joueur. La première chose que
nous devons faire est créer une toute nouvelle scène. Vous pouvez donc le faire
en appuyant sur le bouton
plus en haut ici. Et au lieu de créer un nœud normal à D comme
nous l'avons fait pour le monde, puisque ce sera un joueur, nous voulons être un corps
cinématique 2D, donc nous pouvons atteindre l'
autre nœud ici. Et nous pourrions simplement taper cinématique et la partager
ici. Corps cinématique TD. Allez-y et sélectionnez-le. Et je suis allé de l'avant, j'ai renommé
mon lecteur et je l'ai enregistré. Une fois que vous avez fait cela, cela devrait
ressembler à ce qui suit. Entendez le mot triangle
jaune de la mère. Nous allons résoudre
ce problème dans un instant. Disons simplement
que nous n'en avons pas,
nous n' avons pas encore configuré notre zone de
collision. Donc, comme un joueur ne sait pas
comment appliquer la physique. La première chose
que je veux que vous fassiez est notre lecteur soit flou et que les fournitures soient à nouveau adaptées à
votre arrière-plan. Alors je l'apporte ici. Vous pouvez voir que le
mien n'est pas flou. J'ai
désactivé mes filtres, mais si c'est le cas, vous pouvez le sélectionner ici dans le système de fichiers. Accédez à l'
onglet Importer en haut à gauche. Et vous remarquerez le filtre ici, vérifiez et
activez, désactivez-le et importez. Sinon, s'il est activé, il sera flou comme ça. Ce qui
peut convenir à certains jeux. Mais pour le pixel art,
c'est terrible. Et vous verrez à nouveau la différence
ici lorsque je l'éteins et que je clique à nouveau sur le bouton de
réimportation. Cela fait une énorme
différence dans le pixel art. Assurez-vous donc que
cette option est désactivée toutes les textures que nous
utilisons dans ce projet. Je vais donc simplement le
supprimer d'ici, puisque ce n'est pas comme ça que nous allons
réellement l'utiliser. Et c'est ça. Je ne veux pas avoir à me soucier le
placer au bon endroit. Ce que je vais faire maintenant,
c'est sélectionner mon joueur. Je vais appuyer sur le
bouton Plus et récupérer le sprite. Et maintenant, elle va être verrouillée ici, au milieu,
là où elle devrait être. Je vais saisir
ma feuille de sprite et faire glisser directement dans la fente de
texture de mon écran. Il existe maintenant de nombreuses façons de faire une animation. Et dans ce cas, j'ai une
rupture pour chaque ligne. Nous pouvons donc voir sur la
première ligne que nous avons notre animation inactive où nous sommes un peu
comme si nous volons droit. Et puis nos
deux lignes suivantes, deux rangées
suivantes
tournaient à gauche et à droite. Donc, afin que
nous puissions l'utiliser dans un sprite normal
pour une feuille de calcul. Nous allons aller dans cet onglet
d'animation ici. Et nous allons
définir huit cadres, ce qui est horizontal à deux parce que nous avons deux colonnes. Et puis les cadres verticaux
nous avons trois rangées. Alors j'ai dit trois. Et maintenant, nous avons notre premier
et vous pouvez passer de l'un à
l'autre en utilisant le bouton cerveau
ici, comme vous le voyez. C'est ainsi que
nous allons travailler avec création d'une
couche d'animation. Plus tard. Pour l'instant, nous avons toujours
notre triangle jaune ici. Allons-y et
sélectionnons à nouveau notre joueur. Le plus, apportez un polygone de
collision, désolé, je forme la collision. Une forme de base fera très
bien l'affaire ici. Et nous pouvons simplement utiliser un rectangle. Vous pouvez aller de l'avant et l'adapter vous le
souhaitez à votre joueur. Je vais aller de l'avant
et étendre mes notes un peu comme ça. Et je vais très bien laisser le
pourboire sur le pourboire. Très bien. La dernière chose que
nous allons utiliser ici est là où nous en avons besoin, nous en aurons besoin.
Allons-y donc. Nous allons ajouter un autre élément
dans notre lecteur ici. Et ce sera le lecteur
d'animation. Qu'est-ce qui va se passer,
où nous allons finir par créer des animations et les lire à partir
de certains cas où
nous en avons besoin. Très bien, ça va le faire pour la création du joueur et
la configuration du joueur ici. Ensuite, nous allons commencer et
passer à la configuration
des mouvements.
7. Mouvement des joueurs: Très bien,
allons-y et faisons
en sorte que notre
joueur se déplace. Parce que si nous
devions jouer cette scène ici, c'est plutôt ennuyeux. Tu t'assois juste un peu là-haut. Et si nous allons sur
notre scène mondiale, et si nous appuyons sur cette icône de
chaîne ici, nous voyons que nous pouvons avoir accès à nos autres scènes
et nous allons
récupérer notre scène de joueur. Nous allons juste de l'avant et nous plaçons dans la
position où vous
voulez que votre joueur soit. Je vais placer le
mien juste là. Et encore une fois, si on l'ouvre et
qu'on y jette un œil, quand on voit que ce n'est
pas très excitant. Il bouge, mais notre joueur est un peu assis
là comme une image immobile. Nous pouvons donc aller de l'avant régler ce problème
et
le faire bouger. Nous allons voir notre joueur. Sur la scène des joueurs.
Nous allons cliquer sur ce bouton Ajouter un script
et y
ajouter un script de lecteur. Maintenant, n'oubliez pas
de mettre cela dans
votre dossier de scripts
pour que les
choses restent propres et organisées. Et allez-y et créez-le.
Et c'est ce que nous avons. Nous allons donc avoir besoin de
quelques variables ici. L'une d'elles sera
notre vélocité, et celle-ci est la principale. Nous allons avoir
besoin d'une vitesse variable. Et nous pouvons régler cela sur deux points
égal à un vecteur, mâcher. Et vous pouvez soit ouvrir les parenthèses et
mettre 0 virgule 0. Ou vous pouvez faire un vecteur deux points et le mot
est 0 en majuscules. Les deux sont exactement
la même chose et produisent le même résultat. La fonction de lecture ici
nous n'allons pas avoir besoin. Et allons-y et créons une variable supplémentaire pour notre vitesse. Et je vais aller de l'avant et
régler le mien pour régler le mien sur 100,
et nous verrons à quoi cela ressemble. Ensuite. Nous avons notre fonction
de processus. Nous pouvons décommenter cela à nouveau en sélectionnant
et en utilisant Control K. Et à l'intérieur de ceci
, nous allons
avoir nos fonctions ici. Et le premier dont nous aurons besoin est de
déplacer
la diapositive, la diapositive de soulignement et la diapositive de
soulignement. Et nous devons transmettre au moins un argument
pour que cela fonctionne. Et cet argument
va juste être notre vitesse. Maintenant, avec cela et le problème, nous allons voir une erreur. Maintenant, si nous allons de l'avant
et que vous voyez un
bougre de R T ici. Nous avons deux problèmes qui surgissent. Maintenant, ces problèmes, si nous
cliquons
dessus et que nous allons dans
l'onglet Erreurs, nous pouvons voir que delta n'a jamais
utilisé dans le processus de fonction. Nous pouvons donc simplement mettre un trait de soulignement
au début de delta. Et cela indiquera au
participant de ne pas tenir compte de cela. Ignorez le fait que
nous ne l'utilisons pas. Et notre deuxième indique
que renvoie une valeur qui n'
est jamais utilisée et que nous
n'avons jamais besoin de l'utiliser. Ce que nous pouvons faire ici c'est de
mettre un commentaire. Et ce commentaire est
juste pour cliquer dessus. Le spot sexuel dont nous avons besoin est supplémentaire. Nous allons donc utiliser un
commentaire que j'ai appelé warning, dash, ignore, deux-points, return, underscore value,
underscore ignoré. Et cela va ignorer la valeur ignorée
de la ligne suivante. Il est essentiellement
mis sur la ligne neuf. Il va ignorer
que la valeur sur dix, ou seconde erreur ici, du
déplacement de la diapositive qui est
renvoyée est ignorée. Et si nous le voulions, nous
pourrions faire la même chose pour Delta également. Nous pouvons donc le faire
avec, si nous le voulons. Nous pourrions aller au-dessus la fonction process et
nous pourrions utiliser le tiret d'avertissement, ignore, deux-points, argument inutilisé, et nous débarrasser de ce
trait de soulignement avant delta. Et nous devrions faire en sorte que
ces deux aspects soient complètement ignorés. Et ce ne
sera que pour ces deux lignes. C'est juste une chose très
temporaire qui est créée ou qui
nous donne la réponse et pour ignorer l'erreur suivante
qui précède ce commentaire. Donc vous pouvez le faire, les
avoir d'une façon ou d'une autre. Mais ça, ce sont deux manières différentes pour vous, façon
dont vous
voulez vous y prendre. Maintenant, pour le mouvement lui-même, nous allons
créer une fonction appelée mouvement. Et nous allons appeler le
mouvement au-dessus de la diapositive mobile. On va faire ici, on
va aller de l'avant et vérifier si on appuie sur notre bouton. Nous disons donc si entrée. Et pour l'instant, utilisons-le. Le point est souligné, le trait de
soulignement de la poitrine. Et le code de scan que
nous pouvons mettre ici si vous connaissez le chiffre,
vous pouvez le saisir,
mais il y a de fortes chances que vous ne le fassiez pas. Nous allons
donc simplement taper le trait de soulignement
d en majuscules. Et on peut mettre deux points. Ensuite, sur la ligne suivante,
nous ferons un point de vélocité x. Nous voulions
donc simplement accéder à
la valeur x de la vélocité. Ainsi, le premier chiffre et la touche D sont généralement associés au
déplacement vers la droite. Donc, ce que nous allons faire
ici, c'est que nous devons le placer à droite
sur l'axe des abscisses ici, et nous allons vers la droite. Ce nombre va augmenter. Ce chiffre sera
donc positif. Qu'est-ce que c'est égal ? Vitesse ? Maintenant, si on lance ça
et qu'on appuie sur la touche D, et elle, on
se déplace vers la droite et on continue à bouger. Si vous souhaitez créer un bouton sous la forme
du nom d'une action. Donc, si vous ne
voulez pas le faire, c'est continuer appuyer et à le mettre
dans la clé comme ça. Nous pouvons en fait accéder
à deux projets, les paramètres
du
projet appelés input, input mapper. Cela nous permet de créer des contrôles pour notre jeu
très facilement. Ou l'action ici, je vais
juste tourner, non ? Ajouter. Et maintenant je peux appuyer sur
ce bouton plus. Et je pourrais faire une clé. Et chaque touche que je mets ici, je la mettrai dans la touche D. Je peux appuyer sur OK, mais
je peux aussi entrer. Et si je le voulais, je
pouvais aller sur la
touche Commande et nous pouvions faire la flèche
droite si je le voulais. Donc, si je veux
prendre en charge à la fois WASD et les touches fléchées, je peux
certainement le faire. Et je n'ai besoin
que d'une seule commande. ce que nous faisons.
Et comment nous utiliserions cela comme au lieu d'
utiliser sa touche enfoncée, nous allons faire
est d'action sein. Et vous verrez apparaître votre
action et vos factures ici. Nous pouvons donc sélectionner tourner à droite. Et si nous devions lancer ça, il nous faut le deux-points à
la fin. Allons-y. Maintenant, si nous lançons cela et que
nous appuyons sur la même chose, nous avions notre touche D que nous avons assignée à l'action
tourner à droite. Nous allons aller de l'avant et
aller à droite. Et bien sûr, nous nous déplaçons dans le monde et nous
y jetons un coup d'œil. Allons-y. Donc, ce que
je veux que tu fasses , c'est que tu
essaies de pouvoir
tourner à gauche maintenant. Et comme défi supplémentaire, je veux que vous voyiez si vous
pouvez trouver comment se
faire arrêter de bouger alors que vous n'appuyez sur aucun
de ces boutons ? Bon ? Allez-y, prenez un moment,
mettez la vidéo en pause et accordez-lui une photo et un moment. Vous pouvez le
remettre en pause. Nous allons y jeter un œil et je vais vous montrer comment
je m'y suis pris. Bon, bon retour. Donc nous allons commencer par la première chose que nous allons faire, c'est dire autre chose. Donc aussi, si nous n'appuyons pas
sur le bouton droit, notre point de vélocité x
va être égal à 0, ce qui doit
nous empêcher de bouger. Donc tu vois que si on appuie sur
la touche D, on va à droite ? Et si j'arrêtais,
nous avons arrêté de bouger. Ok, donc si on n'
appuie pas sur nos
boutons , on a arrêté de bouger. Super. Maintenant, quelque chose que vous pourriez essayer c'est que vous êtes peut-être entré et que vous avez
dit, si vous
appuyez sur une action, tournez à gauche. Ce qui n'existe
pas pour le moment. Je vais devoir me
créer ici dans une seconde. Ensuite, vous accéderez au point de
vélocité x. Et si vous vous souvenez que ce que j'ai
dit va vers la droite, nous allons
augmenter en valeur. Donc en allant vers la gauche, nous allons
diminuer de valeur. Donc ça va être
une vitesse négative. Maintenant, laissez-moi créer
ce bouton très rapidement. Tournez à gauche. Et j'ai réglé ça sur mon mal. Allons-y. C'est maintenant
que tu verras peut-être que si on appuie sur D, il ne se passe plus rien. On ne peut pas tourner à droite. Mais si nous utilisons un, nous pouvons certainement tourner à gauche et nous nous arrêter, mais
nous ne pouvons pas aller à droite. Maintenant, tout ce que nous avons à
faire pour résoudre ce problème est définir sur un LFO, également appelé else-if. Donc, si nous faisons E, L, I, F sur R tourné à gauche
au lieu d'un normal, si ces deux lettres
corrigent tout dans ce code et tout dans le maintenant
fonctionne comme il le devrait. Parce que nous sommes en train de
vérifier si l'un de ces bugs ou appuyez sur
ce que je recherche. Toutes ces
exigences différentes. Bien que je sois d'accord pour dire
que c'est un peu français à deux F ça ne marche pas
vraiment ici. Et cet aspect, mais quand on vient à
faire des mouvements de toute façon, on veut généralement juste appuyer sur une
direction. Donc, si nous l'exécutons maintenant
et que nous y jetons un coup d'œil,
nous pouvons aller à droite, à gauche et nous arrêter à chaque fois. Très bien, nous pouvons maintenant jeter un œil à l'animation de notre couche. Et nous devons également
essayer d' empêcher notre joueur de sortir de
l'écran comme ça. Et il existe de nombreuses
façons le faire également. C'est bon. Je vous
verrai dans le prochain.
8. Animation de joueur: Très bien, alors allons-y et animons notre joueur. Dans celui-ci. Nous allons avoir besoin de créer
des animations pour cela. Passons donc
à notre équipe de joueurs. Je vais aller de A
à D en haut pour pouvoir jeter un œil à ce qui se passe. Et nous pouvons sélectionner notre lecteur
d'animation. C'est ce qui
retient nos animations et notre sprite ici. Comme tout ce qui se trouve à l'intérieur. Il suffit de le déclencher pour qu'il
ressemble à une image animée. Nous pouvons donc aller dans notre lecteur
d'animation, cliquer sur l'animation de ce qui
se trouve en bas. Sélectionnez Nouveau. Nous appellerons cela «
inactif ». Pour cette animation. Je vais juste le
faire durer 0,3 seconde. Je vais le régler en boucle en
bas à droite. Encore une fois, nous n'avons encore
rien fait avec les chaînes. La longueur d'arc est de 0,3. Nous appuyons sur le
bouton de mise en boucle ici pour assurer qu'il est activé. Et ce que nous
allons faire, c'est sélectionner notre sprite. Nous pouvons jeter un œil
à notre cadre ici. Et nous remarquons que nous avons ces clés qui apparaissent maintenant
dans l'inspecteur. Cela nous
permet de créer une image clé à l'intérieur de notre animation
pour tout ce que nous avons ici. Et ce que nous allons faire
rimer, ce sont nos cadres ici. Donc, si j'appuie sur cette touche, nous n'avons pas besoin d'une piste de réinitialisation, mais si vous voulez la laisser
activée, cela ne fait aucun mal. Je vais
utiliser les courbes de Bézier. Et ce cas, encore une fois, cela n'aura pas vraiment
d'importance
avec la feuille de calcul, mais
je vais continuer et cliquer sur Créer. Vous voyez donc que nous avons
peu de temps ici. Assurez-vous simplement que
votre petit marqueur se trouve au tout début. Et nous pouvons continuer et
créer cette image-clé 0. Ensuite, 0.2, je
vais créer l'image-clé pour la
transformer en image un. Si je le
rejoue en boucle,
nous pouvons voir que nous avons ce qui
ressemble à notre flamme active et qui scintille
un peu ici. Et on peut aller de l'avant et faire ça pour elle et à gauche et tourner à droite. Bien sûr, nous n'
allons pas utiliser le cadre 01 et nous allons utiliser
le prochain jeu d'anneaux. Je veux que vous essayiez de
créer vous-même
les
animations de virage à gauche et de tourner à droite. Et mettez cette vidéo en pause,
essayez-la. Revenez, je vais aller de l'avant et passer en revue
. Si vous avez eu des problèmes, j'espère que nous
réglerons certaines choses pour vous. Bon, bon
retour. Nous allons donc passer à l'animation et en
créer une nouvelle. Nous allons tourner à gauche. Et voyons quels
sont ceux
que nous avons effectivement
tournés à gauche en premier. Donc je vais venir ici, changer ma longueur à 0,3. Activez la boucle, allez
au début de
ma piste avec une image définie sur deux, je vais créer une image-clé. Il crée. Je vais passer
à SharePoint pour passer
à l'image suivante, qui est l'image trois. Super, un autre point clé. Et je vais appuyer sur Play pour mettre ça en boucle. Il semble que mon premier
cadre ait été foiré. Je vais donc simplement
revenir au début. C'est nul de mâcher et d'appuyer à nouveau sur
le bouton de l'image clé. Et on y va. Si je clique sur Play,
tout va bien. Je vais faire la même
chose pour tourner à droite. Créez une nouvelle animation. Tournez à droite. Réglez-le sur
0,3 boucle et activé
ira au début,
montez à l'image quatre. Et je vais juste reformuler
ça juste pour être sûr. Sautez jusqu'à 0 pour passer à l'
image cinq. Appuie sur la touche. C'était déjà sur
cinq, donc je dois enseigner à six et appuyer sur la touche. Allons-y.
Essayons encore une fois. Mes chiffres sont encore bizarres, donc je vais
le changer à quatre. Sautez jusqu'à 25. Allons-y. Pour une raison quelconque, nous
organisons l'animation. Le premier cadre
semble toujours un peu bizarre. Dans certaines situations. On va jouer ça
et on
y va, l'accouplement aléatoire. Maintenant, nous avons besoin que cela fonctionne
réellement dans notre script chaque fois que nous
nous déplaçons. Pour cela, nous allons
créer une nouvelle fonction. Animer ou animer plutôt, il
suffit de le ralentir
ou de le garder petit. Et nous allons appeler
cette fonction
d'animation dans notre processus,
comme nous l' avons fait avec le mouvement. Tout ce que nous devons
vérifier, c'est si notre vitesse sur l'axe des abscisses est supérieure ou inférieure à 0, parce que si elle est égale à 0,
nous ne bougeons pas. S'il est plus petit,
nous allons à gauche. S'il est plus grand,
nous allons à droite. Nous pouvons donc aller de l'avant
et vérifier si vélocité x est supérieure à 0. Ouais, ok. Donc, si
c'est supérieur à 0, nous allons continuer et nous pouvons utiliser le signe dollar pour accéder à n'importe quelle propriété tôt
ou pour obtenir notre nœud. Mais ce que je vais
faire, c'est
rendre ça un peu plus propre. Regardez-moi ici. Je vais donc revenir
à mes variables ici. Je vais le faire sur ready, var, disons un calque M, Excel et définir ce qui est égal au lecteur d'animation
dollar sign. Encore une fois, si vous êtes dans 4, je crois qu'avec un déjà là, vous aurez besoin du signe arobase. Voyons voir. J'imagine qu'on est dans trois. Cela va juste nous
générer une erreur. Nous pouvons maintenant revenir
à notre fonction d'animation. Nous pouvons simplement taper et entrer
dans player. Et il fera référence à ce nœud de lecteur
d'animation ici. Et on lui a dit de partir. Et on pourrait jouer avec des points. Et nous tournerons à
droite lorsque x sera plus grand. Donc, si nous allons de l'avant et que nous essayons cela, nous pouvons le voir maintenant s'animer. Mais maintenant, bien sûr,
nous sommes bloqués. La même situation que nous avons
eue avec notre mouvement est que notre animation tourne vers la droite, puis nous sommes
bloqués là sur la droite. Nous ne reviendrons pas à notre petite situation
d'
oisiveté ici. Donc, si vous le souhaitez,
allez-y et prenez un moment ici pour voir si vous
pouvez prendre
notre virage à gauche et nous faire revenir
à la normale lorsque nous n'appuyons sur
aucun des boutons. Très bien, bon
retour. Allons-y et attaquons-nous à cette situation. Nous allons faire comme
nous l'avons fait auparavant avec LLF. Nous allons obtenir
notre point de vélocité x. Nous allons vérifier
s'il est inférieur à,
si notre X est inférieur à 0, ce qui signifie que nous nous
déplaçons vers la gauche. Et nous allons commencer
et régler le lecteur d'animation,
donc le joueur Anime, joue. Tournez à gauche. Maintenant, nous devons trouver l'autre situation sur le cas où nous n'appuyons sur
aucun de ces boutons. Et juste comme avant que
nous puissions utiliser autre chose. Et en mode point joueur Idle. Maintenant, si nous
regardons ça,
nous allons tourner à
gauche et à droite,
et nous revenons à la normale et nous n'appuyons sur
aucun des deux. Nous pouvons jeter un coup d'
œil à cela à l'intérieur de notre monde et à quel point
nous sommes un acteur en mouvement. Et c'est tout ce dont nous avons besoin pour les
animations d'un joueur. Donc si vous voulez avancer et ajouter du mouvement pour
avancer et reculer, ce sera sur l'axe Y. Donc, si vous voulez configurer cela pour pouvoir
avancer et reculer, vous pouvez certainement le faire. Et je pense que nous pouvons aller de
l'avant et vous pouvez
ajouter cela juste pour le cas d'utilisation
spécifique. N'oubliez pas que si
vous tournez à droite, nous allons régler
notre vélocité à 0, comme nous allons le
faire pour une autre. Ce que vous feriez pour le y voir si nous faisons le
point de vélocité y est égal à 0. Et bien sûr, je vais aussi
les envoyer sur Alice. Et nous ferons la même chose que moi, si seulement nous pouvions faire
quelque chose comme avancer. Maintenant, bien sûr, nous n'avons qu'à
influencer notre vitesse. Pas pourquoi ? Nous sommes rapides, que ce
soit
positif ou négatif, allons déterminer si vous
montez
ou non , ou quand vous le faites. Nous n'allons pas
bouger à gauche ou à droite. Maintenant. Je n'ai pas la configuration de mes boutons, mais c'est essentiellement ce que vous allez faire et vous allez faire la même chose en
arrière uniquement, bien sûr, est vous assurer que vous avez correctement configuré
votre vitesse, que ce soit positif
ou négatif sur le Y. Vous pouvez
donc avancer
et reculer si vous
voulez ajouter cette fonctionnalité
à votre jeu.
9. Mouvement diagonal: Très bien, dans cette vidéo, je vais juste
vous montrer rapidement comment créer un mouvement à 8 directions. Donc, si vous voulez vous déplacer
en diagonale, vous
allez être vu. Si nous regardons ici, nous
pouvons nous déplacer vers la gauche ou la droite. Extrêmement rapide. C'est parce que
j'ai changé. Allons-y. Vous verrez ici que vous
pouvez vous déplacer vers la gauche ou la droite, ou vous pouvez vous déplacer de haut en bas. Si tu ne bouges pas vraiment. En même temps, nous voyons si je monte
et j'appuie sur la droite.
Maintenant, allons-y. Je suis toujours en train de suivre
cet angle étrange
que nous avons là. Donc, tout ce que
je vais faire c'est supprimer tous nos jeux de zéros ici. Nos boutons ne
changeront donc qu'un
seul accès, le Y supplémentaire. Nous allons prendre
notre bloc else ici qui met tout à 0. Nous pouvons supprimer cela complètement, changer notre ellipse ou bien les instructions if en une
simple instruction if. Et au sommet du mouvement, nous pouvons aller de l'avant et définir la vélocité
égale au vecteur deux points 0. Et c'est tout ce que nous avons besoin de faire pour avoir un bon mouvement en diagonale. Cela fonctionne correctement et nous
n'avons pas de problèmes étranges. Donc, si vous voulez
avoir un mouvement à 8 directions, c'est comme ça que vous pouvez aller de
l'avant et le faire. Encore une fois, c'est pourquoi nous
déplaçons nos zéros. Donc si tu te souviens d'ici, je ne reviendrais pas, non ? Nous avons également défini la vélocité y sur 0. Et quand nous montons et
descendons, nous avons réglé la vélocité x à 0. Eh bien, en
les supprimant et en mettant la vélocité égale
deux points vectoriels ici
en haut de notre mouvement. Nous pouvons aller de l'avant et
avoir un bon
mouvement dans 8 directions dans notre jeu. Donc, si c'est quelque chose que
vous voulez avoir là-dedans, c'est comme
ça que vous pouvez aller de l'avant
et l'ajouter. Maintenant, si vous remarquez qu'il y a
une chose chez les rats, lorsque vous vous déplacez en diagonale, vous vous déplacez
plus vite que si vous vous déplacez à gauche ou à droite. Donc, tout ce que je vais faire,
c'est que nous pouvons régler la vitesse égale la vitesse
normalisée par point par la vitesse. On va essayer ça. Maintenant, vous voyez que nous maintenons une vitesse
constante, que nous allions tout droit, de
côté ou en biais. Bon ? C'est le cas pour cette vidéo. C'est pourquoi il faut lancer
la fin très vite. Je sais donc que certains d'entre vous voudront
probablement un mouvement à 8 directions. Vous demande, d'une certaine manière, de moderniser un peu
votre jeu
et de ne pas rester coincé si loin dans le passé où nous n'avions que les deux directions distinctes
et nous ajoutons l'une ou l'autre. C'est ainsi que vous
ajoutez du mouvement. Et dans la prochaine
, nous
verrons comment empêcher le joueur de
sortir de notre écran.
10. Barrières de jeu: Très bien, alors bienvenue. Dans cette vidéo, nous
allons voir comment empêcher l'utilisateur de
sortir de l'écran. Comme vous le voyez, nous allons de gauche à droite. Nous allons
passer complètement l'écran, qui n'est pas ce que nous
voulons pour notre joueur, même que le fait de reculer et avancer
quittera complètement l'écran. Pour ce faire, nous avons deux méthodes
pour le faire. Nous pouvons utiliser la méthode de la barrière
invisible, ou nous pouvons vérifier la position du joueur
par rapport à vous, bien sûr, la taille
de notre projet ici. Donc, si nous voulons adopter
la méthode de la barrière, nous pouvons créer un corps statique
ici dans le monde. Créez une forme de collision. Assignez cette forme,
créez un rectangle. Si je prends juste ce corps statique, je vais verrouiller
la forme de collision ici afin de ne pas le saisir
. Alors j'ai attrapé le corps statique
et je l'ai juste déplacé ici. Je peux maintenant le verrouiller. Et si je prolonge la sensation , c'est tout. C'est tout ce que
nous aurions à faire. Et bien sûr, nous pouvons appliquer
cela aux quatre côtés. Et nous pourrions empêcher l'utilisateur de sortir
de l'écran. Bien sûr, nous pouvons
aller en bas parce que nous n'avons pas
de barrière là-bas. Mais c'est une façon de
définir cette restriction. Maintenant, pour aller sur le côté droit, nous allons continuer et
utiliser la deuxième méthode que nous pourrions utiliser pour cela. Lorsque nous tournerons à droite, nous allons vérifier
s'il y a une deuxième condition. Et ne placez pas le point x
plus grand qu'à peu près pourquoi 92. Et la façon dont je l'ai obtenu
est notre témoin à 24 et je soustrais
simplement notre sprite. Maintenant, si nous nous déplaçons vers la droite, vous voyez que nous avons cette
barrière
qui est mise dans le jeu ou
non. Tournons-nous dans cette direction. Et puis sur le
côté gauche, bien sûr, vous pouvez voir que nous avons toujours
notre animation de tour en cours. Nous ne pouvons tout simplement pas aller
plus loin sur la gauche. Il existe donc deux méthodes complètement
différentes. C'est à vous de décider. Quelle méthode souhaitez-vous
utiliser pour ce faire ? Deux à 08. Vas-y. Donc nous avons exactement la même chose, nous sommes juste
au coin de la rue. Maintenant. Vous pouvez le voir avec une seule méthode. Nous sommes toujours en train de jouer notre
animation et d'essayer de tourner. Et avec l'
autre, on s'arrête là et on
ne bouge pas du tout. Donc on ne tourne pas. La méthode que vous voulez choisir dépend donc entièrement de vous. Gardez simplement à l'esprit que si
vous voulez faire les barrières, vous devez
définir quatre barrières les quatre côtés. Si vous avez le mouvement complet, un Android avant, arrière gauche. Et il en va de même
pour votre code ici. Si vous voulez suivre la route du code
ici et faire vos vérifications, vous allez également
vérifier qu'il est positionné sur X sur votre gauche. Je n'ai pas vérifié votre
position point y pour votre avant et votre arrière. Et bien sûr, en avant, 0 sera en haut
de l'écran ici. Donc 0 ressemblerait à
quelque chose comme ça. Et puis bien sûr,
sauf 400, qui est le bas
de notre écran, nous aurions
quelque chose comme ça. Vous devez donc également faire vos
propres calculs. Donc je dirais de faire
16 pour le haut, faire 384 pour le bas. Et puis, bien sûr, sur le
côté gauche,
nous pouvons simplement en faire 16 et fonctionnalités. Comment je l'ai obtenu, l'
origine de notre joueur. N'oubliez pas que si nous
regardons notre scène de joueur est au milieu et
que le sprite mesure 32 par 32. J'en ai donc pris la moitié, ce qui en fera 16. C'est ainsi que j'ai
obtenu ces chiffres. La méthode que vous utilisez pour bloquer votre joueur
dépend donc entièrement de vous. L'avantage de faire les barrières
invisibles, bien sûr, signifie que vous pouvez toujours
le prendre et l'ajuster à tout moment et visuellement
sans problème. Bien sûr. L'autre, l'avantage de l'
autre est
que nous n'avons pas ce look d'animation bloqué pendant que nous essayons d'aller jusqu'au bout, quelle que soit
la direction. Dans ce cas, notre occurrence dépend
entièrement de vous. Personnellement, je vais
appliquer la méthode du code ici. Je vérifie ma position
dans ma cisaille de contrôle. Mais si vous voulez utiliser
la barrière invisible ou approcher avec
le corps statique, ce n'est pas grave.
11. Capacité de prise de vue: Très bien, dans la vidéo d'aujourd'hui, nous allons
voir comment créer une mécanique
de tir pour notre joueur. Et si vous tirez un
rejet sur des projectiles. Quelle que soit la façon dont vous voulez gérer,
c'est à vous de décider. Mais je pense que je vais utiliser deux projectiles ou
au moins deux points de tir ici. Donc, si vous voulez en utiliser un, vous devrez en faire la demande. Si vous souhaitez en utiliser plusieurs, vous verrez comment nous pouvons l'
appliquer à plusieurs emplacements. J'ai également plusieurs
projectiles ici. Nous avons trois versions différentes avec et sans
contour noir. C'est à vous de choisir les versions que
vous souhaitez utiliser pour cela. Et si vous voulez voir à quoi ils ressemblent avec différentes couleurs, car il n'ira pas dans
l'onglet de visibilité ici dans la
section visibilité de l'inspecteur. Une fois qu'ils sont sélectionnés, nous pouvons accéder au module et nous pouvons
modifier les couleurs ici. Donc, si vous avez une couleur
spécifique en tête, vous pouvez certainement la changer
pour celle que vous voulez utiliser. Et cela devrait vous donner une idée de ce à quoi
ils ressemblent dans les
différentes teintes. Donc pour moi, je pense que je
vais aller de l'avant et utiliser,
encore une fois, projeter sur Alt, donc sans le contour noir. Cela peut donc être mes prises par
défaut. Alors je vais continuer et maintenant que je sais
lequel je veux utiliser, je vais me
débarrasser de tous ces points et nous pouvons
créer notre projectile, voir quelqu'un créer une nouvelle scène. Nous allons créer
notre projectile. Et je vais définir cela comme un corps cinématique 2D afin que nous puissions y appliquer notre
physique. Je vais y ajouter un sprite. Pour nos chouchous du laser,
notre projectile. Je vais apporter celle que
je veux utiliser
dans l' emplacement de texture
ici sur mon écran. Nous pouvons nous débarrasser de ce
petit triangle en
ajoutant notre forme de collision. Et dans mon cas, puisque j'utilise celui-ci, je peux utiliser une forme de cercle
et la réduire. Maintenant, si vous utilisez
une forme différente, si vous utilisez le tir standard
laser boy, alors vous pouvez faire, vous pouvez utiliser le rectangle. Bien sûr, si vous
utilisez les autres, vous pouvez également utiliser une
sphère ou un rectangle, un cercle ou un rectangle, selon l'itinéraire que
vous souhaitez emprunter, vous pouvez couvrir l'ensemble ou la couverture est la seule fin de tout cela. Je vais y aller et enregistrer
ce projectile. Gardez-le, mettez ça
dans mes scènes. Sauve ça. Maintenant
que nous l'avons. Pour tirer un projectile, nous allons avoir besoin d'
une fonction de tir. Je vais donc accéder à ma carte de saisie
et créer une action de prise de vue. Et je vais
régler ça sur ma barre d'espace. Très bien, maintenant nous avons besoin que
notre sortie
projetée bouge réellement, non ? Ça ne sert à rien si on le filme
et ça ne va nulle part, ça ne nous fait aucun
bien à ce moment-là. Allons-y et
nous pouvons ajouter un script. Assurez-vous de le placer
au bon endroit
pour que les choses restent propres et propres. Les scripts
projettent le point normal GD. Et tout comme notre joueur, nous allons avoir
besoin d'une vélocité. Et je peux commencer par
un vecteur vide deux. Nous allons également avoir
besoin d'une vitesse. Et allons-y, je dirais 100 pour l'instant, nous verrons comment cela
changera plus tard. Nous n'allons pas avoir besoin de
la fonction Ready. En fait, nous pouvons utiliser
la fonction ready. C'est donc un frein à cela. Gardez-le ici, et
ajoutons le mouvement et la diapositive. Vous pouvez également utiliser move in class, mais j'ai tendance à toujours
utiliser move inside myself. Je n'ai jamais
eu besoin de déménager et Clyde et dans cette situation ça ne changera
rien de toute façon. Le collisionneur glisse est à
peu près ce qui se passe
quand deux, quand les deux corps se
heurtent. Donc, avec les diapositives mobiles définies
ici et prêtes, nous pouvons prendre la vélocité et nous pouvons saisir la propriété
y de celle-ci, et nous voulons qu'elle monte. Nous allons donc le
régler sur une vitesse négative. Maintenant, si cela fonctionne, il devrait
complètement disparaître notre écran lorsque nous l'essayons et
que nous ne le voyons pas. Donc, soit il a disparu,
soit il est trop petit. Quoi qu'il en soit, nous pouvons y
jeter un œil. Et vous pouvez voir dans notre débogueur
que nous avons 22 problèmes. Ce sont les mêmes choses
que nous avions dans notre joueur. Tout à l'heure sur notre projectile, deux commentaires
sont de retour. Je veux aussi savoir si vous
voulez vous en débarrasser. dehors de votre présence
et que vous ne voulez pas utiliser ces commentaires de manière cohérente, vous pouvez soit les ignorer, ce que je ne recommanderais pas
nécessairement, soit vous pouvez vous diriger vers je
crois que c'est dans le Rajah. Oui. Et juste un avertissement de recherche. Et sous GD script, vous
trouverez l'
argument inutilisé ici. Aussi bien que vous devriez en
trouver un pour le
retour, le plat de valeur de retour
l'a également ici. Vous pouvez donc simplement désactiver
les deux si vous ne voulez pas
placer ces commentaires de cette
manière alternative. Nous passons maintenant
à notre joueur. Et je vais ajouter
une position à D. Difficile à voir ici. Ça y est. Vous pouvez régler ce paramètre à l' endroit où vous voulez que votre
projectile apparaisse. Donc dans mon cas, je vais
juste placer le mien, je vais placer le mien Ray,
juste là. C'est très bien ça. Bien sûr. Vous pouvez vous en
approcher le plus loin possible. Je vais nommer cette position
gauche du projectile. C'est mal orthographié. Allons-y. Et je vais juste le dupliquer
et en ajouter un second. Sur le côté droit. Je vais prendre la bonne position pour le
projet Alpha. Et ceux qui
vont être mes deux points lesquels je vais tirer. Maintenant, en entrant dans notre joueur, nous pouvons créer une variable
qui a notre tir normal. Nous pouvons régler cela sur un préchargement. Et cela prendra un argument de notre projectile
vu que nous avons créé. Si nous regardons les scènes, notre projectile est normal. Allez-y. Vous pouvez copier le
chemin ou le faire glisser. Comme ça. Et ce
que cela fera c'est que lorsque notre joueur sera
amené sur la scène, il chargera également le projectile normal vu
quand nous en aurons besoin. Au lieu de le charger sur
place, il l'aura déjà. Très bien, allons-y
et nous pouvons créer une
fonction de prise de vue. Et ce que nous allons mettre ici,
c'est que nous devons
créer une instance
de notre tir normal. Ensuite, nous devons le
mettre au monde. Nous allons donc dire Créer
une nouvelle variable temporaire. Il s'est fait tirer dessus dans le cas de
Stanford. Et ce sera
égal à notre variable de
tir normale que nous venons créer en haut de l'instance de point. Il ne nous reste plus
qu'à définir la position. Et puis, eh bien, nous n'
avons pas à régler la vélocité. Nous avons déjà dit que nous
devions simplement définir la position pour tirer de notre propre chef
ou de son propre chef. Pour vous faciliter la tâche,
nous allons créer une autre barre prête en haut. À notre gauche. Nous appellerons cela position de la
chaussure gauche. Et en créerait un pour le
côté droit également. Poste. Allons-y. Sam venait ici
et nous étions choqués. Et faites la position du point pour accéder à la propriété position de celui-ci. Et nous allons régler cela sur, nous allons dire notre position de
chaussure gauche. Poste. Maintenant, nous voulons que cela n'arrive que lorsque nous
tirons notre projectile. Je vais donc simplement mettre en surbrillance
ces deux lignes et appuyer sur
la touche Tab pour les déplacer. Et je vais
rester à l'intérieur d' une instruction if disant que
si l'entrée est une action, appuyez
simplement sur ou vous pouvez aller avec juste
relâché, c'est à vous de décider. Je vais y aller avec juste
pressé et nous allons le faire. Cela arrive
donc une fois et cela ne se produit pas continuellement
tant que nous l'avons en panne. C'est la différence entre
juste crashed et action. Appuyez sur. L'action pressée
signifie que nous pouvons maintenir le bouton enfoncé pendant que
le bouton est enfoncé. Cela va se
produire de façon constante. Il suffit d'appuyer sur ce bouton
pour que cela se produise une seule fois. Quand on enfonce la
touche, ça arrive une fois. Et puis c'est tout. d'appeler la prise de vue
dans notre processus. Et si nous lançons ça maintenant, nous devrions pouvoir
appuyer sur notre bouton de tir. Oh, c'est une erreur, j'ai oublié
une chose cruciale. Nous avons défini sa position,
mais nous ne l'avons jamais réellement
ajoutée à la scène. Il faut donc prendre
note ici que nous ne
voulons pas l'ajouter au lecteur. Si nous l'ajoutons au joueur,
il se déplacera. Lorsque nous déplaçons leur
joueur vers la gauche et la droite. Ensuite, notre projectile
va se déplacer dans les airs, ce qui n'a pas beaucoup
de sens. Puisque nous ne créons pas
comme un laser pour notre vie normale, nous devons l'ajouter en
tant qu'enfant à ses parents, donc nous allons l'ajouter
au monde. Donc, dans nos Écritures,
nous allons encore, qui sera le monde. Et si vous vous demandez comment je sais que si vous
jetez un œil ici, vous voyez que nous avons ceci
comme une fonction d'arbre. Nous avons cette ligne qui sort du joueur, puis elle
monte et la première chose
qu'elle atteint son monde ici. Alors ça va chercher les parents. Et c'est
pareil avec ceux-ci,
ces postes ici sont
les parents de notre joueur. Mais notre script est
accessible depuis le lecteur. Nous allons donc écarter le joueur un seul, qui est le monde. Nous obtenons un point parent, ajoutons un enfant. Et il passera dans ce plan. Et maintenant, nous devrions
être en mesure de le voir. Très bien, donc un petit changement leur note qu'
au lieu de position, même s'il est dit positionné
dans l'inspecteur ici, et si nous le survolons,
il indique Position. Ce que nous
voulons réellement utiliser,
c' est le régler sur la position de la chaussure
gauche
point position du trait de soulignement global. Et cela vous permettra de le placer
là où nous voulons qu'il aille. Donc maintenant, si nous allons
dans notre monde et nous
jouons à ce jeu, vous voyez,
quand nous tournons, ça va là-bas et ça nous repousse
juste
parce que c'est un
peu vague de faire quelques tests pour essayer et découvrez pourquoi
nous avons remis l'échelle à une sur notre projectile. Et nous reviendrons à la
normale. Alors vas-y. Maintenant que nous avons notre
projectile en marche, évidemment nous n'en avons qu'un
seul qui
continue de nous repousser. Juste un petit peu. Bizarrement. Je vais donc prendre
mes deux positions
et les pousser un peu vers le haut. Vous pouvez lui dire d'ignorer
complètement le joueur, ce que nous pouvons envisager de faire
à une date ultérieure. Mais pour l'instant,
avançons un peu et
vous pouvez voir que nous tournons. Cela ne fonctionne pas parfaitement. Encore une fois, pour simplement passer notre fonction de prise de vue
ou de prise de vue, nous vérifions si notre
action de prise de vue est simplement d'appuyer sur. Cela n'arrive donc qu'une fois lorsque
vous appuyez sur le bouton enfoncé. Ensuite, nous créons une nouvelle
variable qui
contiendra une instance de notre plan. Qu'est-ce qu'une instance de point de
tir normale ? Ensuite, nous avons défini la
position de cela. Donc, si cette instance, l'instance de plan, nous obtenons la propriété
position de celle-ci. Nous avons défini cette position égale à
la position de la chaussure gauche, qui correspond à la position D que nous avons apportée
à notre joueur. Et nous l'avons réglé sur la position de la chaussure
gauche, position soulignement global
canard. Ensuite, nous ne verrons rien si nous ne l'
ajoutons pas dans le nom. Et nous voulons l'ajouter
à notre parent joueur, qui est notre monde. Notez qu'ils vont
vouloir obtenir ce nœud, récupérer ses parents, puis ajouter un enfant et ajouter notre instance de plan. En tant qu'enfant de ça. Nous allons entrer
ici et comme nous avons deux postes, je vais juste en
créer un deuxième. J'ai donc une photo in situ. Nous allons maintenant placer le second
sur notre autre position, qui est notre tir droit. Et assurez-vous que nous accédons au
plan numéro deux, ceci. Ensuite, nous devons nous
assurer que nous l'
ajoutons également à
notre scène. Donc on va se faire tirer dessus sur le rôle
des parents et des enfants. Et quand nous jouerons à ce jeu,
nous devrions maintenant tirer sur nos deux
projectiles en même temps. Comme vous pouvez le voir, si nous
développions le bouton, nous pouvons obtenir un grand nombre de ces cellules. Maintenant, c'est
à vous de décider si vous voulez que cela soit intentionnel dans votre jeu ou non. Si vous voulez ajouter un certain
type de refroidissement à cela, pouvez facilement l'ajouter également,
juste en vérifiant si
le joueur peut tirer. Sinon, nous ne les
autorisons pas à tirer. Allons-y. Nous sommes désormais dans l'incapacité de
tirer certains projectiles. Et encore une fois, vous pouvez créer
la couleur choix et
voir votre projectile simplement en changeant la modularité à l'
endroit que vous voulez. Donc, si nous le changeons pour l'écran et que nous venons ici
et que
nous tournons des livres, nous devons venir
ici et tourner. Nous avons maintenant un projectile vert. Vous pouvez donc créer la couleur
que vous voulez. Vous pouvez leur faire deux
couleurs différentes si vous le souhaitez. Cela dépend entièrement de
vous et de ce que vous voulez faire. Mais c'est ainsi que nous pouvons ajouter une mécanique de tir à
notre petit jeu de tir spatial.
12. Créer des puissances: C'est bon, Welcome. Dans cette
vidéo, nous allons passer création de nos power-ups et les
faire apparaître
dans le monde. Et la raison pour laquelle nous
allons nous attaquer avant d'
atteindre l'ennemi, c'est simplement parce que les
ennemis vont
utiliser efficacement le
même système que celui que nous pouvons introduire avec des power-ups sans le confondant avec toute hernie
IA ou comportement, que la première chose que nous
devons faire avec le pouvoir, bien sûr, est
de créer notre pouvoir. Créons une nouvelle scène. Nous allons sélectionner Autre
et en faire un corps cinématique. Je vais le renommer en notre haut. Il va avoir besoin d'un sprite, bien
sûr, parce que nous
devons montrer ce que sont les images. Nous allons avoir
un lecteur d'animation. Que pouvons-nous faire d'autre ? Nous pouvons le régler sur, nous
allons avoir besoin d'une zone. Et cette zone aura
sa propre collision. Maintenant, je sais que nous avons ce
triangle jaune sur le powerup, mais nous n'avons pas à nous inquiéter à ce
sujet parce que nous n'en avons pas besoin pour avoir
une forme de collision. Ce dont nous avons besoin, c'est que la zone ait une forme de collision afin que
vous puissiez la détecter lorsque notre joueur entre dans la zone
ou interagisse avec elle. Et pour la forme de collision, je vais simplement la définir
sur un rectangle. Ok, pour notre sprite, nous pouvons aller de l'avant et faire glisser
notre feuille de calcul. Sprites, mettez-la sous tension, mettez-la en ASC, nous avons des
boucliers de santé, de la vitesse, de l'animal t. Maintenant, nous pouvons régler cela bien sûr huit images
et il va traverser. Nous en avons six en travers, et nous en avons quatre verticaux. Et maintenant, nous pouvons simplement utiliser
le lecteur Animation pour créer nos images. Et si vous ne vouliez voir
apparaître
qu'une seule de ces couleurs , vous ne pouvez certainement pas. Sinon, nous allons
l'animer pour qu'il boucle entre toutes ces couleurs passe en
boucle entre toutes ces couleurs
et qu'il sonne comme un petit flash
arc-en-ciel. C'est à vous de décider de la façon dont
vous voulez procéder. Mais c'est tout ce que nous avons à
faire ni à mettre en place notre pouvoir. Allez-y et sauvegardez cette scène. Ensuite, dans la vidéo suivante, nous allons aborder la création des animations. Et je suppose que
nous avons configuré notre code. Puisque la majorité d'entre elle en
ce moment ne
sera que l'animation.
13. Animer des Power Ups: Très bien, allons-y et passons à l'animation de nos power-ups. Allons-y et sélectionnons
le lecteur d'animation. Je vais sélectionner Nouveau
dans mon animation. Je vais sélectionner Santé. Et maintenant
qu'il dure 1 seconde, je vais le mettre en boucle. Je vais régler
mon snap à 0,15. Maintenant, vous pouvez toujours régler
ce paramètre sur ce que vous voulez. Comment l'application VR vous demande si
les choses bougent pour vous. Pour moi, je vais
utiliser 0,15 et je vais utiliser l'image 0 pour ma première
image ici. Appuyez sur Créer. Je vais doter jusqu'
à 0,15 s cadre un. Comme vous le voyez, il
va avancer, réservé le cadre sur le snap, ainsi que le cadre et
mon numéro ici pour que
je puisse continuer à appuyer sur les touches. Et maintenant, nous avons
notre configuration de santé. Donc, si je joue ça, nous avons cette
santé avec un peu de flash arc-en-ciel sur le texte. Encore une fois, si vous ne le souhaitez pas, vous pouvez simplement le définir comme une image pour l'
ensemble de l'animation. Mais c'est à toi de décider. Personnellement, j'aime bien l'arc-en-ciel, la commutation RVB arc-en-ciel. Ça arrive. Mais bien sûr, si tu ne le veux pas
ou si tu ne le veux pas, tu n'es pas obligée de l'avoir. Et nous allons continuer et
créer la même chose pour nos autres animations.
Je vais arrêter ça. Passez à l'animation nouvelle, et nous avons des boucliers. C'est. Ok ? Et notre cadre
commencera à 6, retour ici à 0. Insérez cette clé. Devin sera notre 0,15. s'assure qu'il est en boucle. Et cela va
redéfinir cela, 67891011. Et si nous jouons ça, nous
avons nos animations de bouclier. Fantastique. Nous n'en avons donc que
deux autres à créer ici. Ce sera notre vitesse, soit 0,15. Bouclez-le, revenez à
0, cetera, animation. Cadre 12. Montez pour 13. Allons-y. Nous pouvons le
lire pour le revoir. C'est. Ça a l'air génial Et notre dernier est
un multi-Snap, 0,15. Luke, l'animation. Retournez au début. Commencé sur l'animation 18. Supprimez la dernière image
très rapidement et jouez-la. Allons-y. Nous avons une belle
animation qui va avec ça. Et juste comme ça,
nous avons créé toutes nos animations
pour nos bonus. Maintenant, bien sûr, si vous ajoutez plus à cette feuille de sprites
et que vous créez les vôtres, bien sûr, plus d'animations. Utilisez plus, créez plus de bonus. Je vais juste y
aller et garder ça. Et nous pouvons nous lancer dans
notre script de mise sous tension. Maintenant, ce que nous
allons faire
pour que cela fonctionne
dans le futur, c'est
créer une nouvelle fonction appelée créer de la puissance. Et cela ne nécessite qu'
un seul argument. Nous
allons dire que c'est un argument très serré. Et nous pouvons l'attraper
sous forme de ficelle. Encore une fois, nous n'avons pas besoin de mettre cette chaîne deux-points ici. Tu pourrais juste être serré. Cependant, nous devons nous y
habituer car dans les projets de plus grande envergure, cela va nous donner une légère
augmentation des performances. Casting de toutes nos variables
différentes ici, variables,
arguments, paramètres. C'est donc quelque chose à quoi nous
devrions nous habituer. Donc, ce que nous allons faire ici pour créer des power-ups,
c'est
définir notre variable à partir de serré. Nous allons donc
avoir un, notre type. Nous allons définir notre type
est égal trop serré. De cette façon. Ce pouvoir spécifique
saura quel type de pouvoir
mais est ce qui sera
utile lorsque nous récupérerons nos pouvoirs plus tard et
interagirons avec lui. Et la seule autre
chose que nous allons faire est de programmer notre animation. Vous allez récupérer
le lecteur d'animation. On va lancer le jeu. Et nous allons juste
passer à côté. Et c'est tout ce que nous avons besoin de faire
pour que les animations fonctionnent ici. Donc, chaque fois que nous transmettons quelque soit notre type, c'est
ce qui va fonctionner. Donc, par exemple, juste à des fins de
démonstration ici, nous allons créer puissance et nous l'appellerons. Nous allons le passer et dire santé. Et si nous testons cette scène, nous pouvons voir qu'elle est animée et que c'est notre amélioration
de santé là-haut. Et si nous devions
changer cela en, disons vitesse, réessayez. Nous avons notre
bonus de vitesse là-haut dans le coin et c'est de l'animation. Tout
fonctionne donc comme prévu. En ce qui concerne l'
animation à entrer. la vidéo suivante, nous allons
continuer et donner notre pouvoir, peu de mouvement et créer un observateur pour qu'il apparaisse
dans notre monde au hasard.
14. Puissance de frappe: Dans cette vidéo, nous
allons créer le mouvement de
notre Pouvoir de l'Habitude depuis le haut de l'écran et se
diriger vers le joueur. Pour ce faire, nous allons avoir
besoin de quelques-uns de nos éléments
standard ici. Le premier étant la vélocité
ajoutée à notre power up. Jusqu'à présent, la vélocité deux-points
est égale au vecteur deux point 0. Nous allons également avoir
besoin d'une vitesse. Nous pouvons régler cela sur,
je vais utiliser 200 pour ce processus, nous devons passer notre mouvement et glisser avec la vélocité comme
premier argument. Et pour que nous soyons prêts, nous pouvons dire vélocité
point x point y parce que nous nous déplaçons
verticalement égale vitesse. Maintenant, nous utilisons un positif
parce que nous descendons. Si nous faisons du négatif, ce
serait
augmenter à moins que je ne les fasse reculer. Nous verrons dans une seconde et
testons notre scène. Et voilà,
en descendant notre écran. Je les ai donc dans
la bonne orientation. Très bien, maintenant nous les
avons. Je vais aller de l'avant et
récupérer mes deux commentaires de
la part de mon joueur. Et je vais les transmettre à
mes Power Apps ici. Evitez toute confusion. On y va. Et maintenant, nous avons
le mouvement pour la montée en puissance, et nous avons notre
pouvoir d'animation. Nous devons réellement le
faire apparaître dans le monde. Pour cela, je vais
créer une nouvelle scène, sélectionner Autre pour mon nœud. Et je vais simplement
utiliser le nœud de base que vous trouverez
tout en haut. Et ce sera par géniteur. Je vais le
renommer Spawner. Ce guetteur
aura un compte à rebours. Maintenant, la durée pendant
laquelle vous
voulez le régler dépend
entièrement de vous. À cette fin. Je vais juste le régler sur trois secondes et activer le
démarrage automatique sur ma scène. Spider.js PEUT ajouter un nouveau
script, mon générateur. Assurez-vous qu'il se trouve dans
le bon dossier. Et maintenant, nous pouvons créer l'application
de liaison de nos bonus. Nous ne voulons pas que les bonus apparaissent
sur toute la carte, n'est-ce pas ? Nous ne voulons pas placer
tous nos power-ups à la main. Et vous allez peut-être dépasser
de 4 000 pixels notre
scène réelle ou n'importe quoi d'autre. Nous voulons réellement le faire
apparaître dans le monde. Nous voulons qu'ils soient répartis au hasard. Les
pouvoirs obtenus à chaque fois sont donc différents. Ce n'est jamais pareil.
C'est vraiment faire ça. Nous allons créer
quelques variables. Nous allons en créer un
qui contiendra notre liste de bonus. Dites liste des power-ups. Ce sera un tableau,
un tableau de chaînes de pool en
particulier, qui va juste
maintenir la santé. Boucliers. Notre vitesse, et multi exactement les
mêmes noms et orthographes des animations
que nous avons utilisées précédemment. Nous n'avons pas à nous soucier de
la fonction du
processus ou de la fonction prête. La seule fonction
dont nous devons nous préoccuper ce moment est notre minuterie. Et quand notre truc arrive L. Je vais donc
sélectionner le minuteur, l'onglet nœud ici en haut. Double-cliquez sur timeout
pour vous assurer que spawner est sélectionné et appuyez sur
le bouton de connexion. Maintenant, nous aurions pu
le connecter par code. C'est vrai, mais c'est aussi
la manière la plus simple de le faire. Si vous êtes nouveau dans l'utilisation
d'une partie de ce code sur le délai d'expiration. Et la première chose que nous devons
faire est d'appeler randomize. Et cela va
randomiser la graine et nous empêcher d'avoir le même résultat à
chaque fois. Parce que si nous ne le faisons pas, notre semence restera la même. Et par exemple, nous
pouvons obtenir une vitesse de bouclier, vitesse de bouclier de santé
multiple, une vitesse de bouclier de santé multiple, etc. Et ce n'est pas très aléatoire. Ce n'est pas très excitant non plus. Nous allons donc le rendre
aléatoire chaque fois que le minuteur expire. Et nous allons avoir
besoin d'une variable qui rend notre pouvoir obscène. Dites r est égal à recharger. Et nous allons introduire notre
pouvoir obscène. Maintenant que nous l'avons obtenu
juste après avoir aléatoirement, nous pouvons créer une instance
de puissance de barre d'arsine. Est égal à notre instance de point haut. Maintenant que nous avons une
instance de notre scène, nous pouvons
définir la position de l'endroit où
vous voulez qu'elle s'étende. Maintenant, si nous passons par le haut, nous voulons que ce soit
aléatoire ici, au hasard au-dessus. Maintenant, si nous jetons un coup d'œil à notre
projet et si vous vous en souvenez, vous allez voir notre exposition. Notre largeur n'est que de 224. C'est donc avec cela que nous
devons travailler. Nous allons donc dire que le trait de soulignement de position
var x est égal à Randy, qui est un entier aléatoire. Et si nous faisons un signe de
pourcentage
suivi d'un chiffre tel que sept, cela nous donnera un nombre
aléatoire compris entre 06. Donc, si nous faisons 224, cela nous donnera un
nombre aléatoire entre 0223. Maintenant, nous pouvons toujours changer cela. Par exemple, nous pourrions faire
quelque chose entre 0201, mais nous pouvons également ajouter
23 autres. Cela va maintenant nous donner
un nombre compris entre 23224. La raison en est qu'on
va avoir notre numéro. Supposons par exemple que nous obtenons 0, ils sont sélectionnés. Nous allons ensuite
ajouter 23 à cela. chiffre le plus bas que l'
on puisse avoir était donc de 23. Et le
chiffre le plus élevé que nous pouvons obtenir est puisque 200 est en haut de notre liste, soit 200 plus 23. Donc, vous voulez décider où vos spawns
fonctionneront à vous. Pour l'instant. Je vais juste aller de
l'avant et utiliser 24. Maintenant que nous avons une position, nous devons augmenter notre
pouvoir aléatoire qui est créé. Nous allons
donc travailler de la même manière. Nous allons dire que Var
Hour est égal à Randy. Et nous allons
transmettre un autre chiffre en utilisant le pourcentage. Seulement. Cette fois, nous allons utiliser la taille de notre liste Power Apps. Maintenant, ce que la taille va
faire , c'est que cela va nous
fournir un certain nombre de
longueur de notre tableau, combien d'éléments se trouvent ici. Donc 1234, ce qui signifie que
nous allons obtenir un
nombre compris entre 03, ce qui fonctionne pour nous parce que lorsque nous
parlons d'un indice, nous avons 0123, n'est-ce pas ? Nous avons commencé à 0. La taille nous
donnera donc le chiffre parfait. Et si nous devions ajouter
d'autres choses ici, comme, je ne sais pas, allons-y avec une
explosion, non ? Alors. Nous n'avons pas du tout besoin de modifier
notre code. Nous pouvons simplement modifier
ou simplement ajouter un nouvel élément à
notre liste d'applications Power. Allez sur notre scène de mise sous tension
et créez une nouvelle animation, et tout ira bien. Nous n'aurons pas à toucher à
notre code. Maintenant que nous avons la position,
nous voulons qu'elle la génère. Et la puissance ou la puissance que nous voulons
montrer et afficher dans le jeu devrait
réellement définir ces deux éléments et les ajouter à
notre scène pour être visible. Donc, pour ce faire, nous pouvons obtenir notre pouvoir juste ou un exemple
de notre pouvoir ici. Nous allons définir la position. Nous voulons la propriété x de cette propriété. Nous voulons donc définir l'exposition
de cela en fonction de notre position. Souligner x, quel
que soit ce nombre aléatoire. Maintenant, si nous regardons
notre script de mise sous tension ici, souvenez-vous que nous avons
créé, créé une fonction appelée
create power up, et que nous transmettons un type. Ce type sera le
pouvoir que nous transmettrons. Le type de puissance
sera donc l'un d'entre eux ici, qui porte également le même
nom que nos animations. Nous allons donc également jouer une animation basée sur ce
que nous transmettons. Nous pouvons donc passer au pouvoir. Dans notre cas,
nous allons
appeler « créer de l'énergie ». Et cela ne demande qu'un seul argument. Et cet argument
va être notre force. Et il ne doit pas s'agir
d'une majuscule B minuscule. Allons-y, très bien. Nous avons donc maintenant notre
position en cours de définition. Nous avons
défini le type de puissance et notre animation
devrait être jouée. ne nous reste plus qu'à
ajouter cela à notre scène. Et comme notre géniteur
ne bouge pas ou quoi que ce soit d'autre, nous l'avons ajouté directement
à notre géniteur. Nous disons « ajouter du pouvoir aux enfants ». Et maintenant, si nous
devions jouer
la scène de notre géniteur ici et y jeter un œil. Oh, c'est ma faute. C'est une augmentation de puissance,
pas une puissance de fluage. Très bien, sauvegardons ça et retournons tester
la scène à nouveau. Chaque fois que ce temps
expire, on devrait voir. Très bien, une fois que tu es
plus petit ici, j'ai oublié comment ça nous
donne un chiffre. Nous devons encore
accéder à ce que c'est. Nous devons donc entrer dans notre, notre, notre liste X. Et l'indice que nous allons
transmettre en tant que puissance. C'est mon erreur. Je me suis un peu
devancé. Maintenant, si nous allons de l'avant et le
testons, nous devrions maintenant voir nos
pouvoirs apparaître dans une animation. Ce sont des boucliers. Et nous attendons à
nouveau la minuterie, leur vitesse. C'est une autre vitesse. Et nous voyons que c'est
complètement aléatoire. Chaque fois que nous avons
trois têtes d'affilée, c'est beaucoup de vitesse pour notre personnage. Il y a
un autre bouclier. La vitesse, il y a
beaucoup, beaucoup au milieu, il y a une vitesse de tir
multiple. Nous n'avons pas
trop de problèmes de santé en ce moment. Il y a un vaisseau, mais nous recevons
beaucoup de boucliers, ce qui pourrait être bien. Il y a un Suédois. C'est une autre vitesse
dont on parle beaucoup. Pouvons-nous avoir une santé ici, saisie ? Qu'
est-ce qu'on obtient un X ? On a eu un multi. accord, donc apparemment
nous n'allons pas obtenir santé
ici pour nos bonus, ce qui est malheureux,
mais c'est aléatoire. Il apparaîtra, croyez-moi, tout dépend de l'
orange à ce moment-là. ne nous reste plus qu'à aller dans notre monde et notre petite icône en forme de
chaîne ici et ajouter notre géniteur dans
la scène. Et on y va. Nous avons maintenant des bonus
qui apparaissent dans notre jeu. Ils ne font
rien pour le moment, mais ils apparaissent. Et nous pouvons toujours ajuster notre minuterie en fonction de la façon dont nous voulons que
cela se passe à l'avenir. Il y a une bonne
santé pour nous. Maintenant, un problème que nous
allons avoir ici. L'un des problèmes ici est notre mise en puissance. Parfois, nous ne voulons pas qu'il apparaisse
toujours, qu'il s'allume. Nous ne voulons pas qu'il soit
activé toutes les 20 secondes, par
exemple, ou
toutes les deux secondes. Je voulais parfois que nous n' obtenions pas de puissance et
parfois nous le faisons. Donc pour quelque chose comme ça, si tu veux avoir cette chance
aléatoire là-dedans, juste pour ajouter un peu plus de
hasard à ton jeu. Ensuite, nous pouvons créer
une autre variable appelée allons-y. Disons
que c'est une chance. Et nous allons le définir à nouveau
comme un entier aléatoire. Et nous pouvons transmettre un chiffre
d'un pourcentage de deux. Et maintenant ça va
dire 0 ou un. Donc on peut dire 0, ça ne
dépense rien, et c'est le cas. Pour cela, nous pouvons égaler le hasard. Je vais dire 0. Cela va passer et
sur l'un d'eux va
réellement générer la puissance de ce dont
nous avons besoin pour exploiter cela en
un de plus. Allons-y. Allons-y. Donc maintenant,
nous n'avons pas toujours de mise sous tension. Donc pour montrer ce
loyer Wassup sous le 0, je dirai pas de puissance. Allons de l'avant et découvrons notre monde et nous pouvons
jeter un coup d'œil à cela. Vous voyez, nous devons mettre sous tension
cette fois-ci et si nous regardons notre sortie tôt ou
tard, nous devrions atteindre un 0. Allons-y. Aucune alimentation. Encore aucune alimentation. Trois affaires sans pouvoir d'affilée. Vous pouvez donc déjà voir
que même si nous avons un minuteur court, puisqu'il y a 5050 chances ici, nous réduisons vraiment
le potentiel. Mais en même temps, vous pouvez voir que nous
obtenons également de nombreux pouvoirs. Donc, si vous
voulez changer cela par, je dis une chance de 10 %, alors nous pouvons venir ici
et nous pouvons dire dix, non ? Nous pouvons définir ce nombre sur dix chiffres, donc de 0 à 9. Tout ce que nous avons à faire
c'est de venir ici. Vous pouvez régler ce nombre
sur le nombre
que vous voulez. Ça n'a pas d'importance. Nous l'avons donc défini sur 0. Par exemple. Nous pourrions simplement passer
les autres comme un joker et dire « pas de pouvoir ». Donc maintenant, quelle que soit la
durée de notre minuterie, je pense que c'est 1 seconde. Je ne
pense pas que cela changerait les choses. Nous n'avons que 10 %
de chances qu'une augmentation de puissance apparaisse. que soit la façon dont vous voulez faire cela, que Quelle que soit la façon dont vous voulez faire cela, que voulez-vous faire
avec la route 5050 ? Ou si vous voulez y aller avec un
pourcentage de chance comme celui-ci. C'est donc 10 %. Si nous changeons cela
en cinq et que nous le
lançons, nous avons maintenant
une chance sur cinq. Donc un sur cinq aurait 20 % de chances que notre
puissance apparaisse. Ce qui est assez décent, vous pouvez toujours le modifier
au fur et à mesure de vos niveaux. Si vous avez des niveaux ou vous pouvez
simplement en faire un
défilement infini et peut-être
ajuster le nombre. Vous pouvez donc changer les cinq pour peut-être augmenter les heures supplémentaires. Quoi qu'il en soit, je suis
sûr que cette vidéo devient assez longue
à ce stade, mais voici comment nous
créons des power-ups. Voici comment nous pouvons
faire les 5050 chances qu'il
apparaisse ou non. Voici comment nous pouvons obtenir
un pourcentage
de chance qu'un bonus apparaisse. Et n'oubliez pas, vous pouvez entrer
et changer le minuteur de notre générateur. Ici. Vous pouvez sélectionner le minuteur et nous n'avons pas
trois secondes. Vous pouvez l'ajuster en fonction de durée pendant laquelle vous souhaitez que le vôtre soit entre les
power-ups potentiels. Avec ça, j'espère que tu
as une bonne idée. Comment créer un power-up ? Comment les repérer dans le monde ? Je vais y aller
et enregistrer ça encore une fois. Vous savez maintenant comment
créer des bonus, les
ajouter à votre liste, créer les animations pour lui et les faire apparaître dans votre
monde pour que nous puissions les utiliser. Les audits laissés pour les
Power Apps doivent maintenant être en mesure
d'interagir avec elles et de les faire agir en conséquence en
fonction de ce qu'elles sont.
15. Activation de puissance: Très bien, allons de l'avant
, créons nos power-ups et rendons-les fonctionnels. qu'ils puissent réellement faire des choses et interagir avec le
joueur ne le comprendrait pas. Très bien, passons
à notre scène de mise sous tension. Et nous pouvons sélectionner notre zone 2D. Et nous
allons en fait transmettre
un signal d'entrée dans le corps. On pourrait le transmettre directement
à notre puissance ici. Et maintenant, la première chose
que nous voulons faire est de nous
assurer que c'est bien le joueur. Je vais donc vérifier si le nom du joueur et du corps
et du corps point. Et je peux vérifier. Oui, j'ai ici
mon corps cinématique appelé
joueur avec un P majuscule donc ça devrait fonctionner. Désolé,
si le joueur et le nom du corps viennent ici et que nous pouvons avoir tout ce
qui s'est passé en conséquence. Bien entendu, nous voulons que cela
dépende du type de puissance. Mais pour l'instant, nous pouvons
continuer et imprimer. Et on peut dire qu'il a obtenu de la puissance Et si nous devions jouer à ça maintenant, quand nous rencontrons notre pouvoir, quand l'un d'eux apparaît, nous devrions le voir imprimé
sur la console. Boom, on y va. Puissance obtenue. La vraie question est donc ce que nous voulons que cela
fasse de chaque pouvoir ? Eh bien, nous pouvons utiliser la vitesse
comme exemple ici. Mais ce que je veux que vous
fassiez, c'est que vous essayiez de trouver
comment nous pouvons augmenter
la vitesse de notre joueur. Très bien, alors allez-y, mettez la vidéo en pause et
prenez un moment pour le
faire . Très bien, bon retour. Je vais, je vais passer en revue, et ce que je vais faire
c'est utiliser un énoncé mathématique et je vais correspondre
à mes prises de pouvoir. Donc la puissance maximale est serrée. Et je vais dire, si
le type est égal à la vitesse, ce que je vais faire c'est que
je vais accéder
au corps, qui est notre joueur. Souviens-toi, je vais, je
vais obtenir la valeur de la vitesse, la vitesse des points du corps, et je vais la
régler sur 200. Quelle que soit notre vitesse,
nous allons la multiplier. Et pour éviter toute erreur pour l'instant, on va juste l'appeler
le joker et frapper passé. Voyons comment
cela se passe maintenant. Bien sûr, nous
devons attendre
d'avoir un bonus de vitesse pour apparaître. Si on a de la chance, on en
aura un tout de suite. Vous pouvez voir à quel point
nous nous déplaçons lentement ici. Et cela devrait
doubler dès que nous obtenons un bonus de vitesse, c'
est-à-dire Santé, rien ne se passe. C'est très bien ça. Pareil avec le bouclier parce que cela
relève de notre joker, qui pour le moment
ne fait rien. C'est plus de santé. Leur rapidité. Nous l'avons fait et vous pouvez voir que
nous allons beaucoup plus vite. Prêt ? Maintenant, bien sûr, Shield,
nous allons manquer ça. Si nous obtenons une autre vitesse,
cela devrait se multiplier. Donc je comprends, cela ne
va même pas nous multiplier parce que nous
l'avons fixé à 100. On ne multiplie pas
le sucré du tout. Donc tout cela est bien beau, mais nous devons également envisager de ramener notre vitesse
à la normale
à un moment donné. Donc, ce que nous allons
faire,
c'est d'abord créer
une nouvelle variable appelée multiplicateur de vitesse. Et nous allons le
régler à deux. De cette façon, nous pourrons
le multiplier facilement à l'avenir. Donc nous allons régler
cela deux fois égal, ce qui signifie que nous allons définir la vitesse égale
à la
vitesse multipliée par ce que nous mettons
sur le côté droit ici, qui dans ce cas
sera notre multiplicateur de vitesse. Donc nous disons que la vitesse est égale
à la vitesse multipliée par le multiplicateur, pour ainsi dire Tom Steel. Et cela nous donnera
le même résultat c'est juste un peu plus
modulaire parce que cela
viendrait ici et nous
pouvons simplement l'ajuster
à ce que nous voulons qu'il soit. En ce moment. Je vais juste
le laisser deux fois. Ça va ? Nous avons donc besoin d'un moyen pour
que la vitesse s'estompe. Donc pour mon joueur, ce que je veux, c'est ma vitesse. Je veux que tous mes bonus durent. Je dirais dix secondes. Je vais donc
créer un minuteur sur mon lecteur et l'appeler
notre minuteur d'application. Je vais régler le temps d'
attente à
dix secondes parce que c'est la durée pendant dix secondes parce que c'est la laquelle je veux ma barre oblique de
mise sous tension. Je vais connecter le signal de
temporisation à mon lecteur. Et maintenant, lorsque le
délai d'attente arrivera, nous allons le faire en
fonction de la mise sous tension active. Nous allons donc
créer une nouvelle variable appelée puissance active. Et ce ne sera qu'une ficelle. Et nous allons dire faire
correspondre la puissance active. Donc, quand le chronomètre sera réglé donc à la fin de
nos dix secondes, nous serons à la hauteur de
notre puissance active. Dans ce cas, nous travaillons
avec la rapidité comme exemple. Nous allons donc dire que
lorsque notre minuterie sera
écoulée, nous allons remettre notre
vitesse à la normale. Nous allons donc récupérer notre
variable de vitesse et la remettre à 100. Et pour le moment, si nous avons
autre chose, nous passerons simplement. Très bien, donc si nous devions
lancer ceci, maintenant, vous remarquerez qu'il y a un problème ici. Maintenant, si nous allons de l'avant
et que nous attendions ce bouclier et vous savez quoi ? Je vais aller de l'avant et
imprimer ici juste pour m'assurer que nous
ne comptons pas mal. Vitesse normale. Essayons
encore une fois. Népalais. Ok. Venez ici avec la
rapidité nécessaire pour vous présenter à tout moment. Apparemment, ce qui devient
vraiment malchanceux et ne reçoit aucun bonus pendant que nous
essayons de les tester ici. En tant que super malheureux. Mais cela peut arriver, bien
sûr, parce
que tout est aléatoire. Il semble donc que
nous entrons dans une saison assez sèche dans nos bonus. Leur vitesse, on l'a. Ok. Vous pouvez voir que nous sommes en train
d'accélérer. Si nous regardons la sortie, nous pouvons voir que les vitesses en
seconde heure sont revenues à la normale. Mais ce n'est pas le cas. Et
pourquoi ne le fait-il pas ? Parce que nous ne
démarrons jamais le minuteur. Et ça, bien sûr,
ça va poser problème. Nous ne pouvons pas rendre notre parole
normale à la fin du temps si nous ne démarrons jamais le minuteur. Donc, ce que nous devons faire pour améliorer notre puissance, c'est quand il s'agit de vitesse. Non seulement nous devons changer
le multiplicateur ou, désolé, rechercher la valeur douce. Mais nous devons également
faire body dot get node. Allons y jeter un œil.
Comment l'appelons-nous ? Nous appelons cela un minuteur de mise sous tension. Nous allons donc
avoir
ici une chaîne appelée Power Tyrone. Assurez-vous qu'il est orthographié exactement la même façon, sinon vous
aurez une erreur. Donc, mettez la minuterie sous tension et
nous allons dire point de départ. Nous allons donc
démarrer le chronomètre. Et maintenant, si nous le jouons, non seulement la vitesse d'obturation augmentera, mais la minuterie démarrera. Ainsi, lorsque la minuterie se termine ou que la vitesse devrait
revenir à la normale. Mais si vous y réfléchissez,
il nous manque encore une chose cruciale qui explique pourquoi notre minuterie ne
reviendra pas à la normale. Peux-tu réfléchir à
ce que c'est ? C'est juste à l'intérieur
de notre lecteur. Nous basons cela sur
la puissance active, mais nous ne définissons jamais quelle est
cette puissance active. Donc, dans notre script de
mise sous tension, nous devons également le
définir. Donc, le pouvoir actif du point de corps. Bien sûr, je l'ai bien orthographié. Puissance de soulignement active. Nous pouvons régler cela sur la vitesse. Ou si nous ne
voulons pas le définir ici. Nous pouvons également le configurer ici lorsque nous savons que nous ne voulons pas le configurer. Quand nous créons l'application Power, nous voulons
seulement la faire, nous
ne l'avons pas récupérée. Nous devons donc le faire
ici pendant notre match. Ça va ? Donc si nous l'essayons maintenant, sinon la vitesse devrait augmenter. Comme nous l'avions fait auparavant, l'acte
du pouvoir devrait être fixé. Nous savons donc quoi faire
lorsque le minuteur est écoulé. Et nous devrions commencer par le minuteur pour qu'
il puisse s'épuiser. Rien ne se passe. Et nous attendons juste
la vitesse. J'ai fait une faute de frappe dans mon nom. Voici le problème. J'ai un moi majuscule et mon compte à rebours. Il faut que je règle ça. Allons-y. Je suis
sorti Aaron à cause d'une faute de frappe. C'est pourquoi il est important
de s'assurer que vous épelez les
choses
exactement comme avant. Parce que lorsque nous
comparons des chaînes, les majuscules et
les minuscules sont deux caractères très
différents. Alors allons-y
et attendons à nouveau qu' une nouvelle
mise sous tension apparaisse. C'est pourquoi nous
testons toujours le code au fur et à mesure. Nous n'en avons pas envie. Un tas de choses dedans
, puis testez-le et avez comme 30 erreurs différentes de tous ces
emplacements différents qui apparaissent. Nous voulons nous assurer que
nous détectons l'erreur lorsqu'elle se produit afin de pouvoir la
corriger immédiatement. Nous attendons donc juste que cette
augmentation de vitesse apparaisse. C'est une autre santé.
Boum, boum, boum, boum. Tir. Cela fonctionne toujours. Nous obtenons un écran qui est un bouclier. Il y a une vitesse. Allons-y. Vous
pouvez voir où il est beaucoup plus rapide et suppose que
le temps est écoulé. Voyons voir que
l'impression revient à la normale. Et nous sommes de nouveau ralentis. Nous avons maintenant une mise sous tension de la
vitesse qui fonctionne
comme prévu, tout en
nous ramenant à la normale. Donc, la dernière chose
que nous devons faire est ajuster
les choses pour la mémoire, car en ce moment, nous avons une fuite de mémoire dans notre jeu. Et c'est parce que
nos Power Apps n'ont jamais disparu alors
qu'elles étaient hors écran. Il existe toujours
dans notre monde. Ce que nous voulons faire c'est nous débarrasser de notre déclaration
écrite. Et sur notre pouvoir lorsque nous
interagissons avec le joueur, nous voulons nous libérer. Souvenez-vous que self est optionnel, donc vous pouvez simplement
taper q pour chacun, comme nous le faisons avec cet enfant. Personnellement, je préfère
taper moi-même, mais vous n'avez pas besoin de faire la queue libre lorsque le joueur
touche la mise sous tension. Mais nous voulons également examiner dans le processus si notre position disparaît. Nous voulons donc dire s'il
s'agit de majuscules. Nous disons donc si le point de session self
dot y est supérieur à, et si nous nous souvenons de 400 long. Donc disons que c'est
supérieur à 400, mais nous devons tenir compte
du temps supplémentaire parce que le point
sera au milieu
du couplet, non ? C'est ce que nous disons pour 20. Donc si notre position
est supérieure à 420, alors encore une fois, nous allons simplement
dire à notre pouvoir
de se supprimer. Et si nous ne l'avions pas,
vous pourriez le voir
dans l'onglet distant,
que vous pourriez le voir
dans l'onglet distant, je vais vous montrer
ici dans une seconde. Nous allons
jouer, et vous verrez télécommande sur le côté
gauche ici, selon le coup que c'
est notre jeu en cours d'exécution. Donc, si nous ouvrons notre générateur, vous verrez les Power Apps entrer en jeu. Et vous verrez
qu'une fois qu'ils quitteront l'écran, ils se supprimeront d'eux-mêmes. Auparavant, ils ne le
faisaient pas. Si vous le souhaitez, vous pouvez y aller et vous pouvez les
commenter. Et tu y vas. Tu as vu cette mise sous tension disparaître. Et si vous le souhaitez,
vous pouvez revenir en arrière, commenter cela et
jeter un œil à celui qui a disparu. Quand je parle, ça se voit. On devrait
y aller et on devrait voir comment cet échange disparaît. Et nous avons pu optimiser légèrement
ce code R. Mais nous allons juste nous
assurer que cela fonctionne. Très bien, voilà
notre vitesse. On a eu un boost de vitesse. Un power-up a disparu. minuterie devrait être épuisée pour tout retour
secondaire à la normale. Donc tout
semble toujours fonctionner
parfaitement. Donc ce
à quoi je parlais et nous pourrions également nous référer ou ramener notre code
à la normale, ou plutôt optimiser un peu plus car nous ne voulons pas
écrire self point Q chaque, pour chaque puissance,
parce que nous Je veux faire ça à chaque fois. Donc ce que nous allons faire, c'est que nous allons
en fait descendre et sortir de notre énoncé de
match, tant que l'interaction des
joueurs, donc nous restons à l'intérieur de
l'instruction if. Nous allons le libérer. Donc ce que vous pouvez
faire maintenant, c'est que vous pouvez maintenant entrer ici et
vous pouvez créer plus de puissance afin de
remplacer notre joker là-bas. Nous pouvons donc parler
de santé, par exemple. Et maintenant, vous entrez
ici et créez une variable de santé sur votre
joueur si vous le souhaitez, si vous voulez prendre de l'
avance et le faire maintenant. Et vous pouvez en ajouter un à
la santé de votre joueur. Nous pouvons jeter un œil au multi et vous pouvez l'activer et avoir de sorte que si vous êtes sur
un tournage maintenant, vous pouvez tirer deux, par exemple. Ou peut-être que vous changez complètement de
projectile. Quand avez-vous obtenu le multi, tout ce que vous voulez faire cela dépend
entièrement de vous, mais vous pouvez maintenant créer des effets différents pour chaque puissance que vous capterez. Et je vous verrai
dans le prochain.
16. Boucliers: Très bien, alors
allons-y et ajoutons la puissance du bouclier à nos joueurs afin d'éviter de nous
faire toucher. Nous allons donc avoir une représentation
visuelle de cela. Je vais m'en occuper, disparaître une fois que nous arriverons à la partie endommagée
de ce parcours. Je vais donc continuer et arrêter cette prévisualisation ou cette
lecture de test. Et vous devriez voir à l'intérieur
de vos sprites que nous
avons une autre feuille de calcul
ici pour nos boucliers, et nous savons comment cela fonctionne. Nous pouvons maintenant créer
un sprite sur un lecteur d'
animation. Nous pouvons y aller. Td vu, tout ce
dont nous avons besoin c'est d'un sprites. Nous n'avons pas besoin d'
animation pour cela. Nous pouvons donc aller directement chercher un
sprite pour notre racine ici. Appelez ça des boucliers Nous allons avoir besoin d'
un lecteur d'animation. Parce que, bien sûr, nous avons besoin que
nos ombres soient animées. Tu peux les laisser
dyadiques si tu veux, mais je ne suis pas mauvais. De quoi avons-nous besoin ? Nous avons besoin de boucliers,
voici notre texture. Apportez cela en animation. Nous avons des cadres horizontaux, trois verticaux. Et
voici notre bouclier. Nous pouvons aller de l'avant et mettre en place une
animation pour cette scène. Nous pouvons créer notre animation. L'animation le savait. Cela s'arrête là.
Quel est son 0,75 ? Donc 0.9, je peux partir qui nous
dirait de faire une boucle et
nous verrons à quoi cela ressemble. Ok, ça a l'
air un peu. Ça a l'air bien. Cela
peut être un peu lent ou rapide pour certaines personnes,
c'est à vous de décider. La première chose que j'ai
remarquée, c'est que le mien est flou parce que je vais le
réimporter très rapidement. Et éteins mon filtre. C'est très important, on y va. Et joue ça. Maintenant, on y va. Voyons voir. Je ne
veux pas accélérer ça. Que se passera-t-il si
nous accélérons le processus ? Je vais juste y aller. Maintenant,
changeons-le en 0.1. Et tout bouge
pour diriger ou fonctionnellement. Clape-le en bas. Trois, ça voit à quoi ça ressemble. Je pense que c'est mieux. Je vais ajuster ma
longueur à 0,6. Très bien, donc je pense que ce sont
les chiffres que je
veux suivre. Je vais y aller avec
0,05 sur mon snap. Leur longueur totale est de 0,3. Je pense que je suis content de
cette vitesse par bouclier. Vous voudrez peut-être être plus lent
pour mes observateurs plus vite. Mais je pense que c'est ce que
je veux faire. Maintenant que nous
avons ce cratère, je vais
arrêter l'animation. Et l'animation ici. Si nous définissons notre animation
actuelle comme étant des boucliers actifs, devrait être
lue automatiquement chaque fois qu'
elle se trouve dans la scène. Et nous allons avoir
besoin d'une zone de détection ou quand nos
boucliers seront touchés plus tard. Je vais donc
créer une zone vers D. Et cela nécessite une forme de
collision. Pour la forme, je vais
juste lui donner un cercle, quelque chose comme ça. Et nous pouvons jeter un coup d'œil à
cela avec notre joueur pour nous
assurer que cela va protéger
notre joueur et notre bloqueur
de se faire toucher. Voyons voir,
ouvrons notre lecteur. Et pour l'instant,
ajoutons notre bouclier. Jetez-y un coup d'œil afin que
nous puissions voir un peu notre joueur
qui sort du lot. Ce que je vais faire, c'est
augmenter la taille
de mes boucliers ici. Je vais venir
ici pour me transformer et je vais
augmenter mon échelle. C'est peut-être un peu
trop, peut-être 1,25. Permettez-moi de jeter un œil à cela qui bloque
définitivement tout, tous nos autres hits ici. Enregistrez cela et jetez-y un
œil dans le jeu dès maintenant. Ce que nous avons maintenant, ne pas animer comme je m'
y attendais, ça marche, donc c'est très bien. Nous pouvons simplement le configurer
pour qu'il s'
anime automatiquement dans le script de
bouclier lui-même. Nous irons dans notre champ. C'est le script au
bon endroit. Bouclier de scripts. Super. Je suis prêt. Est-ce que le joueur d'animation a
joué des boucliers actifs ? Et c'est ça. Allons-y. Nous
savons maintenant ce que c'est, ce que ce serait d'avoir des
boucliers autour de notre joueur. Maintenant, bien sûr, nous n'en
voulons pas tout le temps. Nous voulons que tout cela soit
en B quand nous
récupérerons notre bouclier là-haut. Nous pouvons donc maintenant aller
dans notre player. Nous pouvons charger nos
boucliers, disons var, bouclier, scène équivaut à recharger, et nous apporterons notre bouclier vu en l'air. Nous allons
apporter ça. Et pour détecter cela, nous pouvons régler les boucliers
pour qu'ils soient vrais. Barre blindée, c'est vrai. Et bien sûr, nous
voulons également lancer cela,
que vous voulez que nous séparions. Ce sera une valeur booléenne. Maintenant, nous pouvons
venir ici et créer un bouclier fonctionnel, activer. Et nous allons avoir besoin d'
un champ d'instance n égal à l'instance vue du bouclier. Et maintenant, il ne nous reste plus qu'à ajouter cela à nos joueurs. Doute de soi. Et une protection pour enfants devrait être tout ce que nous avons à faire ici. Passons donc à
notre script Power Apps. Et quand nous toucherons des boucliers,
quand cela sera détecté, nous appellerons cela l'activation
du bouclier corporel. Nous allons
vérifier l'orthographe de ce calque. Et juste pour être sûr,
je vais copier la fonction et la
coller dedans. Ok ? C'est correct. Et nous pourrions le
supprimer de notre couche. Maintenant je peux aller de l'avant
et tester et quand nous prendrons un show power up, le bouclier devrait apparaître sur nous. Et ce
sera bien sûr, RNG pour savoir quand cela apparaîtra
réellement. Très bien, nous avons
un bouclier et c'est parti. Deux sièges activent
tout très bien. Il ne nous reste plus qu'à configurer
le bouclier pour qu'il disparaisse. Encore une fois, nous pouvons nous attaquer à
cela lorsque nous entrons dans la partie endommagée
ou dans la section du parcours où le joueur subit des
dégâts. Très bien, donc si tu as
suivi jusqu'ici, tu ne t'es pas
dévié tout seul. Vous devriez maintenant avoir un bonus de
bouclier qui fonctionne. Et nous avons simplement
semblé avoir un bug parce
que nous avons pris un deuxième bouclier et nous en avons
maintenant trois. Nous pouvons donc nous adapter aux deux,
mais nous pouvons y remédier. On peut vérifier si
le corps est protégé. Assurez-vous que j'ai bien compris. Oui, protégé. Nous allons définir false par
défaut et non vrai. Dites si le corps est protégé. Donc nous allons dire
si blindé est vrai, donc si notre joueur est protégé,
nous ne ferons rien. Nous voulons donc le contraire. Nous pourrions donc faire un point d'exclamation ici au début et dire, s'il n'est pas protégé par un point de corps, ce qui nous donnerait un faux. Ou nous pouvons taper le
mot s'il n'est pas corsé, non blindé, selon la méthode
qui vous convient le mieux. Je vais taper le mot,
pas seulement pour le rendre
plus clair d'un coup d'œil. Sinon, le corps n'est pas blindé. Donc, si notre
variable protégée est fausse, alors nous le ferons. Sinon, nous ne
ferons rien de tout cela. Donc maintenant, si nous devions le
lancer et tomber sur plusieurs boucliers, cela ne devrait fonctionner que pour le bouclier
qu'on obtient. Il faut qu'on en vienne à
une dernière chose. Nous devons entrer dans
nos boucliers ici. Nous devons nous rappeler
de définir le corps protégé sur vrai. Très bien. Maintenant, pour nos tests, vous pouvez voir que nos boucliers
ne vont pas
empiler un bouclier et c'est tout ce
que nous devrions obtenir. Et on y va. Nous avons donc fait fonctionner
nos boucliers et nous avons corrigé un petit bug qui
est apparu. Très bien. Donc avec je vais juste
retourner voir mon observateur et supprimer ça puisque nous n'avons plus besoin de tester ça
et de remettre ça en disant « pas
de puissance ». Avec cela, nous avons maintenant une puissance de bouclier
entièrement fonctionnelle. Eh bien, pour ce qui est d'entrer dans
le jeu et d'être utilisé.
17. Prise de vue multi-: Très bien, dans cette vidéo,
nous allons
voir comment ajouter un plan multiple. Donc au lieu d'en tirer
une de chaque côté, nous allons tirer pour
protéger Alice de chaque côté. Et ils vont
sortir sur un petit angle. Ça va ? La première chose que nous devons
faire est de nous lancer dans notre script de couche. Et nous allons
créer une variable ici. Pour le multi-shot. Faux par défaut. Nous pouvons aller sur un lieu de combat ou
de tir ici. Cela dedans, et nous
allons dire si ce n'est pas le , si ce n'est pas le cas. Et fais-le. Ensuite, nous
pouvons en faire une copie. Et venir là-bas, mais ensuite je vais répéter le code. Mais nous avons besoin de plus de nous de toute façon. Alors j'entends quelqu'un dire « » pour dire « sinon si », «
else-if multi shot ». Et nous allons avoir
besoin de quatre d'entre eux, dans notre cas, trois
environ maintenant nous en avons quatre, mais ils vont se
chevaucher à ce stade. Nous allons voir, ajouter ces enfants. Voici des scènes de
trois et de la foresterie. Elle surtout, la plupart de
ce que nous avons fait est juste un copier-coller de
ce que nous avions en haut. Mais ce que nous
devons également modifier ici c'est la propriété de vélocité. Nous devons donc changer
le x de cela. Nous allons donc modifier la vélocité du point de
tir point x. Nous pouvons le définir sur, voyons voir. Les premiers ont
voulu aller à gauche
et 34 à droite. Nous voulions
donc dire moins 50. Et nous pouvons le copier trois fois de plus pour les crimes qui l'
entourent. 34. Donc 34 seront
positifs, 512 seront négatifs 50. Et nous allons continuer et exécuter cela. En fait, cela ne
changera jamais et nous devons nous tourner vers une puissance. Quand le multi obtient, il
fera son corps. Multi shot, c'est ça ? Copiez ce plan multiple, c'est vrai. Très bien, vous pouvez maintenant
voir avec notre plan multiple que nous avons commencé cette
action croisée. Maintenant, bien sûr, vous pouvez
ajuster vos
chiffres comme bon vous semble. Et il ne nous reste plus qu'
à décider quand désactiver ce tir multiple. Tu vois que nous ne tournons
plus, nous aussi. Nous tirons des projectiles. Et si je redémarre
très vite, vous voyez, je vais recommencer
à en tirer deux. Pour l'instant, il vous suffit décider comment et quand
cela se désactive. Et puis venez
ici pour notre joueur
et notre vitesse de puissance active. Je pense donc que je vais également
refaire cette section, ou désactiver nos pouvoirs. Mais nous pouvons garder ça
pour une autre fois. Mais pour l'instant, on peut voir que
ça s'allume, ça marche. Et
voyons comment activer le multi-shot, qui était la fonction ne
vient pas ici pour vraiment activer le multi-shot. Cela deviendra vrai pour le multi-shot. Ensuite, ce que nous pouvons faire
à partir de là, c'est que nous pouvons faire, nous pouvons utiliser un rendement. Maintenant, cela va
fonctionner différemment en 4, légèrement différemment. Vous n'avez pas besoin de
ces parenthèses. Vous devrez peut-être jeter un coup d'œil et voir quelle est
la différence pour le x. Je ne suis pas sûr à 100% là-dessus. Mais nous avons le rendement
et ensuite nous voulons obtenir un minuteur de création de point d'arbre. À l'intérieur, il y a
combien de temps nous voulons qu'il dure. Nous allons dire cinq secondes, obtenir les délais d'attente, puis
nous réglerons le tir multiple sur faux. Maintenant, cela peut être en cours d'utilisation, cette méthode peut être la façon dont je refais nos Power
Apps ici, non ? Que la vitesse aussi bien
que nous avançons. Nous allons donc
entrer en scène et au lieu d'activer le multi-shot, nous allons dire que le
point du corps active le multi-shot. Et nous allons jeter un coup d'œil,
voir comment cela fonctionne, assurer que cela fonctionne. Donc nous en tirons deux hors de
la porte, ce qui est génial. Nous avons eu un plan multiple,
nous en avons tiré quatre. À la fin de notre compte à rebours. Nous revenons
à deux. Alors allons-y. Nous avons un plan multiple
qui fonctionne à merveille. Très bien, nous avons donc un bouclier qui s'active
et nous permet, et nous avons un tir multiple
qui s'allume et nous
donne notre puissance et notre capacité. Encore une fois, vous pouvez simplement
remplacer ce nombre celui que vous voulez pendant
combien de temps vous voulez qu'il dure. Et si vous avez différentes Power Apps de prise que vous pourrez activer à l'avenir, c'est tout
ce que vous avez à faire. Changez quelle que soit votre capacité, et changez ce que
vous photographiez ou comment, quelle que soit
la manière dont vous vous y prenez. Donc, si vous avez un laser, vous allez l'apporter. Vous allez
avoir un exemple de scène complètement différente. Par exemple, dans le
cas d'un laser, vous pouvez simplement ajouter au
joueur parce que nous voulons que le laser reste
avec le joueur. Généralement, si vous
allez avoir comme un faisceau laser
traditionnel, plutôt que de tirer des
lasers comme un blaster. Mais tu y vas. Voici comment fonctionne le multi-shot. Et comme je l'ai dit,
je vais probablement changer le code
ici pour la vitesse. Et au lieu d'utiliser
une minuterie de mise sous tension, utilisez
simplement une petite fonction comme cet activateur,
bittersweet.
18. Petits changements: Très bien, c'est son
séjour. Une courte vidéo. veux juste vous montrer
que j'ai refait
la vitesse que nous venons de créer dans le même format que celui que nous avons fait
pour notre multi-shot ici. Nous avons donc une fonction
appelée enable speed. Il
y a ajouté un paramètre que nous pouvons
passer dans un multiplicateur. J'ai dit que ma vitesse était juste la
vitesse multipliée par le multiplicateur y. Nous attendons nos cinq secondes. Une fois que c'est terminé, nous diminuons à nouveau
notre vitesse par
notre multiplicateur. Et sur l'ajout d'alimentation ou
simplement en appelant, activez la vitesse. Et nous transmettons ce
multiplicateur que nous utilisions auparavant. C'est donc la seule chose qui a changé pour la vitesse, boucliers du
tir multiple sont restés les mêmes. Mais ce que nous pouvons faire, c'est qu'
on peut le faire aussi. Si nous ouvrons la scène de notre
projectile, nous pourrions nous débarrasser de
notre forme de collision. Cela va apparaître, nous
aurons un triangle jaune si vous supprimez la forme de
collision ici. Mais si nous l'enlevons simplement,
c' est parfaitement bien. Et si nous faisions cela, vous verrez ici et le plan
multiple que les deux au milieu qui sont
juste en face l'un de l'autre vont maintenant se
tirer dessus au
lieu d' entrer en collision
l'un l'autre et en allant tout droit. Ce sont deux résultats complètement
différents, deux résultats différents. C'est donc à vous de décider si vous
voulez activer
ou la forme de collision de votre projectile désactiver
la forme de collision de votre projectile
. Et comme vous pouvez le voir,
la vitesse est activée 54321 et nous sommes revenus à la normale. Il y a un plan multiple.
Maintenant, vous pouvez voir nos pièces du milieu
se croiser éventuellement. Donc si tu ne veux pas qu'ils
se frappent contre l'autre et
qu'ils aillent parfaitement droit. C'est tout ce que vous avez à faire pour désactiver cette forme de collision. Et nous pourrions simplement
le désactiver complètement parce que
nous n'avons pas besoin de le voir. Tu y vas. Vous pouvez voir
qu'ils se
croisent et nous sommes presque
comme un tournage de ToString maintenant. Mais on y va. C'est à vous de
décider si vous souhaitez désactiver
votre collision sur votre
projet. Ou si vous voulez
laisser cela activé pour l'apparence de l'écran,
ou si vous voulez qu' ils se
recoupent
complètement à votre choix de développeur
et de design. Mais je me suis dit que j'allais ajouter ça juste pour te le dire aussi.
19. Configuration ennemie: Très bien, dans la vidéo d'aujourd'hui, nous allons jeter un œil à la création de notre ennemi. Nous allons
créer notre ennemi maintenant et
ensuite nous allons passer à notre ennemi
à tirer et
à obtenir notre défilement
vertical de base avec notre ennemi, les mouvements. Très bien, donc tout d'abord
, nous allons
devoir créditer une nouvelle scène. Tout comme notre joueur, il
s'agira d'un corps cinématique,
bien sûr, d'un TD. Nous allons avoir besoin d'un
droit pour notre ennemi. Ross, il va falloir beaucoup de choses que nous
avons sur notre joueur ici. Nous pouvons donc ajouter une forme de
collision, c'est
pourquoi nous avons
notre triangle ici. Nous avons donc placé notre corps cinématique
au niveau d'un polygone de collision. Je veux que la forme disparaisse. Et si nous
regardons notre joueur, quoi d'autre avons-nous besoin ? Nous pourrions utiliser un
lecteur d'animation plus tard si vous souhaitez créer
des animations de cette façon, spécialement pour vos ennemis. Mais pour cette
configuration spécifique de notre ennemi, nous n'en aurons
pas besoin, mais nous n'allons
pas utiliser une position ici afin
d'avoir un endroit où notre ennemi tire depuis
une position vers D. D'accord donc en commençant par le haut, nous pouvons le renommer en ennemi. Je vais l'appeler « vaisseau ennemi ». Je n'ai pas appelé. Vous pouvez l'appeler n'importe quel
type d'entité que vous souhaitez celle-ci
soit spécifiquement. Allez dans notre sprite. Nous pouvons faire venir notre
ennemi et nous remarquons que c'est juste un sprite normal ici. Ce n'est pas une feuille de sprite, donc nous n'avons pas à nous inquiéter de
peindre l'animation ou quoi que ce soit d'autre parce que ce spray
va juste se
déplacer et tourner. Nous n'avons pas toutes ces animations
différentes dessus. Vous pouvez bien entendu utiliser la
feuille de calcul si vous le souhaitez. C'est ici que je peux
vous présenter l'autre méthode que
j'ai mentionnée précédemment. Et c'est ce que fait l'animation, je suis désolé, pas le lecteur
d'animation, l'animation
animée, le sprite animé. Supposons que vous vouliez faire une animation à l'aide
du sprite animé. On entrait,
on faisait des cadres. Si vous n'en avez pas, vous n'utilisez pas de feuille de sprite. Vous venez de recevoir des PNG individuels. Tu viens ici et tu fais
un nouveau cadre de sprite. Vous cliquez à nouveau dessus. Et maintenant nous avons nos
animations ici, n'est-ce pas ? Et il n'
entrait pas ici et ne resterait pas inactif. Droite, gauche, droite.
Et vous comprenez l'idée, nous pouvons le faire de cette façon. Et au lieu de jouer avec une chronologie et de positionner
vos images-clés, vous avez ici une vitesse qui détermine à quel point chacune
de ces touches serait proche, puis tout ce que vous feriez est simplement d'amener chaque encadrez
ici un par un comme ça. Et au fur et à mesure
qu'il joue, il passe en boucle. Et pour y jeter un œil,
nous allons simplement revenir à notre sprite animé
et nous jouerons. Nous serions en mesure d'y
jeter un coup d'œil, ce
qui, bien sûr, dans ce
cas, est le contenu. Donc si on passe au ralenti,
quand on voit qu'il y a notre vaisseau et qu'il joue dans notre cadre,
CC le spectre. C'est donc l'alternative. Si vous n'avez que des PNG
et que vous n'avez pas de feuille de calcul pour vos ennemis. C'est comme ça que tu t'
y prendrais. Encore une fois, dans notre cas, l'ennemi n'est qu'un ENG statique. Il va juste
se déplacer en fonction des coordonnées affichées
à l'écran. Mais pour référence future, si vous n'avez que des
PNG et que vous n'avez pas feuilles de calcul ou si vous ne
voulez pas utiliser de feuilles de calcul
et que vous voulez découper mon lecteur et
les power-ups dans leurs propres feuilles. C'est comme ça que vous le feriez et ce serait la
même chose. Au lieu d'appeler
un lecteur d'animation, nous appelons le sprite animé
et nous jouons l'animation maintenant. Comme je l'ai dit, nous n'en avons pas besoin pour le nôtre, notre cas. Je vais m'en débarrasser. Et je vais montrer à nouveau le Sprite
normal. Boîte de collision. Ce
n'est qu'un simple rectangle. C'est tout ce dont nous avons
besoin. Cela va venir et nous allons le couvrir. Et c'est à vous de décider
de la superficie de votre navire que vous souhaitez couvrir. Je pense donc que je vais juste
couvrir cette partie et non pas la partie arme. Et ma position par rapport à D. Je
peux m' assurer que j'obtiens le reflet qui est
en rouge, ça vers le bas. Allons-y. Je l'avance juste
un peu plus loin que le canon, un AAC. Si nous devions prendre ça
, déplace-le. Nous avons notre position et c'est de là que nous
allons tirer. Hommes Lizzie, ou 0. Allons-y. Nous avons donc notre ennemi.
Sauvez notre scène. Et il sera expédié.
Que notre ennemi de base est
prêt à commencer à tirer, se déplacer et à
apparaître dans notre monde.
20. Prise de vue intérieure: Très bien, nous
allons nous attaquer à
la capacité de tir de l'ennemi ici. Maintenant, vous pouvez utiliser n'a pas explosé comme
nous l'avons fait avec notre joueur. Créez une scène personnalisée
avec son propre plan, donnez-lui sa couleur. Je lui donne sa propre direction. Vous n'êtes pas obligé de faire
le code pour cela. Vous allez simplement le
faire descendre l'écran au lieu
de le faire monter. Mais pour cela, je vais vous montrer comment nous pouvons utiliser le projectile du joueur. Nous allons donc utiliser la même scène
que celle
que nous avons eue ici. Si on ouvre nos
scènes, on y va. Je vais donc
vous montrer comment utiliser la même scène ici. Mais modifiez-le pour que l'ennemi
puisse l'utiliser, tout en continuant à
permettre à notre joueur de l'utiliser. Pour ce faire, nous allons monter à bord de notre vaisseau ennemi. Nous allons y ajouter
le script. Assurez-vous de le placer
au bon endroit de nos scripts. Appuyez sur Créer. Et on y va. Nous avons créé cela. Donc, pour commencer pour notre ennemi, nous allons avoir besoin
qu'il soit capable de le faire. Ce que nous allons
faire, c'est
ajouter une variable ici. Le temps ou le vaisseau ennemi. Nous allons ajouter un minuteur
à notre scène ici. Et nous pouvons l'utiliser pour
avoir n'importe quel espace dedans. Nous voulons éviter cela, pour
éviter tout problème potentiel. Et de retour dans notre script, maintenant que nous avons
une variable temporelle, nous pouvons la définir
sur un nombre aléatoire. Et pour ce faire, nous allons
laisser ça, avoir une valeur par défaut là-haut. Et à l'intérieur de notre fonction Ready trouve l'endroit où nous
allons l'ajuster. Devons-nous
appeler randomize ? Qu'est-ce qui va
randomiser notre C. Pour que nous
puissions avoir une véritable randomisation. De cette façon. Nous n'avons pas
de bouche répétitive. Ainsi, chaque fois que nous démarrons le jeu, nous
n'allons pas être sauvés. 510131211. Nous n'allons pas obtenir
la même séquence de nombres chaque
fois que nous randomisons la graine, cela va changer, changer cela
efficacement à chaque fois. Donc ce que nous allons faire ici,
c'est que nous allons appeler randomisé juste
une fois parce que nous voulons juste changer
l'heure que nous obtenons. Nous allons donc
définir le temps égal à, puis nous allons le
définir sur un flottant aléatoire. Et si nous
regardons ici avec ça, nous allons de l'avant et nous avons mis Randolph pour obtenir un
nombre aléatoire entre 0, entre 01. Ok ? C'est plutôt utile. Mais entre 01, je pense
que ce sera très court. Et dans le cas de cet ennemi, nous ne voulons pas avoir
quelque chose comme une mitrailleuse. Donc, ce que nous pouvons faire, c'est que
nous pouvons faire au hasard, nous pouvons arrondir un flotteur si
nous allons de l'avant et nous les utilisons. Mais au lieu de cela, ce que je pense que nous allons
faire, c'est que nous allons simplement
utiliser où est-ce ici ? Nous l'avons déjà utilisé. On pourrait juste utiliser Rant. C'est là, en bas, avec nos pourcentages. Mais encore une fois, nous
voulons, nous voulons mélanger les choses un peu plus. Nous allons donc utiliser la gamme
Rand cette fois. Nous pouvons donc obtenir des nombres flottants. Juste pour
bousculer un peu les choses. Si vous voulez utiliser
le hasard normal, il suffit d'avoir des incréments de
nombres entiers. Tu peux le faire. Mais pour cela, je pense que
je vais utiliser la gamme
Rand. Comme tu le vois ici. De cette façon, nous pouvons obtenir un nombre flottant et nous devons passer
deux arguments, et nous devons passer
deux arguments,
le plus petit et
le plus grand. Je vais donc dire qu'
il faudra au
moins 1 seconde entre les
prises de vue. Tout au plus. Je vais laisser cinq
secondes entre deux prises de vue. Maintenant, nous allons avoir un certain temps
entre 15 secondes de minuterie. Nous pouvons alors aller de l'avant
et obtenir notre minuteur de tir. Et nous allons simplement régler l'heure. Nous pouvons voir ici dans les propriétés
que cela s'appelle temps d'attente. Attends le soulignement, très bien. Et nous pouvons l'égaler au
temps que nous venons de créer. Nous avons donc maintenant un temps
aléatoire. Avec cela, nous pouvons connecter
notre signal pour ma minuterie, ce
qui sera également un
peu différent dans 4. Si vous vouliez le
faire par code. Si vous voulez que
cela reste aussi simple que possible
à suivre avec moi, suffit de venir ici pour le nœud
et de double-cliquer sur timeout. C'est comme notre
vaisseau ennemi et appuyez sur Connect. De cette façon, nous allons
passer par les deux versions. Que vous utilisiez la
version trois ou la version pour le moteur. Mais si vous vouliez
connecter ce nouveau code ou si vous êtes curieux de savoir comment le faire. Ensuite, dans la version
actuelle ici, nous allons le faire. Ce doute de soi
est tellement lié qu'ils allaient, tu
auras ce que tu veux connecter. Quel est votre minuteur de prise de vue ? Ils voudraient
connecter quelque chose. Ce que nous voulons connecter,
c'est le signal qui suit. Et ce signal, si on y jette un œil,
il s'appelle timeout. Nous
saisirons donc timeout ici. Et la cible, à laquelle
vous voulez la connecter. Souvenez-vous quand nous
sélectionnons notre vaisseau ennemi, quand nous sommes allés comme ça
et que nous sélectionnons notre vaisseau. Ce que vous sélectionnez ici, dans
ce cas, notre vaisseau ennemi. C'est à cela que nous
voulons nous connecter. Et puisque le script
est sur notre vaisseau ennemi, nous n'avons qu'à nous dire nous-mêmes. Cela nous laisse
un troisième argument, est
simplement ce que vous voulez que le nom de la méthode soit. Donc, si nous procédons comme ça,
cette commande ici est essentiellement
ce que cette commande ici est essentiellement
ce le moteur vient quand nous sommes allés comme ça et que nous avons
sélectionné le
vaisseau ennemi et que nous avons cliqué sur Connecter. Maintenant, sur la version quatre, cela va être
légèrement différent. Et je ne suis pas sûr à 100 % de
ce à quoi ça va ressembler
. Mais comme je l'ai dit, le moyen le plus
simple est d'aller dans cet onglet de nœud et connecter le
signal de temporisation de cette façon. Quand le temps sera écoulé, nous
allons tirer. Donc, évidemment, pour cela, nous
allons avoir besoin de notre scène. Donc on va dire,
on va charger ça car ne voudrait pas appeler ça, voudrait juste
appeler ça un coup. Et préchargé en Suède, faites voir notre projectile normal, amenez-le. À temps mort. Nous allons faire en sorte que notre instance de tir soit égale à l'instance de point de tir. Nous l'avons maintenant et nous sommes prêts
à l'ajouter à la scène. Cheval, cela va s'
ajouter pour douter de nous-mêmes. Mais dans ce cas, si nous avons un bon parent à ajouter à notre géniteur, ce qui est notre observateur
ne bouge jamais de toute façon. Ce n'est donc pas trop grave, mais si vous voulez aller jusqu'au
bout du monde,
comme nous le faisons avec notre joueur. Ensuite, on peut juste
avoir deux fois le parent. Maintenant, dans la plupart des cas, vous voulez essayer d'éviter d'
utiliser plusieurs
parents get juste pour éviter
des problèmes potentiels à l'avenir. Et c'est là que la création de
nos propres signaux entre en jeu. Chaque fois que vous montez dans l'arbre, il est préférable
d'utiliser des signaux. Et quand tu descends dans l'arbre, tu obtiens juste le nœud. Mais dans ce cas, spécifiquement pour
ce type de jeu, cela ne
provoquera aucune source de problème. Nous pouvons donc éviter les parents, pas les parents et les enfants. Et nous pouvons ajouter dans notre
cas ici. Cela va donc ajouter
cela au jeu. Le problème, à ce stade, c'est que nous savons que notre photo
va monter à l'écran. Donc, ce que nous allons tirer
va sortir là où nos ennemis vont
essentiellement se tirer dessus. Et
ce n'est pas ce que nous voulons. Ce que nous devons
faire, c'est
modifier certaines parties de ce projectile. Donc, si nous venons ici, nous
pouvons regarder, nous réglons la vitesse y
sur une vitesse négative. Nous pouvons donc changer cela. Maintenant qu'il a été
ajouté à notre scène. Nous pouvons modifier cela immédiatement afin de pouvoir l'écraser. Alors allons-y et mettons-nous en route. On peut prendre notre dose. Accédez à la variable de vélocité
y de celle-ci. La propriété y de notre variable de
vitesse, et réglez notre
set de tir sur notre vitesse. Souvenez-vous maintenant que notre
vitesse est positive. Nous n'allons donc pas
le soustraire ici. Je veux être positif, ce qui le fera
descendre de l'écran et le
différencier de notre joueur. Si j'ouvre cette scène, si vous vous souvenez
ici dans notre sprite, nous pouvons aller de l'avant et nous pouvons changer la
couleur ici en visibilité et moduler. Il semble que nous l'ayons fait
sur le corps cinématique, ce
qui facilitera
un peu les choses. C'est tout ce que nous allons faire. Nous allons changer le
module pour qu'il ait un aspect différent lorsqu'il est
tiré par notre ennemi. Je vais être choqué moduli. Et nous allons définir cette couleur
sur une couleur différente. Donc, si nous
tapons simplement le mot couleur, vous pouvez voir que la couleur du mot va changer en couleur. Et c'est ce que nous faisons. Si vous utilisez des
parenthèses de ce type, vous pouvez passer une valeur RVB. Si vous utilisez des guillemets doubles, vous pouvez passer un
code hexadécimal si vous le souhaitez. Ce que je vais faire, c'est profiter des couleurs intégrées parce qu'
il y en a beaucoup. Je vais juste colorier, point final. Et maintenant, vous voyez que nous avons
des tonnes de couleurs différentes parmi
lesquelles nous pouvons choisir et qui
sont déjà intégrées. Et souvent c'est
tout ce que j'ai besoin de faire. Et cela fonctionne
généralement assez bien pour moi. Je pense que je vais
essayer. Voyons voir. Allons-y avec un violet moyen. Très bien, alors on garde ça. Allons dans notre monde
et créons un vaisseau ennemi. Nous les apportons dans notre
monde ici et nous jouons. On devrait être en mesure de
tourner dans les cinq secondes en fonction de
ses chiffres de loyer. Sauf qu'il ne l'est pas. Et la raison en est
que nous n'avons
en fait pas démarré le chronomètre à aucun
moment. Configurez-le. Nous avons configuré notre courant, mais
nous n'avons pas démarré le minuteur. Nous allons avoir notre minuteur de tir et l'appeler simplement la fonction de
démarrage. Et quand notre minuterie sera écoulée, nous recommencerons également. Alors passons à notre chronomètre et aux colonnes Start. Allons-y. Si nous jetons un coup d'œil, nous pouvons voir mon chargé de projet
monter et son projet sortir. Nous le voyons sur le
côté gauche. Il est en train de descendre. Et la raison en est
que le même problème que nous avons
eu avec notre joueur. Nous devons corriger
sa position. Donc, si nous passons à l'étape suivante et que nous
considérons notre joueur
comme référence, car nous avons utilisé
la position du joueur ici. Nous pouvons voir que nous obtenons
une position de tir. Et nous définissons cela comme étant égal
à notre position 2D et égal à la position
globale, la tête en bas dans notre ennemi. Et nous pouvons le faire n'importe où. Nous le savions avant de l'ajouter
étant enfant ou après. Cela n'a pas vraiment d'importance dans ce cas, car
nous ne remplaçons rien à l'intérieur du
projet Alex self. Nous allons donc faire un tir en
position et nous allons régler cela comme si nous avons
cette disposition sur D, appelons-le position de pause du
tir. Réglez-le sur
notre pause de tir. Position mobile. Allons-y. Et nous le gérons maintenant. Il devrait maintenant être en train
de tourner depuis sa chambre. Nous voyons mater jaune
et le sien ou violet. Maintenant que le violet dans ce
cas est un peu sombre, il peut être difficile pour
le joueur de le voir. Je vais donc changer cette couleur. Et de cette façon, vous pouvez y apporter
des modifications et décider
quelle est la meilleure vue
par rapport à vos arrière-plans. Maintenant, en utilisant un citron vert, ce serait très, très, très brillant et
facile à voir de notre ennemi. C'est donc fantastique. À ce stade, vous pouvez
simplement modifier
les couleurs que
vous souhaitez pour cela. Et juste en guise de remarque, si vous voulez simplement
utiliser ce sprite, mais que vous voulez avoir
différents navires avec des puces de
différentes couleurs ou peut-être que vous ne
voulez tout simplement pas de cette colle. Nous pouvons en fait faire la
même chose que nous faisons avec notre shot come
in modulate ici. Et comme il n'est pas blanc, nous allons en fait y ajouter
différentes couleurs. Comme vous pouvez le voir ici,
nous pouvons obtenir des couleurs différentes ici si je désactive simplement la forme de
collision. Et vous pouvez aller de l'avant et y
jeter un coup d'œil. Vous pouvez donc faire des variations
légèrement, légèrement différentes. Si tu le voulais. Je vais juste remettre le mien
à la normale. Et on y va. Très bien, avec ça, nous
avons notre ennemi en place. Et nous avons maintenant notre ennemi
capable de nous tirer dessus au hasard. Et pour vous montrer
que c'est aléatoire, je vais juste en ajouter
un autre et être notre scène ici, vais
juste utiliser Control D
pour dupliquer. Allons-y. Nous en avons trois différents
et ils vont tous
tourner à trois moments complètement
différents. Vas-y. Oh, comme vous pouvez le voir, les deux sur la gauche semblent
être assez synchronisés, mais ils sont en fait
assez décalés à leur époque. C'est une petite coïncidence. Allons-y. Nous avons maintenant la configuration. Ils tirent et ils
tirent au hasard. Ils ne seront donc pas tous les mêmes quand ils sortiront ou
qu'ils seront engendrés. Ensuite, nous allons mettre
en place un ennemi, le générateur ennemi ou
le mouvement ennemi je pense
que nous devrions probablement effectuer les mouvements ennemis
de base. Pensez bien géré ça ensuite. De cette façon, lorsque nous le
repérons, nous pouvons réellement
dire que l'être
est apparu au lieu qu'il
reste hors écran.
21. Fuite de mémoire: Très bien, donc quelque chose
que je voulais, je veux abord
aborder avant
de l'oublier, c' est que nous allons
rencontrer des problèmes. Finalement, un jeu dure plus longtemps parce que nous
avons une fuite de mémoire. Ce que c'est, c'est ce que nous
créons continuellement tous ces éléments
qui en sont la cause. Et on n'a pas affaire à eux quand on n'en a plus
besoin. Nous allons donc continuer
à empiler plus en
plus jusqu'à ce que l'ordinateur de
l'utilisateur ralentisse et commence à prendre du retard, voire à se bloquer. Et nous regardons le
côté droit ici. Je suis allé de l'avant et j'ai mis en pause ce test que vous
voyez sur le côté. Et si nous regardons juste ceci et la section distante, jetez un œil à tous
ces projectiles qui ont été générés,
mais qui ne s'en vont pas. Donc, même si nous ne les
voyons
plus à l'écran et qu'ils n'ont
aucun rapport avec notre jeu. Ils sont toujours en mouvement. Il y a toujours une
partie de notre jeu. Donc, ce que nous devons faire, c'est que
nous devons maintenant gérer cela quand il quitte notre écran en bas et quand il quitte notre
écran en haut. Donc nous allons continuer,
aller de l'avant et aller dans notre script de projectile ici. Je vais créer une
fonction de vérification. Quelle discussion avec
une position de vérification. Ce n'est pas le meilleur nom pour ça, mais ça marchera pour ça. Nous allons dire « soi ». Nous pouvons vérifier
si la position du point propre est le point y. Je dirai si c'est
inférieur à
0, parce que rappelez-vous, 0 sera tout en
haut à gauche ou haut de notre écran
sera 0 dans la direction y. Donc, s'il est inférieur à 0, nous allons le
dire à Q3 lui-même. Maintenant, nous devons également
vérifier si
les tirs ennemis dépassent
le bas de notre écran. Et si vous oubliez le
numéro de votre écran, nous pouvons revenir
aux paramètres de votre projet, accéder à notre fenêtre d'affichage. Et n'oubliez pas qu'il ne mesure pas 400, nous voulons
donc rechercher
quelque chose de plus de 400. Souvenez-vous de nos sprites,
32,5 c'est 16. Nous voulons donc vérifier LF,
LF, position de doute de soi. Don't Y est supérieur à. Souvenez-vous qu'on a dit
400, comme ça pour le moment. Souvenez-vous qu'on a dit 400 Mais si nous regardons et
que nous nous souvenons du projectile, le point est au milieu. Nous avons donc la moitié, la moitié. Cela sortira encore, qui dans ce cas est bien, mais regardez mieux si nous
attendons qu'il sorte
de l'écran. Puisque ce sont des sprites 32 par 32 nous utilisons un tout
cela. On peut vraiment vérifier. Nous pouvons ajouter cela à cela. Nous pourrions donc en ajouter 16
juste pour en avoir un peu. On en fait 32 pour avoir le tout. Je vais juste utiliser pour 50, donnez-lui un joli chiffre rond. Et pour s'assurer qu'il n'y a aucun moyen qu'
il reste sur notre écran. Ensuite, je vais lui dire
de vous indiquer si c'est le cas. Maintenant, si nous jetons un œil à
cette section distante, quand nous jouons à notre jeu, et que nous regardons tous
ces projectiles qui entrent, ils sont générés et ne les ont pas
supprimés eux-mêmes. C'est facile. C'est simplement parce que nous
ne l'avons jamais appelé notre position de vérification avec le
dégradé, mais nous ne l'avons pas appelé. Je vais simplement
appeler cela dans notre fonction
de processus. Maintenant, si vous le souhaitez, vous
pouvez créer un minuteur qui vérifiera cela. Au lieu d'appeler cela
chaque image et le Tibre, mettre un chronomètre
sur le projectile et vérifier quand ce
temps est écoulé sera probablement un peu plus favorable aux
performances. Mais tout
dépendra de la mesure dans laquelle vous irez avec votre jeu pour savoir si c'est une
meilleure option ou non. Si nous entrons et jetons
un coup d'œil et encore une fois, nous regarderons la
télécommande
dans laquelle nous devrions protéger la maison est protéger la maison est générée et
elle est supprimée lorsqu'elle quitte l'écran. Pareil pour ceux que
nous tournons également. Celles-ci sont toutes supprimées
et les voilà. Nous avons maintenant corrigé
la fuite de mémoire que nous avions créée dans notre jeu. C'est donc aussi simple que cela. Cela fait en sorte qu'une fois que vous
n'avez plus besoin de quelque chose, vous vous en débarrassiez. Et si nous regardons nos bonus à l'intérieur
de notre spawner ici, nous voyons que ce n'est pas le cas, nous
n'avons aucun de ces problèmes avec l'apparition de nos
power-ups. Et la raison en est que nous avons abordé
la question ici même. Si vous êtes curieux,
je rejetterai si la position était
supérieure à 420 et nous l'avons supprimée. S'il est supérieur à, ce nombre est bien entendu transmis. Notre joueur a dépassé ou 100. Alors nous savons que ce n'est plus
à l'écran. On n'en a pas besoin et
on s'en débarrasse. Nous avons donc abordé ce problème avec
notre power-up. Et maintenant, vous venez de voir
avec notre projectile, pourquoi nous devons le faire avec
l'onglet distant là-bas. Avec la
quantité de choses que nous créons
qui existent encore dans notre jeu et la
rapidité avec laquelle elles s' accumulent avec les projectiles. Par exemple. Encore une fois, si nous en avons un avec un
tir rapide, nous avons des armes à tir rapide. Par exemple. Vous pouvez voir à quelle vitesse ils peuvent réellement commencer à se développer. Nous nous sommes attaqués à
cela, nous l'avons corrigé, et nous allons
ajouter un
mouvement vertical à notre ennemi. Si vous voulez juste faire défiler
l'ennemi
vers le joueur.
22. Mouvement vertical: Allons-y et abordons notre belle capacité
à nous déplacer verticalement. Si c'est tout ce que tu
veux dans ton jeu, alors c'est tout le mouvement
dont tu auras besoin. Maintenant, c'est, bien sûr, hyper dépendant de ce que
vous attendez de votre jeu. Bien sûr, ce que nous
allons faire ici, c'est simplement trouver
notre vaisseau ennemi ici. Et nous allons faire
la même chose que nous avons fait avec notre projectile. Nous avons donc notre vitesse et notre vitesse que nous
voulons expédier pour se déplacer. Dans le cadre de notre processus, nous allons avoir besoin d'
un mouvement et d'une glissade. Nous avons besoin d'une sorte
de vélocité. Bien sûr, nous allons
simplement utiliser notre vélocité comme argument de
vélocité. Et tout ce que nous allons faire, c'est
comme si vous vouliez randomiser la
vitesse entre deux nombres, vous pouvez certainement le
faire aussi. Assurez-vous simplement de le faire sous la couleur aléatoire ici. Et tu peux faire la même chose
comme nous l'avons fait avec le temps. Ils utilisent Rand. Eh bien, je veux présenter un chiffre ou si vous voulez
faire une fourchette de classement, vous pouvez certainement le
faire également. Vous pouvez aléatoirement les vitesses. Si vous voulez que tous vos vaisseaux aient
des vitesses différentes, vous pouvez certainement le faire.
Je viens d'ajouter aussi. Pour moi, je vais juste
utiliser la vitesse normale ici. Et je vais
fixer le mien à 100. Donc je vais juste dire que le point de
vélocité y est égal à la vitesse. Maintenant, souviens-toi
que c'est positif. Notre vaisseau est donc en train de descendre. Et si c'est tout
ce que nous voulons, c'est tout ce dont
nous aurons besoin. Je vais aller de l'avant
et les déplacer vers le haut. Et vas-y. J'ai dit que s'
ils étaient tous apparus à des points différents
et que nous pouvions voir qu'ils vont, se dirigent vers
nous et que nous pouvons nous adapter. Nous pouvons aller de l'avant et ajuster
ces vitesses comme nous le voyons. Et vous pouvez voir à quel point c'est un peu comme si vous vous déplaciez
dans une file d'attente. Je vais donc vous montrer à
quoi cela ressemblerait si nous changeons cela pour qu'il s'
agisse d'un montant aléatoire. Donc disons que la vitesse est égale. Et allons-y, juste pour vous montrer ne
serait-ce qu'un petit changement, nous allons utiliser la gamme Rand. Nous allons régler ça
entre, disons 9110. Il s'agit donc d'un petit écart, d'une différence de 20 %. Nous y jetons un coup d'œil et nous pouvons
voir qu'ils ont commencé de près. Mais ensuite, ils ont des différences. Maintenant, celui-ci prend du
retard parce que celui
du milieu
se déplace plus vite. Et bien sûr, vous pouvez créer
un écart
aussi grand que vous le souhaitez. Si tu veux emprunter cette
voie, on y va. Le milieu était juste
en train de naviguer et celui à l'extrême droite, qui se détendait un peu
. Et si nous devions
faire une pause et passer à distance, nous
descendons voir notre vaisseau ennemi. Et nous voyons qu'un navire en a
187, l'autre en a 95. Et notre troisième
compte un contre un. Donc, si vous voulez avoir
une vitesse aléatoire pour vos navires dans cette plage
verticale, c'est comme
ça que vous pouvez aller de l'avant
et ajuster cela. Donc ça dépend
entièrement de toi. Je pense que pour l'instant je
vais juste laisser le mien comme ça et nous pouvons passer à l'
ajustement de notre géniteur.
23. Spawner ennemi: Très bien, pour le générateur ennemi, nous allons utiliser
la même chose ici, en utilisant un nœud de base en tant que
générateur ennemi racine. Allez-y et enregistrez
ça dans nos scènes. Et nous allons faire une grande partie de ce que nous avons fait ici avec
notre géniteur habituel. Ajoutons donc une minuterie. Et si nous regardons
le code que nous utilisons ici, nous avons notre ennemi ici. Maintenant, si vous voulez avoir
plusieurs UPS ou non, dans ce cas, tout
comme nos pouvoirs, nous avons plusieurs ennemis. Ainsi, vous pouvez avoir une variété
aléatoire d'ennemis
comme il est apparu. Vous pouvez certainement le faire. Et je vais vous montrer
comment procéder de cette façon. Parce que vous savez
comment le faire avec un seul objet comme celui-ci. Maintenant, ce que nous allons faire est
quelque chose de similaire. Nous allons donc
entrer dans notre générateur ennemi. Je vais ajouter un script, placer au bon endroit. Ce que nous ferions, c'est que nous pouvons faire var ennemis égaux
, puis nos crochets. Mais pour chacun d'entre eux, nous allons faire comme ça
et récupérer notre vaisseau ennemi. Donc, si nous devions avoir des
multiples de ceux-ci, cela
ressemblerait à ceci. Et vous
continuiez simplement avec le nombre
de variétés
que vous aviez là-dedans. Dans ce cas, je
n'ai qu'un seul. Et bien sûr, l'avantage de le
faire de cette façon est d'
ajouter plus d'
ennemis plus petits de quelque manière que ce soit. À l'avenir, il
sera autonome, comme si vous n'auriez pas
à modifier votre code. Vous pouvez simplement les ajouter en
haut ici et passer à autre chose. Très bien, donc si nous nous
référons à nos bonus que nous avions notre générateur, n'ouvrez pas ce code. Nous l'avons fait. C'est juste en bas.
Je ne l'ai même pas vu. Vous pouvez donc voir que nous faisons
tout sur timeout. Cela signifie que nous devons connecter notre chronomètre à notre générateur
ennemi. Et maintenant, nous avons également cette
configuration à temps, ou nous pouvons appeler randomize. Parce que encore une fois, nous voulons que les choses soient aléatoires, tout comme
nous le faisons avec notre pouvoir. Et nous pouvons voir ici que nous créons
une instance de notre scène. Dans ce cas, nous avons, nous appelons une
instance de notre pouvoir, mais nous voulons que ce
soit un nombre aléatoire. Ensuite, nous devons d'abord
obtenir un vaisseau aléatoire. Supposons qu'un ennemi sélectionné soit
égal à un ennemi. Et entre
crochets, nous allons dire Randy. Et nous allons utiliser le
pourcentage de la
taille des points de nos ennemis pour une nouvelle variable.
Allons-y. Quel que soit le
nombre d'ennemis que nous ajoutons ou
supprimons en haut ici, notre code n'
allait jamais changer. Nous aurons toujours un ennemi qui peut être sélectionné. Alors nous descendons et ensuite nous
pouvons créer une instance
de notre ennemi. Disons que l'ennemi est égal à ce que
je dis mal. Disons que l'instance
ennemie sélectionnée. Donc, quel
que soit l'ennemi choisi, c'est lui que nous allons
créer une nouvelle variable. Et puis tout ce que nous avons à faire, c'est qu'un seul est ajouté. Je vais donc jeter un
œil à notre géniteur ici. Et vous pouvez voir que tout ce que nous avons
fait c'est de l'ajouter, ce qui convient parfaitement
à notre géniteur parce que le géniteur lui-même
ne va pas bouger. Alors allons-y,
ajoutons un enfant ennemi. Et à ce stade, c'
est maintenant dans le jeu. Mais ce que nous voulons, souvenez-vous
d'un, une variété sur le x. Donc, tout n'est pas juste dans
le coin supérieur gauche. Disons que la position x du rand est
un nombre aléatoire. Nous pouvons utiliser la gamme Rand. C'est parfaitement bien. Est-ce que nous l'avons utilisé ici pour emprunter
un autre chemin ? Nous n'avons qu'à utiliser Randy. Allons-y donc et
restons-en à cela juste pour des normes de
cohérence et de cohérence. Mais si vous vouliez
utiliser ces intermédiaires, encore une fois, 02 à 4. Allons-y. Nous avons donc notre nombre
aléatoire dans nos 224. Je peux, tu peux modifier ça si tu ne veux pas que ton
vaisseau traîne un peu. Par exemple,
je vais choisir, je vais dire 200. Puis à 20, ce qui
fera de mes numéros mon Min et Max 20 à 20. Nous les ajoutons simplement à la scène. Allons donc dans notre monde. Et dans notre générateur ennemi. Et je vais juste le
déplacer là-haut. Et si nous jouons à ce jeu maintenant, cela ne marchera pas
parce que nous
n'avons pas déclenché notre chronomètre. Revenons donc à cela,
définissons-le sur démarrage automatique, et réessayons. Allons-y. On voit donc qu'ils vont là-bas et qu'ils se
croisent en fait. Et ils restent là-haut. Tu dois te positionner,
mais on ne l'a pas réglé. Il suffit d'obtenir le point x de la
position de l'ennemi. Donc, la bonne chose est
que nous savons que notre script fonctionne. mauvaise nouvelle, c'est qu'il
entre en collision avec lui-même. Donc, quand la nouvelle position
point x est égale à notre position
rand, rand, je peux
épeler ici position run. Et ça va régler ça. Ou les gorgées vont encore
se croiser. S"ils en ont
l"occasion. Allons-y. Nous le voyons sur
le côté droit. J'en ai trois
empilés. Donc nous frayons souvent, nous avons la position
et ils tirent, fière
allure, sauf qu'ils
s'écrasent
l'un sur l'autre. C'est à ce stade
que je vais vous
présenter la fonctionnalité Mac et
couche. Donc si nous montons dans notre vaisseau
ennemi, c'est parti. Et notre
corps cinématique 2D, marge de sécurité. Et puis nous passons sous l'objet de
collision td. Ici, dans notre Inspecteur, nous avons Coalition, et ici
nous avons des calques et des masques. Donc, si vous affichez quelque chose
comme Photoshop, vous savez ce que sont les calques,
fonctionne de la même manière. Où vous pouvez avoir une couche de
joueur sont la couche supérieure, la couche ennemie,
la couche de projection. Et peu importe combien veulent aller de
l'avant et se séparer avec ça. Vous pouvez voir que si je l'ouvre, vous avez 32
couches différentes à utiliser. Et à la fois dans votre couche
et dans vos masques. Le calque est l'endroit où
se trouve votre objet et le masque est ce avec quoi
il peut interagir. Donc si vous ne le faites pas, pour que
votre vaisseau puisse
s'écraser l'un contre l'
autre ou percuter le
joueur ou quoi que ce soit d'autre, nous pourrions désactiver le masque. Le problème que nous avons
ici est que notre projectile se trouve également sur la couche 1. Puisque nous avons activé le masque unique, nous ne serons pas en mesure de
tirer sur l'ennemi du tout. Ce que je vais faire à la
place, c'est
déplacer notre ennemi
au niveau deux. Rien n'est, a un masque de
couche deux à l'heure actuelle. Donc, si nous allons de l'avant
et que nous jouons ça maintenant, vous pouvez voir que nos ennemis
ne se croisent pas. Ils s'
ignorent complètement. Mais ils rencontrent le joueur parce que
vous vous souvenez que notre joueur
est sur le masque un, ou est-ce que nos joueurs sont sur le premier niveau ? Donc, avec le masque détecté, nous le rencontrons. Maintenant, selon
que vous voulez que l'ennemi
puisse tomber le joueur ou non et le faire exploser avec des
dégâts au joueur. Cela peut
être idéal ou non pour vous. N'oubliez pas que si nous
infligeons des dégâts à un joueur, nous pouvons simplement désactiver temporairement
la
collision du joueur
pour éviter que
cela temporairement
la
collision du joueur ne se produise. Donc, ce que nous pouvons faire, c'est laisser
notre joueur sur un. Nous avons notre ennemi. Et si nous en utilisons trois
pour notre projectile. Et nous regardons ces
trois-là pour le projectile. Et le projectile
peut interagir à la
fois avec le joueur et l'ennemi. Nous avons donc
réglé le masque 12 et nous l'essayons. Nous voyons de l'os et maintenant l'
ennemi nous écrase. Et ils ne peuvent plus
interagir avec nous. Alors allons-y. Ça, c'est ouah. Comment nous pouvons aller de l'avant et
accomplir cela, ce sont des
changements et ne plus
nous rencontrer. Ils ne sont pas
bloqués sur notre joueur et notre projectile. Comme il interagit
avec les deux couches. Avec notre masque sélectionné 12. Nous devrions être en mesure
d'infliger des dégâts à notre ennemi et notre Amy devrait encore
être capable de nous infliger des dégâts une fois que nous les avons ajoutés. C'est donc aussi une
petite
introduction aux calques et aux masques. N'oubliez pas que le calque est l'endroit où
vos objectifs et le masque, les calques avec
lesquels il peut interagir. Encore une fois, si nous sommes sur le
masque un et le calque un, calque un
interagira avec lui. Depuis que nous avons sélectionné le masque. Si nous sommes sur le calque deux
avec le masque un sélectionné, alors nous pouvons interagir avec
tout ce qui se trouve sur le calque un, calque un côté qui
interagit avec nous. J'espère que ce n'est pas le cas, ça ne t'a pas trop
embrouillé. Mais sachez simplement que
tout fonctionne. Si vous avez des questions
sur les masques de calque, vous pouvez toujours les poser. Et je vais essayer de clarifier ce qui peut vous
embrouiller avec eux. Nous pouvons passer
à la vidéo suivante. À ce stade, nous avons un mouvement de
tir de frai et nous
n'avons aucune fuite de mémoire. Donc ce que je vais faire c'est
que je vais juste
retirer ces trois
vaisseaux de départ de ma scène ici. Allons-y. Maintenant, nous ne les avons pas quand vous commencez et ils peuvent apparaître. Maintenant, si vous voulez créer un chronomètre
aléatoire pour vos navires, vous savez comment faire des chronomètres
aléatoires à ce stade ou obtenir des nombres
aléatoires. Vous pouvez certainement le faire.
Le temps d'attente a été remplacé. Très bien, vas-y. Nous avons tout
mis en place, nous allons partir. Nous avons des ennemis,
de la puissance, des tirs. Mis à part la santé et GameOver était destructeur
et tout ça. Nous l'avons fait. À ce stade. Les bases, les bases du jeu de tir
spatial standard.
24. Touche par balle: Aujourd'hui, nous allons essayer de faire
en sorte que notre
projectile tire et détruise
notre ennemi et notre joueur. Et selon la santé que vous voulez donner au joueur
ou à l'ennemi,
vous infligerez des dégâts ou le tuerez carrément. Donc, la première chose que nous devrions faire est plutôt que la première
chose que je veux que vous ayez
faite soit de vous assurer que votre vaisseau ennemi n'en cause
pas, ne provoque pas de fuite de mémoire. En vérifiant votre position, comme nous le faisons avec
les projectiles que nous
avons récemment réalisés, l'une
des dernières vidéos. Et sur ce, une fois que vous vous êtes
assuré de l'avoir, dirigeons-nous
vers notre projectile. Et vous
allez ajouter une zone à D qui a
une forme de collision et agrandir légèrement la forme
de collision. Quelle forme de clic était pour
que vous puissiez voir ici pour moi c'est juste un clic plus grand. Très bien, alors
vas-y et fais-le. Et puis
pour que cela fonctionne,
allons dans notre zone de tir
ou zone de tir pour être égale
à la collision. La couche mature est définie
sur la couche trois. Et nous allons
configurer notre masque 212 afin de pouvoir interagir
avec les couches 12, quel joueur étoile
et quel vaisseau ennemi. Nous pouvons aller à
la section des notes ici afin de jeter un
œil aux signaux et de
connecter le signal saisi par le corps à notre script de
projectile. Et c'est ce que nous
devrions voir ici. Cette fonction est
créée automatiquement pour nous. Donc, le moyen le plus simple de le faire en place
et tester est pour notre joueur, je vais vous montrer deux
façons de vérifier cela. L'un utilisant des noms et
l'autre utilisant des groupes. Donc, pour le joueur, je
vais utiliser des noms. Donc je vais dire si le nom
du joueur et du corps, le point Q du corps est libre. Donc ce que cela veut dire,
c'est si le corps physique
qui entre dans cette zone, si son nom passe le joueur
avec un P majuscule Et puis nous allons
dire que ce corps est entré dans notre zone,
DQ se libère lui-même. Donc, si nous revenons à
notre scène de joueur et que nous examinons
notre corps cinématique. C'est un joueur avec un
P majuscule , donc ça va marcher. L'ennemi devrait être
capable de nous tuer efficacement, se
fera tirer dessus et le
mode disparaîtra de la scène. Allons-y. Si on tire, on bouge. Rien ne se passe parce que
nous sommes complètement guéris. Très bien, maintenant pour notre ennemi, je vais
maintenant vous montrer
comment faire avec les groupes. Donc, si vous voulez créer
plusieurs vaisseaux ennemis différents, vous pouvez simplement les placer tous
sous le groupe ennemi, et cela fonctionnera. Vous n'aurez pas à ajouter
de code au projet. Passons donc à notre vaisseau ennemi vu avec notre
corps cinématique 2D ici. Parce que n'oubliez pas que nous travaillons
à partir du corps qui est entré. Passons à la
section des groupes. Sur la droite. Nous allons aller dans notre zone de
texte et nous allons
dire ennemi et appuyer sur
le bouton Ajouter. Donc, si nous devions gérer nos
groupes maintenant, nous voyons que nous avons le groupe ennemi, qui
est constitué de notre vaisseau ennemi. Comme vous voyez leurs notes
dans le groupe navire ennemi. Et vous pouvez facilement en ajouter
ou en supprimer. Mais maintenant que nous
l'
avons, nous pouvons
travailler avec tous nos ennemis tant que nous les ajoutons
simplement au groupe. Tout ce que nous aurions à faire,
c'est si le corps est en groupe. Et cela prendra un argument sous la forme d'une chaîne si je ne me
trompe pas sur le nom du groupe. Dans ce cas, il s'agirait
d'une chaîne de capital ennemi Y. Allons-y et
essayons-en. Dirigez notre monde. Et nous devrions maintenant être en
mesure de tuer notre ennemi. Et nous ne le pouvons pas. Oh, ça ne fait rien. On
lui a dit de passer ici. Évidemment, nous voulions faire de la
gratuité, comme nous le faisons avec notre joueur. Donc si nos corps et
le groupe ennemi, nous lui disons simplement de rester libre. J'ai choisi la mauvaise
scène ici, bien sûr. Et vous pouvez voir si nous tirons maintenant, Aereo, notre ennemi
et qu'il se fait tuer. Comme vous pouvez le
voir, notre objet traverse directement
tout ce que nous photographions. Donc, si vous ne voulez pas
que cela se produise, vous voulez que vos
prises de vue soient minimes. Ici. Ce que nous allons faire est hors
de ces conditions. Maintenant, vous pouvez le
faire en bas, ou vous pouvez
le faire en haut, peu importe. Nous allons juste
dire « self dot Q free ». De cette façon, notre
discours sur les projectiles lui-même. Allons-y. Nous avons un tir qui fonctionne dans
notre jeu et nous sommes capables de détruire notre anatomie
et notre joueur. Très bien, dans la prochaine vidéo, nous allons commencer et nous allons
mettre en place Health Speaking. Il y a du courant juste là. Configurez la santé et notre multiplicateur de
dégâts. Assurez-vous que notre bouclier
fonctionne pour nous protéger. Allons-y. Très bien, je te
vois dans la prochaine vidéo.
25. Dégâts à la santé et au bouclier: Dans cette vidéo, nous allons
attaquer
le joueur et notre ennemi, leur infligeant
des points de
vie et des dégâts. Alors allons-y et allons-y. Allons empiler
notre vaisseau ennemi. Ce sera un peu plus facile, mais un peu d'espacement. Et nous allons créer une nouvelle
fonction appelée dégâts. Nous voulons l'appeler « hit ». Je transmets mon
paramètre de dégâts. Et nous allons juste appuyer sur Passe pour l'instant. Nous allons passer
aux deux premières variables. Et je vais créer
une variable pour notre, pour ce vaisseau ennemi spécifique. Je vais l'appeler Santé. Et je vais régler ça à trois. Le vaisseau a donc trois points de vie, il n'est pas très fort. Et ce que nous allons
faire, c'est dire que la santé dans notre fonction, Santé moins égale les dégâts. Ensuite, nous dirons si la santé
est inférieure ou égale à 0, alors self point Q free. Maintenant, la raison pour laquelle nous
allons dire
inférieur ou égal à 0, parce que s'il est égal à 0, alors notre ennemi devrait être
mort et il devrait lire. Alors. Mais s'il y a d'une manière ou d'une autre, un pépin se produit et notre ennemi
finit par avoir une santé négative. Cela agit comme
une vérification de barrière pour s'
assurer que l'ennemi détruit
comme il est censé
le faire, même s'il est en quelque sorte
en dessous de 0. Maintenant, au niveau de notre projectile, où se trouve notre groupe
ennemi,
nous allons juste
appeler « coups de points ». Et rappelez-vous que cela prend
une essence de paramètre si cet ennemi a trois points de vie. Nous allons dire que
cette analyse de projet, nous pouvons la filmer très rapidement. Nous allons dire que cette
vérification
n'inflige qu'un seul dégât à l'ennemi. Donc, si nous devions courir ça
maintenant, nous devrions voir que l'ennemi tire pour tuer. Allons-y, 123. Et si notre joueur se fait tirer dessus, vous voyez que nos joueurs sont toujours
détruits instantanément. Notre vaisseau a donc maintenant de la santé, et notre joueur doit
avoir de la santé, mais aussi prendre en compte d'autres
paramètres tels que, bien sûr, nos boucliers. Passons donc
à notre script de couche. Donnons de la
santé à notre joueur si ce n'est pas déjà fait. Mon joueur a trois points de vie. Nous allons en venir
à Où dois-je mettre ça ? Je mettrai ça juste
en dessous de ma prise de vue avant d'entrer dans
nos bonus. Je vais créer une
nouvelle fonction appelée hit. Cela prendra un
paramètre de dégâts. Et nous allons faire la
même chose ici, la santé moins les dégâts. Et nous dirions que si je
suis inférieur ou égal à 0, self.view grey, comme
nous l'avons fait avec notre anatomie. Maintenant, le problème ici,
nous devons jeter un œil à notre bouclier, non ? Nous devons donc vérifier
si notre bouclier est actif. Nous y jetons un coup d'œil, nous avons créé
une variable appelée shielded. Et quand le bouclier est actif, nous pouvons ajouter blindé égal
à vrai. Faisons en sorte que nous
ayons cela dans notre fonction. Et maintenant, quand nous serons touchés, avant de faire
ces calculs, nous pouvons dire si l'ancien l'a fait. Et nous voulons nous assurer qu'il
dit sinon, elle avait un C, Vous pouvez faire le
point d'exclamation avant le mot blindé, ou vous pouvez taper le mot non. Dans les deux cas. Il faisait la même chose. Je vais juste
surligner ces trois lignes et appuyer sur Tab. Donc, si nous ne sommes pas protégés, nous allons perdre de la santé. Et si notre santé est inférieure à
0, nous nous supprimons nous-mêmes. Nous pouvons donc maintenant avoir une
autre déclaration ici. Donc si nous sommes protégés, nous pouvons alors supprimer notre bouclier entré blindé, défini sur false. Maintenant, si nous regardons, le
bouclier contre Israël est l'enfant de notre joueur, nous allons avoir un de ceux-là. Donc si nous ouvrons la scène de
nos boucliers, nous pouvons voir que nous venons d'appeler
ce grand bouclier. Nous devrions donc être en mesure de
faire à l'intérieur de nos
joueurs vus ici. Nous devrions être en mesure d'
obtenir les boucliers des nœuds, vous
assurer que vous l'épelez correctement
ou vous vous retrouverez avec une erreur une fois que nous aurons lancé le jeu
et que nous aurons atteint cette partie. Donc, disons que les boucliers parsèment Maintenant, cela devrait supprimer notre bouclier et définir notre
bouclier sur faux. Et si nous n'avons pas de bouclier, nous devrions être
endommagés. Pour cela, je
vais également imprimer notre état de santé juste pour
que nous puissions le voir visuellement dans notre console. Allons-y, lançons
ceci et voyons comment cela fonctionne. Sans aucun bouclier. On se fait tirer dessus. Nous ne l'avons pas
appelé sur notre projectile. Je veux l'appeler point de corps, appuyez sur. Et encore une fois, je vais juste infliger un seul dégât à notre
joueur également. Cela va maintenir l'équilibre
entre eux deux. Nous voyons sur le
côté ici que nous passons à la santé One Health et 0, avec
laquelle nous sommes morts bien sûr. Maintenant, si nous pouvons vivre assez
longtemps pour obtenir un bouclier,
nous pouvons le tester. Ce sera un test un
peu aléatoire. Qui sait ? Quand
aurons-nous le pouvoir ? Si on veut en avoir un aussi. Allons-y,
il y a un bouclier. Fantastique. Nous en avons donc un. Lorsque nous sommes touchés, notre santé ne
devrait pas baisser et notre
bouclier devrait disparaître. Notre bouclier a disparu. Et bien sûr, nous n'avons pas
imprimé notre santé parce que nous n'avons jamais subi de dégâts. Maintenant, nous subissons des dégâts sur un. Ensuite, nos boucliers et notre santé diminuent
comme prévu. Maintenant, si vous avez une animation d'explosion ou de mort que vous
ajoutez à celle-ci pour votre
joueur ou votre ennemi. Il vous suffit de
lire l'animation. Et une fois que c'est terminé, je l'ai réglé sur.
26. Gain de santé: Très bien, allons-y et
attaquons-nous à notre santé. Alors aussi, est-ce que j'ai
quelque chose ici ? Alors jetons un coup d'œil. Que faire ? Jetez un œil à notre script
Power Apps. Et nous pouvons créer notre pouvoir. Buddy est entré. Ok,
alors allons-y. Lorsque nous serons en meilleure santé, c'est la section que nous
voulons consulter ici. Ainsi, lorsque la zone 2D du corps est entrée et que la puissance que nous
recherchons, c'est notre santé. Et c'est à ce moment que nous
allons travailler ici. Nous allons aller de l'avant et
créer notre fonction pour cela. Nous allons dire,
eh bien, la santé va dire augmenter
la santé et refaire
la santé plus égale la quantité. Et c'est aussi simple que nous
devons améliorer notre
santé pour fonctionner. Si vous voulez avoir un
maximum de santé, alors vous pouvez dire, tout ce que nous avons à faire est de monter en haut et nous allons
dire var max health. Je vais fixer à peut-être
cinq, c'est le maximum de
santé que nous ne pouvons jamais obtenir. entrerons et nous partirons si
la santé est inférieure à l'étagère r max. Ensuite, nous
avons juste cette ligne. Et on y va. C'est tout ce que nous
aurions à faire si nous
voulons nous assurer
d'avoir un maximum de santé
que le joueur ne dépasse
pas ou ne dépasse pas. C'est tout ce que nous avons
à faire pour cela. Mais maintenant, nous pouvons voir que notre
santé va fonctionner. Et si j'imprime plus sainement, je vais juste
entrer dans notre monde. Et allons-y,
jouons-y et voyons ce qui
se passe quand nous obtenons une santé notre Hold on. Je m'en souviens, je
ne l'ai pas appelé. Passons donc à la santé de
nos power-ups. Et on nous appelle en fait
le point santé du corps. Et transmettez le montant que nous voulions augmenter,
qui est le mien. Assurez-vous que je l'ai bien fait. Ouaip. Très bien. Nous pouvons maintenant aller dans
notre monde et tester nos biens de santé. Nous en avons donc trois par défaut, si vous vous souvenez, nous avons sélectionné un Health et vous pouvez le voir dans la console
à gauche,
ou bien la santé est maintenant de quatre. Quand on a commencé à trois heures. Et avec notre vérification
de la santé du Mac, nous ne devrions jamais aller
plus haut pour aucune raison. Quel que soit notre objectif dans le
sud. C'est bon, on y
va. Notre système de santé fonctionne
désormais comme il se doit. Nos boucliers
ne fonctionnent pas seulement, mais ils sont pris en
compte lorsqu'il se fait tirer dessus. Et quand on nous tire dessus,
nous sommes endommagés. Nous avons traité correctement
nos ennemis et notre joueur. Cela couvre tous
nos power-ups, notre puissance,
nos tirs, infligeant des dégâts. Si vous créez des tirs différents, vous
pouvez bien sûr utiliser
le même type de script pour
le projectile uniquement avec des valeurs
différentes mises
ici pour vos dégâts. Très bien, donc
tout cela fonctionne et pour la plupart, nous avons exactement ce
dont nous avons besoin pour appeler ce jeu de tir
spatial terminé.
27. Arrêter de tirer mutuellement: Très bien, dans cette vidéo,
nous allons
faire en sorte que nos ennemis ne puissent pas
se tirer dessus dans le dos. Et pour ce faire, nous allons nous diriger vers
notre vaisseau ennemi. Nous allons ajouter une diffusion de rayons à D. Et pour une raison quelconque,
elle est désactivée par défaut. Nous voulons donc aller
dans la section Activé de l'inspecteur
et l'activer. Maintenant, Arrow est effectivement jusqu'où notre casting va
aller, jusqu'où nous allons vérifier. Donc ce que nous allons faire, c'est que je vais aller de l'avant et définir le cache , disons, peut-être 100. Cela le fait en plus, faites
la majeure partie de votre écran. Si vous voulez devenir un
peu fou, vous pouvez faire quelque chose
comme 400 pour vous
assurer de couvrir la
totalité de l'écran. Cela dépend entièrement de vous. Ou masque de collision, nous
voulons interagir avec le calque deux. Je vais donc en désactiver un parce que nous voulons seulement vérifier si nous touchons notre ennemi, ou dans ce cas,
notre allié ennemi. Donc dans notre script, quand
nous tournons, voyons voir. Où est-ce qu'on le filme ici, on devrait écrire ici
quand le chronomètre dépassé
L. Alors on va
faire une petite vérification. Je vais dire
si nous voulons obtenir notre diffusion de rayons 2D pour que le rayon F
puisse étudier le point entre en collision. C'est tout ce que nous
devrions avoir à vérifier. Il y a collision ou non. Nous allons donc dire que si ce
n'est pas le cas, la
rediffusion TD entre en collision. Nous allons le faire,
ce qui va essentiellement
tirer des olives. Et remarquez que j'ai laissé le
démarrage de la minuterie hors de là parce que, qu'
elle entre en collision ou non, nous voulons redémarrer la minuterie. Donc, si nous devions lancer ceci maintenant, juste à
des fins de test et pour vous montrer, je vais de nouveau régler
ma vélocité y à 0 sur mon ennemi. Je vais me transformer, entrer dans notre monde ici. Et je vais m'attaquer aux ennemis. Je vais en placer un juste
devant nos joueurs. Ou plutôt, mettons-le
sur le côté. Allons-y et
trouvons un autre vaisseau ennemi. Et nous allons le mettre
derrière lui comme ça. Donc maintenant si notre code fonctionne là,
oui, à l'arrière
ici ne devrait pas, parce qu'il sait qu'il
tirerait sur un allié amical pour cela. Alors que celui
de devant devrait pouvoir
continuer à tirer normalement. Et on y va. Nous
pouvons voir à l'avant et tous ceux qui sont en train de
frayer et de tirer. Mais celui qui est juste ici en haut à
gauche est en haut à gauche ? Non, puisque l'ennemi en
face et n'a pas tiré. Si on y jette un coup d'œil, seul
le premier tire parce que les autres frappent au moins un autre vaisseau
qui sera devant lui. Une application Notre à dire attrape ce
vaisseau et arrache-le. Vous pouvez voir maintenant qu'il y aurait un tournage parce qu'il n'y a
rien devant. Et celui qui est tout
en haut ne tire pas. Parce que si vous
regardez juste dans cette zone, vous pouvez voir qu'elle atteint à peine la boîte de collision que
nous avons de notre vaisseau. Donc si nous devions juste prendre
ça et un peu plus, vous pouvez voir en bas ça va l'avant et il commence à tirer. Maintenant, il frappe
notre ennemi là-bas. Et ça, c'est pour le corps. Très bien, donc on n'y est pas allés.
Nous pouvons voir qu'ils ne tirent que lorsque nous avons
des ennemis directement devant eux. Donc vous pouvez voir de quoi il s'agit, nous avons un
lien assez correct avec le fait de savoir si un ennemi est
devant nous
ou non. Avec cette logique, tout
devrait aller bien. Maintenant, je vais commencer et ajouter mes géniteurs dans le
monde. Spawner ennemi. Si nous allons de l'avant et qu'on y jette un
coup d'œil maintenant. Oh, c'est ça.
Je les ai mis à 0. Testez ça. Remettez-le
en vitesse. Allons-y. Nous pouvons donc voir qu'
ils ne tirent pas lorsqu' ils ont un autre vaisseau
juste devant eux. Et on y va. Maintenant, nos vaisseaux
sont un peu plus conscients d'eux-mêmes.
28. Animations spawn: Maintenant, il ne vous reste plus qu'à faire si vous
voulez des motifs plus complexes, au lieu de vous déplacer directement vers le bas. Vous pouvez simplement utiliser
quelque chose comme un aléatoire, quelque chose comme notre
aléatoire que nous utilisons. Retirons-le en arrière. Par exemple, tout comme
nous le faisons ici quand Randy nous pouvons faire
quelque chose comme ça. Ensuite, en fonction
du nombre que vous obtenez,
vous pouvez jouer une animation
spécifique qui vous permet de créer des navires britanniques. Donc, si vous voulez avoir de l'unique, peut-être que vous
voulez expédier pour faire quelques boucles. Vous pouvez aller de l'avant et vous
pouvez le régler pour qu'il le fasse. Évidemment, vous devez
régler sa vélocité y sur 0. Si c'est ce que tu veux. Sinon, vous
allez continuer à vous déplacer verticalement même pendant la
lecture de votre animation. Vous pouvez donc profiter de
l'animation du joueur pour faire en sorte que vos vaisseaux fassent toutes
sortes de choses. Et vous pouvez
profiter de l'utilisation de Randy pour créer des scénarios différents ou
jouer à différents scénarios. Et l'endroit où vous
feriez cela
serait juste ici, à l'intérieur
de la zone d'apparition de vos ennemis. Donc basé sur
ce que tu obtiens. Donc nous disons,
disons, par exemple, si je dis var est égal à randy, accord, disons
Randy cinq, comme ça. Ensuite, nous dirons que F
et M sont égaux, égaux à 0. Qu'est-ce que la valeur par défaut ici ? Et ici, et m est égal à un. Et bien sûr, vous pouvez utiliser le match comme nous l'avons fait auparavant
avec le joueur. Quand il s'agit de power ups. Ici, vous pouvez
voir une correspondance ici. Vous ne voulez pas
utiliser d'instructions if. Évidemment, nous pouvons aller de
l'avant et y jeter un coup d'œil. Si le couteau anime anime. Si Adam un. Lancez cette animation, réglez
la vélocité connue pi sur 0. Et c'est tout ce que tu
aurais à faire. Maintenant, notre forme va
filmer en continu. Cette logique est tout à fait indépendante. Mais c'est comme ça que tu
peux le faire, non ? Et puis nous pouvons,
bien sûr, faire une autre vérification si nous étions tous et M2. Et nous pouvons jouer cette animation
et définir la vélocité à 0, qui obtient trois pour
cent. Donc en haut, c'est
vraiment à toi de décider. Et l'animation est
que vous voulez créer pour que les navires puissent utiliser ou
avoir lorsqu'ils apparaissent. Et si vous voulez
aller plus loin, disons que l'animation 1 arrive
par la gauche. Je suis Sam de
gauche. Tu peux le faire. Vous pouvez entrer et vous pouvez, vous pouvez vérifier que la position
x est inférieure à, peut-être que votre animation
doit être inférieure à 300. Donc tu peux vérifier ça, non ? Il suffit donc d'utiliser ce texte
simple et de créer différents types d'animations
avec un flux de liens comme celui-ci. Je dois également ajouter quelque chose ici. Juste au cas où certaines personnes
ne réaliseraient pas d'ajouter un ennemi en tant qu'enfant. Enfant. Je vais simplement ajouter cela pour mettre un peu
l'accent là-dessus. Mais c'est essentiellement
tout ce que vous avez à faire est suivre ce
chemin avec, et vous pouvez aller dans
le lecteur Animation et vous pouvez créer toutes
les différentes animations, toutes les différentes
animations vous voulez que votre navire prenne le chemin et aille aussi
loin que possible. Très bien, ça, ça gère ça. Nous avons, vous avez une idée de la
façon de créer un avoir unique. Si vous voulez avoir
une animation spéciale ou votre vaisseau, quand il apparaîtra. Et bien sûr, ce sera une chance aléatoire, qu'
il le fasse ou qu'
il vienne tout
droit. Si tu veux. Nous sommes allés de l'avant et nous sommes
adressés à nos ennemis, sans nous tirer dessus dans le dos. Bon ? À ce stade, je n'
utiliserai aucun de ces outils, mais vous pouvez certainement le faire,
si vous le souhaitez. je ne
pense pas que je vais le faire, je suis d'accord avec le fait
que ça
tombe tout droit comme certains classiques. Mais il ne nous
reste pas grand-chose à faire ici à part nous
attaquer à ce à quoi va
ressembler notre interface graphique et la mettre à jour.
29. Création d'interface utilisateur: Très bien, dans cette vidéo, nous allons continuer et créer la
partie interface utilisateur de notre jeu. Donc, si je zoome ici, vous pouvez voir que
notre santé sera affichée sur notre
gauche sous forme de cœur. Et nous avons à la fois un
vide et un remplissage. Comme nous l'avons fait avec
nos autres bonus ici, mais nous allons
avoir nos bonus affichés sur le
côté droit. Lorsqu'ils sont vides,
ils sont grisés. Quand ils sont
visibles. Tout sera illuminé comme vous le voyez ici. Maintenant. Nous pourrions simplement les laisser
individuellement comme ça. Ensuite, il suffit de basculer ceux
qui sont affichés via la visibilité. Mais il existe un
moyen beaucoup plus simple pour nous de le faire. Je vais donc les
supprimer tous. Et le moyen le plus simple d'
accomplir quelque chose comme ça. Tout d'abord, utilisez
un calque de toile. Maintenant, le calque de la toile ,
tout ce qui est placé dessus , sera
dessiné au-dessus ou
devant tout le
reste de l'écran. Je vais donc créer une nouvelle
scène, aller dans mon autre nœud. Mon calque de toile est utile si nous l'épelons correctement.
Allons-y. Je vais le renommer comme
étant de mon devoir. C'est ce que ça va
être et on va le sauver. Scènes. Sauver. Allons-y. Maintenant, notre
scène est en sécurité. Et gooey, si vous ne le savez pas, cela signifie simplement interface utilisateur
graphique. Ce que je vais utiliser pour cela c'est que je vais
utiliser une barre de progression. Mais nous ne voulons pas
de progrès normaux. Nous voulons avoir nos textures et nous allons utiliser
une progression de texture. Maintenant, cela
va essentiellement nous permettre remplir et de vider un bar. Et maintenant, il peut
considérer cela comme
une
barre de santé rectangulaire typique ou une barre de chargement. Cependant, nous allons le
faire avec nos sprites. Et nous allons continuer, nous allons commencer par la
barre de santé, comme nous l'avons nommée celle-ci. Et allons-y
et jetons un coup d'œil. Nous allons le remplir
de gauche à droite. Vous pouvez voir que nous avons toutes ces options
différentes ici, en fonction de ce que vous voulez. Ceinture de but de ton Bartok. Nous avons de gauche à
droite, de droite à gauche. Nous avons du haut vers le bas. Ce qui peut être intéressant ou payer de
bas en haut sur façon dont vous voulez procéder. Nous avons une barre dans le sens des aiguilles d'une montre, donc je ne me trompe pas
Souffle de la nature. Ce nouveau jeu Zelda
qui est sur le switch
utilise une barre d' endurance dans le sens des aiguilles d'une montre,
si je me souviens bien. Mais ce que nous allons utiliser
est de gauche à droite pour cela. Maintenant, si nous vous ouvrons les textures, nous avons un dessous et un
dessus et une progression. Maintenant, je mélange ces fils exactement
quoi, qui est lequel. Mais je vais aller de l'avant
et m'occuper de ma santé. Vide, je crois, va
au fond, soit
continue, soit progresse. Je crois que
ce serait comme les décorations avec une
bordure autour de votre bar. En dessous se trouve le
dessous de chaque barre. Donc, si vous avez une
barre de santé, elle peut être
rouge plus foncé ou simplement
vide et n'avoir rien. Ensuite, c'est le progrès
que nous allons
montrer au fur et à mesure que nous progressons. Donc, si je mets ma
barre de santé remplie une en cours et la
vide et moins, si je descends ici à ma
valeur et que je la règle à 50, ce qui est à mi-chemin parce que le
Min est 0, max a faim. Alors j'ai dit que la santé évaluée à 50 actions se
remplit à mi-chemin. Vous pouvez maintenant l'afficher comme vous le souhaitez. Je vais aller de l'avant et fixer
ma valeur maximale à cinq. Ce qui signifie que si je fixe ma valeur à cinq, je
serai en pleine santé. Si je le règle sur un, il nous reste un point de vie. Et si vous voulez franchir
cette étape supplémentaire, vous pouvez voir que nos étapes
augmenteront en étant définies sur un. Par exemple, nous ne pouvons pas faire 1,5, il suffit de l'arrondir à deux. Mais si vous voulez avoir un
demi-cœur là-dedans, changez notre étape 2.50, et maintenant nous serons en mesure de faire 1,5 sans nous arrondir. Ce ne sont donc que quelques
options auxquelles vous pouvez penser pour ce que nous allons
faire ou ce que vous voulez faire. Eh bien, c'est essentiellement tout ce dont
nous aurons besoin. Pour faire, ces barres fonctionneront
essentiellement
de la même manière. Notre santé, nos boucliers
multi-tirs et notre vitesse. Non, il n'y a qu'une seule image. Cela signifie simplement que
nous allons avoir une valeur maximale de un
plutôt que de dire qu'il y a 0 ou un. Elle est activée ou désactivée,
activée ou désactivée. Avant une meilleure santé, vous pouvez
voir prendre un peu de liberté. Donc, si vous le souhaitez, vous pouvez
faire des demi-points de dégâts ici ou vous pouvez vous en tenir
au standard, ce que je vais utiliser
ici. La norme 12345. Et je vais simplement
créer nos autres marques ici. Donc, le laboratoire a deux autres textures. Les barres de progression en auront une
pour notre barre multi-coups. Nous avons notre barre de vitesse. Enfin, une
barre de progression. On ne verrouille pas ça. Mais comme je l'ai ouvert,
vous pouvez voir qu' une
barre de progression est généralement ce que vous allez voir pour
quelque chose comme un écran de chargement. C'est juste une simple
barre qui se remplit. Et c'est vraiment tout ce
que tu as à faire. Alors que la texture, comme vous
l'avez vu, nous pouvons y appliquer nos propres textures
personnalisées, rendre plus unique. Alors allez-y et faites à nouveau progresser une
texture. Et ça laisse juste envie
d'être notre barre de protection. Très bien, donc en passant à
celui-là, notre barre de tir multiple
va être réduite. Allons y jeter un œil. Nous allons
mettre notre dessous, elle est vide. Notre progrès, qui est notre
plein, apporte notre petite barre. Nous avons donc notre minimum. Et ce
sera soit 0, soit un. Réglez-le sur un. Pour jeter un œil à maxed out, nous pouvons augmenter notre vitesse, qui serait à peu près de
la même taille. Très bien, nous pouvons
maintenant voir jusqu'où nous voulons que nos positions soient
à ce sujet. Où est-ce que je veux que ça aille ? Voyons voir, mettons-nous en
épave et en position. Et c'est peut-être un peu trop. Je pense que cinq
serait un bon chiffre. Ceux-ci le long position y vers
le bas, position
détruite y cinq. Pareil avec notre aide. Gardez tout sur un terrain
uniforme ou une apparence
plus belle dans l'ensemble éloignera également
cinq du x. Attrapez les trois. Déplace-toi. Et
jetons un coup d'œil. ce que nous avons. Je vais commencer par
nous emmener ou aller jusqu'au bout. Ensuite, je vais juste en
soustraire cinq. Disons 208 moins cinq. Ensuite, nous dirons 125 moins cinq, soit un quatre-vingt, un soixante-trois moins
cinq, ce qui nous laisse 158. Très bien, maintenant nous avons
une distribution égale entre tous ces éléments
et si nous lançons ceci, laissez-moi voir, c'est comme ça que notre
interface utilisateur va ressembler ici. Avec notre interface utilisateur maintenant créée. Nous pouvons ensuite passer à
la mise en œuvre du bill ops et non
à nos scripts.
30. Mettre à jour l'interface utilisateur: Très bien, alors
allons-y et commençons à ajouter à notre code. Et je pense que le moyen le plus simple de le
faire est de créer une fonction globale qui pourrait gérer le changement de n'importe laquelle de nos barres. Ce sera donc une fonction
que nous pourrons utiliser encore et encore. Je vais
donc créer un nouveau script pour argumenter. Placez-le au
bon endroit. À l'intérieur de nos scripts. ne s'agira pas de variables. Ils sont prêts à fonctionner. Nous ne pouvions pas utiliser ça. Je ne vais pas m'en
débarrasser tout de suite. Et à l'intérieur de notre
fonction de processus, désolé, pas de processus. Et débarrasse-toi de ça. Nous allons avoir nos propres fonctions ici. Je vais accéder à la mise à jour de la
fonction, à la barre de mise à jour. Et cela va prendre
deux arguments d' une barre sous forme de chaîne. Et cela va prendre une valeur sous la forme d'un pouce. Maintenant, si vous faites
une demi-valeur, vous
devrez bien sûr également être capable d'
accepter des charges, ce qui signifie comment vous
pouvez le définir comme ceci. Pourquoi faire un nombre entier,
vous
aimez bien sûr 1, par exemple. Puisque j'ai affaire
à des nombres entiers, je vais y aller
directement. Et ce que nous allons faire, c'est
utiliser le bar. Donc, quand nous appellerons cela, nous allons passer une
chaîne comme une barre de santé, une barre de tir
multiple, une barre de C
, une barre de bouclier. Nous allons donc lui dire quelles barres
nous avons achetées. Après cela, nous pouvons aller de
l'avant et faire encore nœud. Et nous pouvons simplement passer le
bar que nous voulons. Nous définissons la valeur du point comme étant égale
à la valeur que nous lui transmettons. Et c'est tout ce que nous
avons à faire. Combattez maintenant, ajoutez ou définissez
nos vars sur
ce que nous voulons, quelles que soient leurs
valeurs actuelles. Dans notre fonction Ready. Je vais aller de l'avant
et faire des points, ajouter, ajouter, ajouter au groupe. Et je vais
juste ajouter ça à un groupe appelé Gooey en majuscules. Maintenant, ce que nous
venons de faire ici dans le code AC équivalent
à venir ici dans nos groupes
de nœuds et ajouter notre Dewey dans un
groupe gluant ici et en appuyant sur Ajouter. C'est exactement la même chose. Cela se produira juste
une fois que notre jeu sera chargé. C'est une deuxième façon de procéder. C'est à vous de décider
quel Rocks Gogo doit faire qui ne fait pas vraiment de mal ou peu importe la
façon dont vous vous y prenez. Et je vais enregistrer ce qui a été créé. Nous devrions maintenant être en mesure de
commencer à les mettre en œuvre. Donc je vais aller de l'avant
et passer à, allons-y, passer à notre mise en puissance, je vais ajouter ou faire entrer nous dans le
monde sur une scène graphique artistique. Maintenant que nous avons notre
Dewey dans le monde, vous pouvez voir si nous l'avons en haut ou en bas. Ça n'a pas
d'importance. Parce que encore une fois, c'
est
un calque de toile qui sera toujours dessiné
par-dessus tout le reste. Maintenant, vous pouvez changer
cela, bien sûr,
avec des couches, comme
vous pouvez le voir ici, mais il n'y a
aucun véritable point. Surtout dans la
maturité des jeux ici. Et les calques ne devraient vraiment entrer en
jeu que lorsque vous avez, si vous avez plusieurs
Canvas paresseux, je vais garder
tout super organisé comme étant affiché. Très bien, passons à
nos scripts. Commençons par ce que j'ai dit ? Power-ups. Allons-y. Nous allons donc participer,
donc nous allons lancer appel inné et
ils accéléreront, bouclier et activeront le tir
multiple sur notre joueur. Disons. D'accord,
donc ça nous donne la santé, c'est
ce qu'on va rester assis ici ? Nous pouvons donc aller de l'avant et
le fixer à cinq. Maintenant, nous allons régler cela à cinq
montants maximum successifs que nous pouvons avoir. Nous allons trouver
notre santé ici. accord, donc ici ce que nous allons faire
c'est que nous allons, nous allons appeler
le groupe DUE, qui signifie tout ce
qui se trouve à l'intérieur de ce groupe. Et vous allez dire
toutes ces choses pour effectuer une fonction spécifique. Maintenant, si ce n'est pas le cas,
ayez cette fonction, bien
sûr, vous pourriez vous retrouver
avec une erreur ou un problème. Dans notre cas, nous n'avons qu'
un seul élément dedans,
c'est notre interface graphique. Nous savons donc que la fonction
va exister. Donc nous allons dire call, get, tree dot col group. Le premier point
ici est de savoir quel groupe ? Ce qui va être
l'interface graphique. Nous regroupons. Le deuxième argument est la
fonction que vous souhaitez appeler. Je vais juste le sélectionner pour m'
assurer qu'il est bien orthographié. Elles sont toutes ajoutées sous forme de
chaînes, donc mettez à jour la barre. Ensuite, il y
aura les arguments
que vous transmettrez. Nous avons donc d'abord besoin du
bar, qui est celui de la santé. Un bar. Et la seconde sera
la valeur à laquelle nous
voulons la mettre à jour. Donc, dans notre cas,
nous allons utiliser la santé parce que la santé
va être
réglée sur n'importe quoi, n'est-ce pas ? Et ce sera réglé sur
123 ou cinq d'ici la fin de tout ça. Nous allons donc continuer et utiliser
cela pour mettre à jour notre santé. Maintenant, lorsque nous sommes
touchés, vous vous souvenez, vous devez également mettre
à jour notre santé. La santé moins les dégâts
disparaîtront et nous appellerons ça. Donc maintenant, si nous l'exécutons, notre santé devrait être mise à jour. Et il est réglé sur un
simplement parce que nous testons des choses en tétramère. Et comme ce n'est pas
réglé sur plein par défaut, je vais entrer dans ma barre de
santé et la mettre à jour. Où sont mes valeurs ? Je vais donc régler ça à cinq. J'ai demandé ma valeur par défaut et nous allons de l'avant et l'exécutons
pour avoir une santé complète. Et tu vois qu'on s'est fait tirer dessus,
on perd la santé. C'est une mise à jour. Et si nous
pouvons trouver une amélioration de la santé, cela devrait également augmenter. Si on peut avoir autant de chance. Il y en a un, nous l'avons et vous voyez notre santé mise à jour. Quatre sur cinq. Il y a un plan multiple pour
lequel
aucune de ces choses ne fonctionne encore. Nous soutenons que ces valeurs
par défaut
doivent être définies sur 0. Ce sont des virus. Et on y va. Très bien, maintenant nous
pouvons utiliser le même code ici pour obtenir notre autre valeur. Permet donc la vitesse. Par exemple, ici. Nous pouvons venir ici,
nous pouvons l'activer. Je vais appeler le groupe GUI. Nous allons appeler la barre de mise à jour. Et cette fois, nous allons
appeler la barre de vitesse. Et nous n'allons pas
passer en santé. Nous allons en passer un. Cette fois-ci. Nous
allons en fait définir notre numéro. Et quand notre vitesse
reviendra à la normale, nous passerons un 0. Très bien, nous pouvons également nous occuper de cela pour activer notre
bouclier. Bien que l'activation du bouclier le
définisse sur un. Et on le remet à
0 quand on est touché. Donc nous revenons
ici pour frapper quand bouclier devient faux et
nous gardons les boucliers arrière. Nous mettons à jour notre bar. Notez que nous
devons mettre à jour cela et nous allons dans la barre de bouclier. Et puis il reste
notre plan multiple. Viens. Nous avons dit « vrai ». Les boutiques multiples sont définies sur un. Et après notre minuterie, lorsque nous désactivons les prises de vue multiples, nous remettons la valeur à 0. Maintenant, nos power-ups
devraient tous fonctionner. Et qui doit
attendre qu'ils se présentent pour les
tester ? Leur rapidité. Boum, c'est parti. Nous avons notre coup de pouce. Je devrais désactiver
cette option dans un instant. Allons-y. À notre vitesse fonctionne. Maintenant, nous devons nous
assurer de notre multi-shot. Allons-y. Nous avons
rencontré un problème. Je l'ai remis au lieu d'un bar. Allons-y. C'est pourquoi nous allons de l'avant et faisons nos tests afin de
savoir si notre vitesse fonctionne. Nous devons maintenant tester notre
multi-shot qui devrait fonctionner. Il y a juste une faute de frappe. Ensuite, nous pourrons
tester nos boucliers. Et si les deux fonctionnent,
nos Power Apps fonctionnent toutes comme elles le devraient. Soyez. Fantastique. C'est toujours bon à entendre. Ça dit : « Allez-y et attendez ». Il y a un bouclier,
ramassez-le ou le bouclier est allumé. Fantastique. Quand on nous tire dessus, disparaît avec son
bouclier. C'est beau. Il ne nous reste plus qu'à nous assurer que
notre multi-shot fonctionne. Très bien. Nous sommes allés de
l'avant et nous avons obtenu des plans multiples allumés. Et dès que c'est
fait, ça devrait être le cas. Nous revenons à une icône vide. D'accord, donc toutes nos
capacités et bonus
fonctionnent parfaitement,
ainsi que notre mise à jour de santé. Nous avons conservé tout cela
dans une fonction simple. Nous pouvons appeler de n'importe où
sans arriver à des signaux de
connexion et
rendre les choses plus déroutantes qu'elles
ne le sont pour certaines personnes.
31. Explosion de particules: Très bien, dans cette vidéo, nous allons
continuer et je vais vous montrer comment faire une explosion en utilisant des particules. Maintenant, vous pouvez utiliser des particules pour toutes sortes
de choses différentes. Dans ce cas, nous
allons l'utiliser pour faire une petite
explosion. Ainsi, au lieu d'
animer une explosion, je vais vous montrer
comment en créer une. Je vais vous montrer
comment en créer un l'aide des particules intégrées. Maintenant, lorsque
vous créez vos particules, nous allons
évidemment
créer une nouvelle scène. Nous allons créer une minuterie. J'en suis un enfant. Juste pour qu'il sache quand se
supprimer lui-même, qui se charge de notre problème de mémoire. Mais quand on fait des particules, CSI tape ça ici. Des articles. Nous avons des particules
et des particules CPU. Il n'y a pas de grande
différence entre les deux, sauf que les particules du processeur seront alimentées par votre processeur, alors que les particules TD seront alimentées par votre GPU. Donc, selon votre projet, vous voudrez peut-être vous ranger d'
un côté sur l'autre, tout dépend de vous, mais nous allons utiliser
les particules GPU ici. Très bien, donc avec cela sélectionné
et renommé en explosion, je suis allé de l'avant et j'ai déjà
enregistré ma vue. Quand allez-y. Nous pouvons quitter la vie à un moment donné. Et nous allons aller de
l'avant et passer au matériau de traitement. Le triangle
jaune
nous dit que nous n'avons
aucun matériau pour notre, nous n'avons aucun matériau pour nos
particules ici. Nous allons donc créer
un nouveau matériau particulaire. Maintenant, le shader
entrerait dans le code, et c'est un langage complètement
différent et une toute autre
bête en soi. Gardez les choses simples. Et comme nous n'avons vraiment pas
besoin d'utiliser de code shader ici, nous allons simplement créer
un nouveau matériau particulaire. Et vous pouvez déjà
voir que notre particule est déjà active et
qu'elle descend directement vers le bas. Descendez, on
peut y jeter un œil. Nous voulons notre forme d'émission. Un moment. Allons-y. Donc, notre forme d'
émission change considérablement. Devons-nous dire que le nœud de la sphère
va dans une zone circulaire ? Nous avons une boîte qui
devait être plus un rectangle. C'est donc à peu près
lui dire comment se créer lui-même. On va utiliser une bague. Et voici un exemple : si nous
augmentons le rayon de l'anneau, vous pouvez voir que nous obtenons résultats
différents par rapport
à ce point de base. Donc si nous devions utiliser disons, une boîte, disons dix sur le X. Pourquoi ? Vous pouvez voir que nous
entrons dans l'espace de
dix par dix dans lequel ces
particules apparaissent. Donc, selon ce que
vous allez faire, vous voudrez peut-être
expérimenter différentes formes, trouver quelque chose
qui vous plaît. Je vais prendre une
bague pour cette explosion. Réinitialisez ce retour
à un, je crois que c'était un défaut. Donc, en continuant, nous pouvons aller vers nous
avons une direction et
nous avons la gravité. Ce sont les deux
choses qui vont affecter la façon dont
vos particules se déplacent. Et pour cela, je vais
aller de l'avant et régler ma gravité. Il va être 0 sur le y, et je vais en
mettre un sur le x pour
qu' il
se déplace vers la droite. Maintenant. Ça ne va pas
très loin. Et elle ne
se répand pas du tout, comme on peut s'y attendre
d'une explosion. Mais ce que nous pouvons faire,
c'est descendre à la vitesse initiale. Et nous pouvons
augmenter cela, disons 180. On y va, on s'envole
dans la direction X. Et la raison pour laquelle nous l'
avons partout à
cause de notre propagation. Nous avons donc
réduit notre écart d'un degré. Ça va presque avoir l'air d'aller parfaitement droit. Si on fait 0, ça ira tout droit. Mais comme il n'y a pas d'explosion, nous devons le retourner
complètement. On veut 180 degrés, non ? Nous voulons faire le
tour de nous ici. Et je pense que 180 sur la vitesse est peut-être un
peu trop rapide pour cela. Je vais donc le changer à 50. Maintenant. Ça, ça a
l'air super. Mais comme vous le voyez, nous
devenons comme boop, boop, boop, boop, boop. Vous pouvez voir toutes ces directions
différentes. Maintenant, l'explosion de Warren, nous voulons que ce soit comme
une explosion, non ? Nous voulons juste un gros boom
et il y a tout. Eh bien, avant de sauter là-haut, je vais modifier mon année de
vélocité aléatoire. Et cela va juste ajouter
une variété à cela. Donc si ma vitesse est de 50, ma rougeur est d'environ 0,45. Cela signifie que ma
vélocité peut
être comprise entre 49,4 ou cinq, désolé, 49,55 au minimum
et aussi haut que 50,45. Et vous pouvez aller de l'avant
et modifier ceci est beaucoup plus facile pourquoi nous avons une
seule différence là-dedans. Mais encore une fois, je
vais juste choisir 0,45. Ce n'est pas une grande différence, mais cela ajoutera un
peu de variété. Donc, ni pour obtenir cette
explosivité que nous voulons, nous voulons en fait faire défiler
jusqu'en haut sous, sous la section temps. Nous avons de l'explosivité ici. Allez-y et
réglez-le sur un. Et boum, on y va. Nous avons notre explosion. Il ne s'agit pas
d'un grand nombre de particules. Ils ne sont que huit. Eh bien, nous pouvons aller de l'avant et
ajuster le montant ici. Et le système
de chacun sera différent. N'oubliez pas que plus il y a
de particules, plus il faudra
de ressources à l'ordinateur pour les afficher. On peut aller jusqu'à,
disons, 100. Boom, on y va. Maintenant, si vous voulez utiliser
un nombre inférieur, bien
sûr, 5050 semble correct
par pixel de jeu également. Mais je pense que je vais y aller
avec 100 dollars personnellement. Et ce
sera évidemment le choix
personnel de chacun ici. Maintenant, en regardant ça, on voit qu'il est tout blanc. Maintenant, ça ne va pas être
comme un enfer de neige qui se passe. On veut, on veut de la couleur
là-dedans. Passons à la section
des couleurs. Et nous allons
faire un dégradé de couleurs. Donc une nouvelle texture dégradée. Et il suffit de cliquer dessus pour créer un nouveau dégradé. Ouvre ça. Et on y va. Donc ce que je vais faire, c'est
pour ma première couleur ici, je vais commencer
et faire du jaune. Je vais maintenant
avoir une autre couleur, un peu moins à mi-chemin,
créer une orange. Et sur celui-ci, je
vais juste opter pour un gris foncé. Et j'ai cliqué dessus. Allons-y. C'est donc ce que
j'ai pour un explosif. Vous pouvez modifier et filmer
de petites barres ici, ce qui affectera
le changement de dégradé. Donc, si je déplace l'orange
plus à droite,
le temps de
transition entre le jaune et l'
orange sera beaucoup plus long. On nous demande de tracer un graphique et de le
déplacer vers la gauche. Ce ne sera qu'un incident. Vous pouvez donc déplacer ces curseurs
vers quelque chose avec lequel vous vous sentez à l'aise et
qui vous semble bon. Je pense que je vais
y aller. Et avec cela, nous avons une explosion qui est
créée et prête. Maintenant, nous voulions juste
partir pour une fois. Promis. Si nous frappons un seul plan, nos particules ne seront pas émises lorsqu'elles seront
chargées dans la scène. Je ne sais pas s'il s'agit d'un
bug ou d'un problème, mais nous pouvons basculer d'un coup une
fois qu'il a été généré. Et encore une fois, votre montant ici va être élevé, mais
je vais vous montrer, si
nous avions quelque chose comme des
explosions de mille C, pourquoi ? Pourquoi est-ce que beaucoup de choses ont changé ?
Parce que répondre à tous ces éléments se monte en même temps. Vous voyez, nous obtenons une forme d'anneau
très claire ici. Donc c'est peut-être
un peu trop. Dans ce cas. C'est pourquoi, pour quelque chose comme de la fumée censée exister
dans un jeu de ramassage, j'aime bien
utiliser ces nombres plus petits, comme 50 à 100. Très bien, maintenant que
nous l'avons créé, assurez-vous de sauvegarder votre scène. Nous allons nous lancer,
jeter un œil à notre
petit script ici. Je vais créer
le pour le minuteur. Je vais envoyer le
signal de temporisation, mon explosion. Et je vais juste
régler ça sur self dot. Maintenant, la chose importante que
je veux régler ici est de m'
assurer que le temps d'attente sur mon minuteur est le même que la
durée de vie
au moins égale à
notre durée de vie sur nos
particules ici. Parce que nous ne voulons pas
qu'il soit coupé tôt. Ensuite, nous pouvons nous
assurer de régler notre minuterie sur un coup et de démarrer automatiquement. Très bien, ensuite, il ne
nous reste plus qu'à nous déplacer et
à installer ça
sur nos vaisseaux ennemis. Très bien, donc sur notre vaisseau
ennemi ici, je suis allé de l'avant et j'ai créé
une variable appelée explosion qui charge gratuitement nos particules ici, particule
d'explosion. Et je vais descendre au moment où notre ennemi sera touché à l'intérieur de la fonction de bande est
inférieur ou égal à 0. Nous voulons le supprimer, mais bien
sûr nous voulons, nous voulons générer
ou des particules dedans. Je vais donc créer
une nouvelle variable conn EX p underscore. Définissez cette valeur sur l'instance de point d'
explosion. Nous avons ici un nouvel
exemple de cela. Et nous voulons bien sûr l'
ajouter à notre scène avec l'EXP parent et enfant. OK. Donc c'est génial. Nous l'avons dans la scène maintenant. Il y a deux problèmes
dans ce cas. Eh bien, un problème et
un problème partiel. Le premier est le problème qu'il va encore se diriger vers le
haut dans le coin. Nous devons donc définir sa
position EXP underscore point position égale self
point position. Jusqu'à maintenant. Les particules de l'explosion
devraient maintenant se
trouver au même endroit que notre vaisseau
ennemi lorsqu'il est mort. Et nous pouvons aller de l'avant et nous
pouvons préparer un plan. Pour être vrai. Vous ne devriez pas avoir à le
faire avec la configuration de la minuterie. Mais si vous voulez
être plus sûr qu' une douzaine
de boucles ou tout cela seul. Juste une petite précaution supplémentaire. Ensuite, vous pouvez aller de l'avant et définir
un tir égal à vrai ici. Maintenant, si nous lançons
ceci, vous pouvez y jeter un œil. Allons-y. Il y a
une explosion qui disparaît. Allons-y. Maintenant, vous pouvez continuer et
faire la même chose et l'ajouter au
lecteur si vous le souhaitez. Quand le joueur est tué. Allons-y. Nous avons créé
notre propre petite explosion. Fabriqué uniquement à partir de particules.
32. Jeu: Très bien, pour cette vidéo, nous allons continuer et faire une petite scène de game over afin
que lorsque le joueur meurt, nous puissions proposer à l'utilisateur
une option pour redémarrer la partie. Et je pense que je vais le
faire dans le cadre de ma commande. Je voulais créer une feuille
séparée pour cela. Tu sais quoi ? Allons-y, je vais l'
ajouter à mon Dewey. Oui, allons-y
et faisons-le. Alors je vais aller de
l'avant et pour ça, je vais faire une épave de couleur. Et je vais juste l'étendre. Assurez-vous qu'il couvre
toute ma zone bleue. Et je vais
changer la couleur pour voir
à quoi ressemblera
le mode sombre. Vingt et
un, vingt et un. Et baisse mon alpha
à mi-chemin. Si nous regardons cela maintenant, c'est
là que nous pouvons regarder. Maintenant, cette
scène de game over va être très simple à faire pour nous. Je vais appeler ça GO, GO BG pour le jeu en arrière-plan. Je vais créer un nœud de contrôle ici et l'appeler game over. Je pourrai donc y accéder plus
facilement plus tard. Déplacez mon arrière-plan à l'intérieur. Ensuite, ce que nous
allons pouvoir faire, c'est simplement afficher ou masquer l'
intégralité de la partie sur l'écran. Très bien, donc ce dont nous avons besoin ici, nous avons besoin d'une étiquette pour
pouvoir afficher du texte. Ce texte va juste
dire M bien sûr, étiquettes au-dessus de notre arrière-plan. Et voyons voir. Donc tout ce que nous pouvons
remplacer ici. Non, tout semble aussi bon que nous pouvons le
faire sans y ajouter de polices personnalisées. Alors dites GameOver, disons taxe géographique. Et la dernière chose que nous allons
apporter est un bouton. Et ce bouton indiquera Réessayer. Très bien, maintenant nous
avons nos livres. Nous avons tous nos
éléments, vous, nous avons un peu de
contexte pour montrer que quelque chose est différent. Nous avons reçu notre texto vous disant
que les joueurs ont terminé et nous avons un
bouton Réessayer. Maintenant, nous pouvons y mettre. Il
ne nous reste plus qu'à le montrer ou à le
masquer. Et pour cela, nous pouvons aller
dans notre interface graphique. Et ce qui va être très important pour nous, c'est le mode
pause ici. Maintenant, il est configuré pour hériter, ce qui signifie que si
tout le reste s'arrête ou si l'interface graphique s'arrête
et si notre Dewey s'arrête, ou si l'écran
de game over ne fonctionnera pas. Donc nous voulons régler
cela pour traiter sorte que lorsque nous mettons l'arbre en pause, sans doute et tous
ses enfants ici, nous allons continuer à travailler. D'accord, jetons un
coup d'œil à notre script et nous allons dire écrire une
fonction qui l'appelle over. Et pour cela, nous
allons avoir notre GameOver. Remarque ici. Est-ce que c'est
visible égal à vrai ? Et quand notre joueur meurt, voyez où cela se trouve juste ici. Gratuit. Ross va
appeler le groupe GUI. Nous n'avons évidemment pas besoin
d'arguments pour cela. On va appeler le groupe Gooey. Et j'ai déjà oublié game over avec un
trait de soulignement. Copiez ça. y a donc aucune faute de frappe. Vas-y. Il déclenche maintenant
notre GameOver lorsque nous perdons. Allons-y et jetons-y un œil. Sponsoring citoyen. Apparemment, ils
empruntent tous le même chemin. On y va. Ok. Très bien, nous avons
maintenant deux points de santé. Un. Ce prochain devrait
déclencher notre jeu. Terminé. Allons-y. Donc, si vous ne voulez pas mettre
la scène en pause et que vous voulez continuer à voir vos ennemis
apparaître et tirer. Vous pouvez certainement arrêter
cette partie ici. Ce que je vais vous
montrer comment vous pouvez également
mettre l'écran en pause. Donc, dans notre script de joueur, juste avant de le libérer, après avoir appelé
le jeu supervisé, nous allons dire que
arbre est égal à vrai. Et si nous
essayions cela maintenant, nous
verrons que tout s'arrête. Quand on mourra. Allons-y. Donc, si vous voulez que
tout soit mis en pause, si vous voulez que
l'écran soit mis en pause lorsque nous arrivons à un jeu terminé, comme ça. C'est ainsi que nous pouvons le faire. Si vous ne voulez pas avoir cela, il
suffit d'omettre cet écran
ou cette ligne de code. Et maintenant, nous avons besoin de notre
bouton Réessayer ici pour fonctionner. Allons-y et connectons notre bouton Réessayer avec le signal du
sein à notre interface graphique. Et quand ça tombe en panne, nous allons dire obtenir
trois devises de recharge. Maintenant, ce que ça va
faire, c'est que ça va certainement
recharger la justice
manquante. Si nous étions à SF,
nous appuyons sur le bouton de lecture
comme nous venons de le faire. Voyons voir, 1231 tirs de plus
et nous serons touchés. Voir GameOver,
tout est en pause. Et nous avons cliqué sur Réessayer. Et nous voyons qu'il se recharge, mais tout est toujours en pause. Nous devons relancer l'arbre maintenant, maintenant qu'il a été rechargé. Donc, après avoir rechargé, la scène ferait la même chose
que nous venons d'obtenir un arbre. Et faites une pause, et nous allons
régler cela sur false. Donc maintenant, non seulement il
sera réinitialisé, mais je vais être réinitialisé et nous serons en mesure de commencer à
jouer immédiatement. Encore une fois. Nous n'allons pas avoir tout ce qui ne
sera pas gelé. Allez-y et jetez un œil. Il nous faut encore un coup. Allons-y. Je suis venu. Peux-tu réessayer ? Et maintenant, nous pouvons continuer à jouer encore
un peu. Allons-y. Nous avons maintenant une
scène game over, game over screen. Maintenant, nous pouvons, cela nous donne
la possibilité de redémarrer une partie sans avoir à
fermer et à rouvrir notre programme.