Transcription
1. Introduction à mon cours Roblox: Bonjour, je suis Nico, également connu
sous le nom de Calvin Draw, et bienvenue dans mon cours
pour débutants sur Skillshare. Dans ce cours, vous apprendrez vos premiers pas dans la
création de jeux avec Roblox. Même les débutants
sont les bienvenus ici, car une introduction à Lua est
incluse dans ce cours. Une fois que vous vous serez
familiarisé avec Lua, nous examinerons certains concepts
de base de Roblox tels que les détecteurs de clics, changements de position et
l'événement Touched. Et bien sûr, bien plus doués de
ces connaissances. Vous passerez ensuite à la
réalisation de votre projet. Votre premier jeu, qui sera un RB. Vous pouvez utiliser tout ce que vous avez
appris et plus encore, laisser libre cours à votre créativité. Au final, il y aura
même des sujets
intermédiaires supplémentaires qui
seront également très utiles pour la
création de jeux Romanov. Alors, qu'attendez-vous pour vous inscrire à ce cours maintenant et commencer les premières étapes pour créer des
jeux géniaux et Roblox. Je te verrai dans
la première leçon.
2. Présentation du cours: Très bien, bienvenue aux cœurs Roblox pour
débutants. Et ce sera
un bref aperçu de ce
à quoi vous pouvez vous attendre
dans ce cours. Tout d'abord, il
y a une brève introduction incluse dans ce cours, qui sera
très, très utile. Donc, si vous n'avez jamais
écrit de script en Lua, je vous recommande vivement
de le faire. Cela vous évitera
des heures de maux de tête car vous ne
serez pas en mesure de
créer de véritables jeux
et Roblox, si vous ne connaissez pas au moins un
petit bout de boucle après boucle, nous parlerons
du Roblox Studio. Nous allons parler du
référencement des parties, des différents types de scripts. Nous allons
examiner certains événements, certaines fonctions ou ajouter du mouvement. Nous allons même
examiner un peu la force et les
contraintes lorsqu'ils parlent de contraintes lorsqu'ils parlent la différence entre les
joueurs et les personnages Nous allons créer un
classement avec des pièces à collectionner, ajouter un parcours vers le joueur
et quelques autres éléments. Une fois les
bases terminées, nous allons créer un jeu personnalisé qui
sera un OB, et qui sera
vraiment génial également. Après le RB, j'ai également quelques
sujets intermédiaires que nous aborderons, tels que la publication du jeu, l' ajout d'images graphiques, le
stockage des données dans un service de stockage de
données et quelques autres
éléments qui peuvent également être très utiles
tout au long du cours. Pour chaque cours, vous
recevrez un fichier Excel RB. Vous n'avez donc pas
obtenu un aperçu de chaque conférence en termes de scripts
que nous avons écrits Roblox dispose d'outils de création assez
puissants. J'espère donc que
vous apprécierez la
création de votre
premier jeu Roblox. Je te verrai lors
de la prochaine conférence. Donc, oui.
3. (Lua) Installation de Roblox Studio: Très bien, bienvenue
au cours Roblox. Et dans cette première conférence, nous allons installer
Roblox Studio sur votre PC. Si vous avez installé le
lecteur Roadblocks en théorie, Roblox Studio devrait
également être installé. Toutefois, si ce n'
est pas le cas, vous pouvez accéder à
roblox.com slash create et cliquer simplement
sur Démarrer la création. Il vérifiera ensuite si
Roblox Studio est installé. Il devrait alors y avoir
une fenêtre contextuelle s'il n'est pas arrêté pour que
vous puissiez le démarrer. Et si vous ne l'avez pas installé, vous pouvez simplement
télécharger le studio. Il ne s'agit que d'un
fichier EXE, et si vous démarrez, cela
installera des obstacles sur votre PC comme
n'importe quel autre programme. Si vous n'êtes pas
connecté, vous
lirez avec
quelque chose comme ceci. Il vous suffit donc de saisir votre nom d'utilisateur , votre mot de passe et votre identifiant, puis Roblox
Studio va démarrer. Nous allons simplement
maximiser cela. Et vous pouvez voir, dans mon cas, que j'ai déjà quelques jeux
récents, n'est-ce pas ? J'ai déjà des fichiers, des fichiers locaux et même des fichiers
en ligne pour vous. C'est probablement
vide sous mes jeux. Vous devriez cependant
avoir votre place. Il y a toujours quelque chose
qui existe et sous New, vous pouvez commencer une nouvelle partie. Créons un nouveau jeu. Choisissons la
plaque de base ici. Et puis, une fois chargé, vous pouvez voir qu'il a
essentiellement créé un nouvel endroit. Beaucoup de choses surgissent. Je ferme généralement la boîte à outils ainsi que l'éditeur de
terrain ici. Et moi aussi, je fais la droite
et je l'agrandis un peu. Et je vais également dans Afficher et active la sortie parce que c'est en fait
très important. Cela nous permet de voir
certains résultats et nous le verrons très
bientôt dans les prochaines conférences. Une chose que
vous remarquerez, c'est qu'il y a ce fichier avec un petit nuage ici. Et si j'appuie sur Control S, vous pouvez voir qu'il
veut enregistrer ma partie, mais qu'il veut
l'enregistrer sur Roblox Cloud
pour le moment. Ce que je suggère, c'est de
ne pas le faire. Ce que je vous recommande de
faire, c'est d'aller dans Fichier et de l'enregistrer dans un
fichier ou de l'enregistrer dans un fichier, car cela vous
permet
d'avoir un fichier Excel RB sur votre disque dur local
qui est en fait un peu meilleur,
surtout si, par exemple vous rencontrez un problème,
vous pouvez simplement partager votre fichier Excel OB et ensuite je
pourrai y jeter un œil, par exemple et vous aurez également accès,
car
vous pouvez probablement voir tous les fichiers OBX générés dans le cadre de ce cours. Ainsi, chacune des conférences possède un fichier RB exe dans lequel se trouvent
tous les actifs, tous les scripts que nous sommes en train d'
écrire. Et vous pouvez pratiquement
voir chaque instantané. heure actuelle,
même si cela est enregistré sur le disque dur local, j'ai toujours le Cloud. Nous voulons juste
fermer cet endroit et ils vont ouvrir un
fichier à partir d'un fichier. Ensuite, nous allons
simplement ouvrir le fichier que nous venons de créer. Et vous pouvez voir maintenant qu'il ne s'agit absolument que de notre fichier local. Et si nous
appuyions sur Control S enregistrer à
nouveau sur notre disque dur, c'est vraiment cool. Dans les prochaines conférences, nous allons tout d'abord
faire
une petite introduction
pour
vous familiariser avec le
langage de programmation Lua. Pour cela, nous n'avons vraiment besoin que l'explorateur et principalement
du service de script du serveur, ainsi que du bouton de lecture. Si nous appuyions sur
le bouton Play, vous pouvez voir que tout à coup, notre
mode
de jeu se chargerait et que nous nous
chargerions dans ce jeu. Je peux maintenant me déplacer
et sauter. C'est donc essentiellement là pour
que vous puissiez tester votre jeu. Mais comme je
l'ai dit, tous les objets environnants, plupart de ces boutons, n'en
parleront pas dans
l'introduction aux toilettes. Tout d'abord, je
voudrais juste que tu aies une base très, très solide, Seigneur, c'est extrêmement important. Ensuite, nous allons faire des choses
absolument incroyables. Et ce sera pour
cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
4. (Lua) Types variables à Lua: Très bien, poursuivons donc avec l'introduction de Lula ici
pour le cours Roblox. Et dans cette conférence, nous
allons parler de variables. Désormais, les variables sont essentiellement
des magasins pour certaines données. Mais qu'est-ce que tout cela signifie ? Bien, nous avons
examiné un peu ce qui nous entoure. Et maintenant, nous allons
créer
notre premier script, puis y
jeter un œil. Nous allons les créer dans le
service de script du serveur ici même. Nous allons donc simplement cliquer sur le plus et vous pouvez le voir déjà fréquemment
utilisé, dit script. Habituellement, lorsque vous
créez quelque chose, vous voulez ceux qui ne
sont pas grisés. Les éléments grisés, c'est essentiellement, euh, vous ne voulez pas
créer ce type de pièces
et d' objets à l'intérieur de ce
conteneur, pour ainsi dire. Mais nous voulons créer un script,
donc nous allons le faire. Le script va immédiatement
s'ouvrir. Vous pouvez zoomer sur l'illustration
ici en maintenant la touche Ctrl enfoncée
, puis en la faisant défiler vers le haut
avec la molette de la souris, vous pouvez la réduire en
faisant défiler la page vers le bas. C'est ainsi que
vous pouvez zoomer ici. C'est également très important. Voici un autre script, je vais
en fait le renommer. Il y a plusieurs
façons de procéder. Cliquez avec le bouton droit de la souris et vous
pouvez accéder à Renommer. Vous pouvez également simplement appuyer sur F2 ,
puis il vous
sera demandé de le renommer. Ou vous pouvez y aller. Si vous avez
les propriétés ici, vous pouvez simplement accéder au script
ici et l'appeler simplement. Nous allons appeler
cela 01 variables tirets. Parce que c'est, eh bien, la première conférence, pour
ainsi dire, dans laquelle nous nous lançons
réellement. Et nous allons
appeler cela des variables. Et voilà. Ce qui est très important
ici, c'est qu'il complète déjà cette chose
en particulier
avec une impression ici. Donc, si nous ne faisions rien, je supprimerais simplement
ce que j'avais auparavant. Si on ne fait rien et
qu'on appuie simplement sur Play, non ? Ce que vous constatez, c'est que, eh bien, rien ne se passe
car pour le moment nous n'avons pas notre console. Nous devons en fait
activer ceci ou cela. Nous allons dans Afficher et nous
voulons passer à la sortie. Voici donc notre
sortie et vous pouvez maintenant voir helloworld depuis, envoyé depuis le serveur. Nous allons en
parler à partir de
ce script avec un nom,
oh, un tiret, des variables. Et à partir de la première ligne, si nous revenons à
l'onglet où se trouve notre script, nous pouvons voir que c'est
la première ligne, magnifique. Nous pouvons maintenant arrêter
cela et continuer. Je vais donc simplement ajouter à nouveau
mon commentaire ici. Nous allons
parler un
peu plus de commentaires et de
choses comme ça. Je veux juste que cela figure en
haut du script spécifique, juste pour que nous sachions que
nous sommes actuellement dans le script à
variables zéro un. Donc, l'imprimé qui
ne vous intéresse pas. Nous allons donc simplement
le sélectionner, appuyer sur Supprimer pour le supprimer. Et nous allons
parler de types de variables. Maintenant, pour obtenir une vue d'ensemble de haut niveau, nous
voulons des variables car nous voulons enregistrer certaines données. Alors peut-être
voulons-nous enregistrer un numéro. Cela peut être un score élevé, la santé de la monture,
etc. Nous allons donc simplement
dire que x est égal à dix. Et maintenant, dans ce cas,
chaque fois que je fais référence à x, cela va
représenter un nombre. Dans ce cas, il s'
agit d'un entier. Un entier n'est qu'
un nombre entier, donc ça va être deux
ou cinq, ou -27. C'est très bien. Mais si nous voulons
quelque chose comme 20,8, alors que c'est maintenant un flottant, je vais faire ce
20,8, c'est un flottant. Donc, lorsque nous déclarons cela, c'est vrai ,
lorsque
nous créons des variables, nous voulons essentiellement dire
le nom des variables. Donc, dans ce cas, x est égal à. Il s'agit de l'opérateur d'affectation, ce qui signifie
essentiellement que
nous attribuons cette valeur à cette variable. Si tout cela est très nouveau pour
vous, ne vous inquiétez pas du tout. Pendant que vous travaillez dessus, vous serez en mesure d'en apprendre
de plus en plus sur ce que tout cela signifie
pour le moment. En gros, vous pouvez simplement
y penser comme si x
était une sorte d'espace réservé
que nous avons mis en place. Et puis quand le
code s'exécute correctement, quand le script est exécuté, alors on se dit : « OK, avec x, ils signifient en fait dix ». Pendant que nous examinerons cela un
peu plus en détail à l'avenir. Je vais juste l'imprimer pour que vous puissiez voir si nous avons une empreinte, puis des parenthèses et nous y avons mis x, n'est-ce pas ? Et puis la
parenthèse fermante, qu'est-ce que cela va
générer, la question est de savoir si cela
va sortir X, c'est comme si la lettre X
allait générer un dix. Eh bien, jouons et
vous verrez que cela produit dix parce que nous sortons
la valeur qui se trouve à l'intérieur
de la variable x. Une bonne métaphore utilisée par beaucoup
de gens est que les
variables ne
sont en fait que
des compartiments contenant une
sorte de données. Il existe un type
spécial qui s'appelle zéro. Il s'agit d'un type de valeur spécial, qui représente essentiellement
l'absence de toute valeur, également appelée null dans certains langages
de programmation. Dans ce cas, cela s'appelle zéro. Cela ne signifie pas
que c'est zéro. Cela signifie qu'il
ne s'agit que d'un autre type de variable, ou les booléens. Maintenant, les booléens peuvent
être vrais ou faux, parfois également représentés par un ou zéro, mais ils
sont écrits comme suit. Il s'agit donc d'un booléen
et ils peuvent être vrais
ou faux. À quoi cela ressemble-t-il maintenant ? Eh bien, par exemple, nous pouvons dire que c'est une bonne solution et nous
aimerions bien sûr que cela soit également vrai. Et vous pouvez voir que
cela change également de couleur. Donc, en gros, il s'agit certains mots clés ou de
certains types de variables. Ils peuvent essentiellement
changer la couleur de la police ici et même la commercialiser
en gras. Nous pouvons alors avoir un autre
booléen, par exemple est ancré. C'est quelque chose
qui ressemble un
peu plus à un jeu. Et cela pourrait être
équivalent à faux. Et vous pouvez voir que cela nous
suggère aussi parfois des choses. Donc, pendant que nous tapons, c'est vrai, ce que vous pouvez voir, il est déjà
ordonné de suggérer, Oh, c'est censé être
faux et vous pouvez appuyer sur la touche de tabulation pour le
compléter automatiquement. Enfin, nous avons également des chaînes. Nous en
parlerons maintenant
un
peu plus en détail dans une prochaine conférence. Mais en gros, les chaînes sont comme
des mots et
elles sont toujours entourées de
guillemets. Nous pouvons donc par exemple dire HelloWorld. Et vous pouvez voir,
c'est très bien, même si j'ai
un espace ici parce que les
guillemets l'entourent, nous pouvons enregistrer le mot entier. Vous pourriez
constater que je
veux
peut-être plusieurs lignes. Ce seraient de nombreux mots, par exemple, et la façon dont vous le faites est
de créer des crochets ouverts et vous pouvez voir que les crochets
fermants se génèrent
généralement automatiquement. Et puis ici, vous pouvez
simplement taper bonjour, bonjour étudiant, puis virgule. Et puis, vous pouvez voir, je
peux continuer à écrire ceci. J'écris parce que c'est amusant d'avoir plusieurs
lignes cordiales. Allez-y, mais laissez-nous
maintenant plusieurs lignes. Et c'est l'
idée générale ici, n'est-ce pas ? Donc, pour résumer, à la fin, droite, les variables dans leur ensemble, nos compartiments de données qui
contiennent certaines données, qui peuvent avoir des valeurs
différentes et
peuvent être de types de données différents. Il peut contenir un
nombre normal, qui est un entier. Il peut contenir des nombres flottants, est-à-dire des nombres comportant
une virgule décimale. Il peut également s'agir de nu,
c'est-à-dire de l'absence de valeur. Vous pouvez avoir des booléens
et vous pouvez également avoir des points forts là où c'était le cas
pour cette conférence. J'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Alors oui.
5. (Lua) Sortie et commentaires: Très bien, poursuivons
l'introduction à Lula ici pour le cours sur les barrages routiers. Dans cette conférence,
nous allons
examiner les commentaires de sortie
et expliquer comment lire des
scripts pour pouvoir examiner les commentaires de sortie et expliquer comment lire des recommencer Dans le service de script du serveur, nous allons cliquer sur
le petit
plus ici, créer un nouveau script. Et nous allons le renommer
en appuyant sur la touche F2. Et nous allons
le renommer en commentaires de sortie
O2 Dash. Que diriez-vous de
celui-ci ? Et voilà. Ensuite, voyons
ce que nous pouvons faire. Eh bien, nous pouvons réellement
conserver cette empreinte. Je vais juste le
déplacer vers le bas. Et ici, nous allons
créer à nouveau notre commentaire. Cela va donc être une
sortie et des commentaires. Magnifique. Et voilà. Nous avons donc déjà vu cette
impression et elle produit quelque chose
ici dans la sortie. Si vous ne l'avez
pas à nouveau, vous pouvez accéder à Afficher et l'
activer ici. Vous pouvez donc voir que cela est
maintenant activé car il a une sorte de bouton en arrière-plan. Et s'il n'est pas activé,
il ne l'a pas. C'est donc essentiellement
ainsi que vous l'activez . Et voilà. Si nous avons cela dans
un script et que nous appuyons sur Play, alors vous verrez ce que vous
verrez dans la sortie et verrez Helloworld depuis le serveur. Nous allons expliquer
cela dans un instant. Et puis la sortie O2
commente trois commentaires. Donc, encore une fois, c'est parce que c'était en troisième ligne. Arrêtons cela et
poursuivons le script. Mais c'est déjà plutôt cool. Et la dernière fois, nous avons
parlé de l'idée de variables. Et si nous avions
une variable
de santé égale à 1 000 ? Encore une fois,
vous pouvez voir que vous n'avez pas besoin d'espaces
entre les deux. Les espaces ne sont donc que particulièrement importants
,
car à la place des chiffres, car maintenant que les
nombres ne sont plus connectés
entre certaines opérations, vous pouvez en fait mettre
autant d'espaces que vous le souhaitez. Je ne le recommande généralement pas. Un espace
ou zéro espace est fondamentalement la
méthode préférée pour le rendre lisible. Mais oui, vous pouvez y placer
autant d'espaces que vous le souhaitez. Et maintenant, au lieu
de publier HelloWorld, nous pouvons dire que c'est bon la santé du joueur,
il y a de la santé. Et puis la question
qui se pose est la suivante : d'accord, comment pouvons-nous alors
produire ce millier ? Bien sûr, on
pourrait dire : « Eh bien,
c' est 1 000, c'est génial. Mais si nous changeons ce chiffre à 500 parce que nous
avons peut-être été touchés ou quelque chose comme
ça, cela indiquera toujours 1 000. Cela ne fonctionne donc pas tout à fait
comme nous le
souhaiterions si nous maintenons ce chiffre à 1 000. Et en fait, nous disons «
santé », n'est-ce pas ? Et puis c'est comme
si, évidemment, il allait prendre cette
variable ici. Eh bien,
voyons ce qui se passe. En effet, ce n'est pas le cas. Cela dit simplement que
la santé du joueur est la santé,
ce qui, bien sûr, n'est pas tout à fait
ce que nous avions en tête ici. Ce que nous voulons obtenir, c'est la valeur de cette variable
et non son nom. Maintenant, si c'est à l'intérieur d'une chaîne. Nous en avons donc déjà parlé, entre guillemets, puis cela se lit
comme un mot normal. Ce n'est pas un mot clé et ce
n'est pas une variable rouge. Mais nous pouvons réellement
utiliser les variables. Cela fonctionne. Nous pouvons le faire de deux manières
. Nous pouvons soit faire une
chronique ici. Cela est donc spécifique à la fonction
d'impression dans ce cas. Donc, après la première
chaîne, à droite, nous pouvons faire une virgule et
ensuite nous pouvons dire santé. Vous pouvez voir qu'il nous l'
a effectivement suggéré. Ensuite, il vous suffit d'appuyer sur la touche
Tab pour compléter automatiquement. Ensuite, nous insérons une autre virgule, puis tout ce qui suit sera
également affiché. Nous pouvons donc dire HP, par exemple, et maintenant, ce qui va
générer, c'est la santé du joueur, puis quelle que soit la monture ici elle
est enregistrée dans
la variable de santé, puis les PV directement après cela. Alors jouons et
voyons ce qu'il produit. Et vous pouvez voir que la
santé du joueur est de 1 000 PV. Parfait. Maintenant, il y a
en fait deux espaces. Donc, ce que nous pouvons réellement faire, c'est arrêter cela et nous pouvons même débarrasser, car
maintenant, dans
ce cas, cela ajoute un espace. Ce n'est pas la seule
façon de le faire. Nous pouvons simplement copier cette ligne. Je suis donc en train de le sélectionner, appuyant sur Control C
puis sur Control V pour le
coller à nouveau. Et au lieu de faire
cela, nous pouvons également faire point point puis un autre
point ici. Et ce que cela
va faire,
cela va concaténer
cette variable à la chaîne. Cela pourrait donc être un peu
plus compliqué en ce moment. Mais ne vous inquiétez pas, nous
en reparlerons un
peu plus dans une prochaine conférence. Et ça ne devrait pas
être trop fou. En gros, nous disons simplement qu'il s'agit d'une chaîne de caractères. Il s'agit d'une chaîne de caractères. Et bien qu'il s'agisse d'une variable, nous
voulions simplement l'ajouter à notre chaîne spécifique. Il va donc avoir presque
la même sortie que celle-ci. Mais voyons
ce qui se passe ici. Donc, si nous sortons ceci, vous pouvez voir qu'il
n'y a pas d'espace entre les deux parce que nous prenons littéralement la dernière chose qui
se trouve ici, n'est-ce pas ? Donc,
puis nous prenons variable,
quelle que soit sa valeur
réelle,
nous la convertissons en
chaîne, puis nous la
plaçons juste à côté du S dans ce cas. Donc, ici, nous voulons un espace. Donc, si nous arrêtons cela
et
recommençons, vous pouvez voir que
la sortie
sera exactement la même dans ce
cas, à l'exception du HP. Parce qu'encore une fois,
venez ici, cela génère automatiquement un
espace. Cela n'a rien à voir avec
ces espaces, d'ailleurs ,
ne vous y
confondez pas. Je peux juste exécuter ça. Ces espaces
n'ont donc rien à voir là-dedans. Cela a juste à voir
avec la façon dont le tout est
essentiellement interprété, n'est-ce pas ? Ce sont donc deux manières
de sortir ici. Dans ce cas, il s'agit également d'un texte
contenant une variable, qui peut être extrêmement utile, non seulement à des fins de jeu, mais aussi parfois à des fins de
débogage. débogage
consiste essentiellement à essayer de trouver des problèmes ou des bogues
dans vos scripts. Et cela peut
parfois beaucoup aider. Enfin, nous voulons également
parler de Commons, où vous avez déjà
vu les commentaires avec les deux tirets. Il s'agit donc essentiellement d'un
commentaire d'une ligne que je peux faire. Je peux juste dire des choses
intéressantes, non ? Cela peut donc être pour
expliquer des choses vous-même ou à d'autres personnes pour lire vos scripts ou
des choses comme ça. Maintenant, ils ne
fonctionneront que pour une seule ligne. Donc, si je fais une autre phrase, vous pouvez voir que tout d'un coup,
nous sommes tous une sorte de commentaire. Et vous n'avez pas non plus besoin d' ajouter les tirets ici à la fin. C'est une
chose personnelle que je fais, donc ce n'est pas du tout nécessaire. Vous pouvez également le
garder comme ça et tout fonctionnera parfaitement. Il y a
maintenant une bizarrerie personnelle où vous devez
ajouter plus de choses, c'est
pour des commentaires sur plusieurs lignes. Nous pouvons donc
toujours utiliser les deux tirets ,
puis
ouvrir les crochets. Vous pouvez à nouveau voir
les crochets de fermeture générés automatiquement. Et puis à l'intérieur, nous avons en fait un commentaire sur
plusieurs lignes. Et voilà. C'est génial. Et voilà.
Vous pouvez donc voir qu' il s'agit maintenant d'un
commentaire sur plusieurs lignes
et que tout ce qui se trouve entre crochets est essentiellement tout ce que nous
allons interpréter comme un commentaire. Vous pouvez même le fermer avec
la petite flèche ici. Donc ça va être
un peu mieux. Tu peux même le faire. Ensuite, il va le fermer. Ça va le fermer comme
ça. C'est intéressant. OK, et
voilà. C'est une
façon très intéressante de procéder. C'est un commentaire sur plusieurs lignes. Nous avons vu quelque chose de
similaire où nous examinerons
la fin des variables. Nous avons vu la
chaîne multiligne ici avec la même idée alors que
dans ce cas, elle ne sera
qu'avec des commentaires. Mais comme je l'ai déjà expliqué, note
importante, bien sûr, tous ces scripts sont toujours disponibles en téléchargement. Les scripts sont donc
disponibles et
le fichier RB XL pour chaque cours est
toujours disponible en téléchargement. Vous pouvez donc tout
vérifier, l'
examiner un par un. Donc, si vous avez chose de différent en
sortie ou quelque chose comme ça, vous pouvez toujours vérifier
le code, n'est-ce pas ? Pour résumer,
encore une fois, nous pouvons voir que la fonction d'impression est un moyen
de sortir quelque chose. Habituellement, vous voulez
sortir une chaîne, n'est-ce pas ? Donc, si vous écrivez en
version imprimée, vous pouvez voir que
cela le suggère déjà, et vous pouvez appuyer sur la touche
Tab située à l'intérieur, vous pouvez alors commencer à taper. Maintenant, vous
voulez généralement taper une chaîne. Vous voulez donc
commencer par les guillemets ,
puis vous pouvez simplement y
dire des choses. Et cela va être affiché dans la fenêtre de sortie. Et puis il y a
aussi des commentaires. Les commentaires normaux
commencent par un tiret, un tiret, puis tout
ce que
vous voulez écrire est un commentaire d'une ligne. Les commentaires multilignes
fonctionnent avec un
tiret, un tiret, puis des crochets. Eh bien, ce sera tout pour
cette conférence. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Alors oui.
6. (Lua) Opérations de mathématiques: Très bien, bon retour
aux toilettes, introduction
au cours Roblox. Et dans cette conférence,
nous allons examiner les opérations mathématiques. Pour cela, encore une fois, dans
les serveurs de scripts du serveur, nous allons créer un nouveau
script et renommer en A3 Dash Maths. Parce que pourquoi pas ? Et voilà. Maintenant, ajoutons notre petit commentaire sympa
, les opérations mathématiques. Et voyons quels types d'opérations
mathématiques existent. Bien sûr,
il y a un ajout, c'est le premier et l'idée est la
suivante, non ? Nous pouvons donc avoir une somme
qui pourrait être, par exemple, 20. Ce ne
sera donc qu'une fois de plus une variable. Notre 20 est la valeur et une partie
est le nom de la variable. Et maintenant, ce que nous pouvons faire,
c'est dire, eh bien, que certains
devraient en fait faire 20 plus 50, par exemple maintenant cela devrait maintenant être 70. Alors jetons
un coup d'œil. Donc, si je fais une autre impression ici, et que je dois dire que la somme est, utilisons simplement celle-ci. Nous allons donc dire somme. Et voilà.
Maintenant, il va générer la variable de somme. Tout d'abord, nous
faisons en fait la somme égale à 20. En fait,
changeons cela à dix. Il y en aura donc
60 parce que cela le
démontrera
un peu mieux. Donc d'abord, nous allons
dire que la somme est égale à 20. Nous disons que la somme est égale
à dix plus 50. Donc, ce qu'il va
sortir et entendre, certains d'entre vous diront peut-être
que ce sera 20 plus
dix plus 50 ou
quelque chose comme ça. Jouons et
voyons ce qui se passe. Vous pouvez voir que certains sont 60 car la dernière chose
qui se produit ici est que la valeur
de dix plus cinq est
attribuée à la variable . Celui-ci est donc simplement
ignoré ou remplacé car le code est toujours évalué de
haut en bas. Nous commençons donc par la
première ligne et elle va
passer ,
passer et passer. Et puis ça va
être, notre somme est maintenant de 20, et puis à la ligne suivante, notre somme est maintenant de 60
parce que j'ai essentiellement évalué cette expression
comme dix plus 50. C'est l'idée générale. Je peux aussi le faire, je peux le dire, en fait, ce
que je veux faire, c'est
en avoir un autre. Disons que ce sera la deuxième somme
parce que, pourquoi pas ? Et cela équivaut à la somme plus
un autre montant, n'est-ce pas ? Donc, plus 50 ou plus 150
peuvent être ce que nous voulons. Et maintenant, qu'est-ce que
ça va être ? Eh bien, certains ont une valeur de 20. Donc, en théorie, cela
devrait être 20 plus 150
, soit 170. Donc, si nous faisons cela,
nous pouvons voir que certains ont 20 ans. Maintenant, vous pourriez dire,
attendez, comment vont les 20 ? Ah, eh bien, regardez ça. Nous sortons
la variable de somme et maintenant la deuxième variable de somme. Il y a donc toujours quelque chose
que vous devez garder à l'esprit. Donc, encore une fois, si j'écris ceci, vous pouvez voir que
cela nous le suggère déjà, puis nous
pouvons simplement appuyer sur la
touche Tab pour compléter automatiquement. Et maintenant, nous sortons
la deuxième variable de somme. Et maintenant, nous devrions
voir que cette somme est de 170. Maintenant, vous pouvez également voir toutes
les autres sorties
ici dans la sortie. C'est très bien et
tu peux le garder comme ça. Cependant, si cela devient
trop encombré pour vous, vous pouvez simplement passer aux
autres scripts et vous pouvez simplement ajouter des
commentaires
ici à toutes les lignes d'impression autres scripts, afin ne pas avoir les
sorties également.
Gardez donc cela à l'esprit. C'est donc un ajout.
Regardons maintenant la soustraction. Vous imaginez à
quoi cela va ressembler ? Eh bien, faisons juste une, appelons
cela une soustraction. Et cela équivaut à, eh bien, par exemple quelque chose comme 25 -50. Est-ce que ça va fonctionner ? Ce chiffre va être
négatif. Pendant ce temps, je veux dire, voyons
juste le bon imprimé. Et nous allons dire que
ce sera juste une soustraction, puis encore une fois une virgule,
et puis nous allons à nouveau introduire une soustraction,
en complétant
automatiquement
avec la touche Tab. Laissons les choses se dérouler
et voyons ce qui se passe. Et vous pouvez voir que la soustraction
est égale à moins 25, ce n'est absolument pas un souci. Les nombres négatifs sont tout à fait corrects. Cela fonctionne donc avec des nombres
négatifs,
des nombres non négatifs, n'est-ce pas ? On peut aussi en avoir 150 à 50
et ensuite ce sera 100. Donc c'est vraiment cool. La prochaine étape est,
bien sûr, la multiplication. Maintenant, ce sera
la question. Disons que c'est
multitâche, tout ira bien. Comment est-ce que cela fonctionne ? Eh bien,
c'est fait avec une étoile. Donc, c'est cinq étoiles, 40 par exemple et alors ça devrait être
quoi ? 200 ? Oui, exactement. Ça va être 200. Donc, ce
sera une multiplication, puis encore une fois, faites simplement
ce que l'on appelle multi ici. Et cela va faire exactement
la même chose. Encore une fois, ce que
je veux dire ici, c'est qu'il n'est pas nécessaire de mettre
des espaces entre les deux. Vous pouvez mettre des espaces entre les deux,
mais ce n'est pas obligatoire. Lorsque vous
placez les espaces ici, c'est la même idée que
l'espace se trouve ici. Comme l'idée est
qu'il s'agit désormais d'un opérateur de multiplication qui utilise deux entiers dans ce cas, vous pouvez également, bien sûr, le faire. Oh, qu'est-ce que ça va faire ? Eh bien, je veux dire, essayons
juste ça. Voyons ce qui se passe
cinq fois 40,5 égale 202,5. C'est tout à fait correct et cela fonctionne également. Vous pouvez donc également utiliser des nombres
flottants. En gros, il le fait
tout seul. Donc c'est plutôt cool aussi. Maintenant, la division est la seule chose qui est un peu
plus intéressante. La division est bien sûr une
division, ce qui est
égal, par exemple, à 20/3. Disons simplement que
quelque chose comme ça. OK, c'est intéressant. Faisons donc la division. Oui, et ensuite
appelons ça et voyons
ce que ça nous donne
20/3, je ne sais pas. Eh bien, c'est 6,66, 666666 en
répétant jusqu'à sept. C'est donc une idée dégénérée. Gardez donc cela à l'esprit
lorsque vous avez des choses qui ne s'
intègrent pas parfaitement. Donc 21/3, bien sûr,
ce serait sept. Donc, si nous faisons cela, nous
n'en aurons que sept. C'est super. Mais si vous avez quelque chose
qui n'est pas divisible de manière uniforme, vous obtiendrez
un nombre décimal. Et c'est également très important. Si on essayait de diviser par zéro. C'est une chose que vous n'avez peut-être pas entendue auparavant. Si vous ajoutez zéro, eh bien, vous obtiendrez l'infini. C'est donc une
chose très intéressante et c'est une bizarrerie si Lu est plus ou moins, vous pouvez en fait diviser par zéro. Tu ne devrais pas le faire. C'est toujours comme si
c'était quelque chose qui
ne devrait pas exister. Et dans ce cas,
vous obtenez l'infini. la plupart des langages de programmation, vous obtiendrez
généralement une
erreur si cela se produit. Alors, gardez cela à l'esprit. En général, vous
devez
vous assurer de ne pas diviser par zéro. Mais il y a une autre chose qui pourrait être très intéressante, savoir la loi modale, également appelée le reste
et celle-ci, n'est-ce pas ? Disons simplement que
c'est un repos. Et cela est égal,
disons, à 20. Ensuite, ce
sera un signe
de pourcentage et le reste sera
imprimé. Le reste est,
imprimons simplement le reste
et
voyons réellement ce que cela va être. Et puis vous verrez assez
rapidement ce que cela fait. En fait,
divisons par trois ou comme le reste de trois. Et puis vous verrez le
reste, en voici deux. Donc, l'idée générale est qu'en
gros, en suivant
le processus de
division proprement dit et en disant que
c'est le reste, je recommande vivement de
vérifier le reste. C'est normal. Je pense que cela devrait
être enseigné en cours de mathématiques. Cela devrait être enseigné
en cours de mathématiques. Et cela peut en fait être très, très important pour
certaines choses dans la programmation
ici, car si nous devions faire
le reste des deux, donc 20 modes O2, ce serait une façon de
vérifier si
un nombre est pair ou impair,
parce que dans ce cas,
il est pair, n'est-ce pas un nombre est pair ou impair,
parce que dans ce cas, ? Donc si on joue juste à ça, on aura un zéro. Donc, en gros, nous pouvons dire : « Hé, si ce nombre et ensuite nous faisons modulo deux est égal à zéro, nous savons que c'est un nombre pair. Et si on le fait, on peut
faire n'importe quel nombre impair, quoi, 21 dans ce cas,
peu importe. Ensuite, nous allons en avoir un. Donc, si le reste est nul, alors nous savons que dans ce cas, si nous utilisons le mode O2, donc si le reste est un
avec modal ou deux ici, alors nous savons que le nombre, le nombre d'origine,
est un nombre impair. S'il s'agit d'un zéro, alors c'est un
nombre pair, très intéressant en effet Enfin et surtout,
il existe ce que l'on
appelle l'incrémentation
et la décrémentation. Cela signifie simplement
que nous voulons en ajouter un à un nombre spécifique. Donc, par exemple, nous pouvons avoir un
nombre de cinq, non ? Et puis dans d'autres langages de
programmation, selon que vous avez déjà
programmé ou non, vous pouvez faire des choses
comme le nombre plus plus ou le nombre moins moins. Maintenant, ce que vous allez voir, c'est que
cela ne fonctionne pas, d'accord ? Nous pouvons simplement le commenter
, n'est-ce pas ? Nous allons juste dire qu'ils sont et ensuite ce
sera comme si cela ne fonctionnait pas parce que
cela ne fonctionnait tout simplement pas. C'est juste quelque chose que le
bas ne nous offre pas. Cependant, nous pouvons
faire
certaines choses pour augmenter ou
diminuer ce nombre. Donc, en gros, nous pouvons
dire que le nombre est égal à lui-même plus un. Cela va simplement prendre
le nombre défini, comme dans ce cas cinq, puis y ajouter un,
n'est-ce pas ? Donc, encore une fois, ce n'
est rien de fou, il s'agit simplement de dire que le nombre est
égal au nombre de plus un. Nous prenons donc simplement
cette expression , puis nous la
réenregistrons sous forme numérique. OK, c'est juste. Nous pouvons également avoir un nombre
plus égal à un. Cela fait
exactement la même chose. Il est juste un peu plus compact et écrit en une seule ligne. Ce sont exactement les mêmes choses qu'ils font, c'est exactement la même chose. La raison pour laquelle vous
voulez les connaître tous les deux ou les avoir
vus tous les deux, c'est que certaines personnes préfèrent le
faire ainsi. Certaines personnes
préfèrent le faire ainsi. Donc, si vous lisez les scripts d'autres
personnes, il est très important
d'avoir vu les deux. Et puis, bien sûr,
la même idée vaut pour le moins dans ce cas. Maintenant, vous pouvez même étendre
cela et vous pouvez dire,
eh bien, qu'en
est-il de cela, n'est-ce pas ? Si nous faisons des temps égaux, nombres absolus, peut-être que
nous devrions faire des divisions égales. Est-ce que cela fonctionne ? Ce sera le cas, je ne
sais même pas quel
sera l'été là-bas, mais le nombre de rivages devient fou
maintenant. Modulo est égal en fait, oui,
nous pouvons le faire aussi. Maintenant, je n'ai jamais
vu celui-ci comme si j'en
avais vraiment besoin nulle part. Celui-ci. peut être utile à
certains moments Cela peut être utile à
certains moments, mais oui, plupart du temps,
vous allez les utiliser , peut-être ces trois-là. Et ces deux choses sont
très spécifiques qui sont très, très rares. Mais encore une fois, avoir vu cela peut être très important,
n'est-ce pas ? Pour récapituler, les opérations mathématiques sont exactement ce qui est écrit
sur la boîte, n'est-ce pas ? Ce sont des opérations qui exécutent certaines fonctions mathématiques
dans ce cas, n'est-ce pas ? Donc, la sommation n'est qu'
un symbole plus, un symbole moins pour la soustraction, une étoile pour la multiplication et la barre oblique pour la division. Et dans ce cas
également le pourcentage pour le modèle ou le reste. Ce ne sont donc que des calculs normaux. Maintenant, vous pourriez vous demander pourquoi j'ai
besoin de mathématiques là-dedans Il y a de nombreux
moments où vous pourriez avoir besoin de mathématiques, n'est-ce pas ? Il se peut donc que vous ayez une
arme et que vous ayez ensuite
un certain
multiplicateur d'effets sur les dégâts, puis que le
joueur adverse possède une certaine armure. Et vous voulez vous
assurer que la santé ou les dégâts sont
correctement générés , qu'ils
sont calculés correctement. C'est là que toutes
les additions, soustractions, multiplications,
divisions, etc. entrent en jeu. Et tout ça va
être une sorte, il y en aura une
sorte qui sortira à la fin. Ça va être
ça, les dégâts. Nath peut donc être
très, très important. Maintenant, ce ne sont bien sûr que
les bases des mathématiques. Mais en les utilisant comme
éléments de base, vous pouvez déjà construire
des choses assez intéressantes où que ce soit, pour
cette conférence ici même. J'espère que vous avez trouvé cela utile et
que vous apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
7. (Lua) Opérations Relationnelles et Logiques: Très bien, bienvenue
à la présentation des toilettes ici pour le cours Roblox. Dans cette conférence, nous
allons examiner les opérateurs relationnels et
logiques qui semblent opérateurs relationnels et
logiques aujourd'hui
très compliqués,
mais encore une fois, ne vous inquiétez pas, nous allons tout d'abord aborder
cette créer un nouveau script dans le
service de script du serveur ici même. Et nous allons l'
appeler 04 Dash. Appelons cela une logique
relationnelle. Et voilà. Et encore une fois, nous n'avons pas besoin du HelloWorld
où nous avons besoin d' opérateurs relationnels et
logiques, parfois également appelés opérations relationnelles
et logiques. L'un ou l'autre fonctionne à peu près. Encore une fois, n'
oubliez pas de commenter l'impression si vous ne
voulez pas qu'elle soit
complètement submergée de spam à la sortie. Et puis réfléchissons-y. Alors, que sont les opérateurs relationnels, que sont les opérateurs logiques ? Nous sommes, les valeurs
relationnelles, essentiellement, elles examinent deux
valeurs et évaluent essentiellement la
relation entre elles. Ce serait donc plus petit que, plus grand que plus petit ou
égal, plus grand ou égal. Nous avons également des égaux
et des non-égaux. Ce sont donc, en
gros, tous les
opérateurs relationnels et ils produisent une, ils produisent une valeur
booléenne, n'est-ce pas ? Cela signifie donc une fois de plus que si vous repensez aux types de
variables, c'est vrai ou faux. Maintenant, cela
ne devrait pas être insensé ici. Bien sûr, si je dis 20, plus petit ou égal à 25, il n'y en a que, cela
ne peut être que vrai ou faux. n'y a pas de flou, n'est-ce pas ?
Il n'y en a pas un comme ça. Si c'est 50 % petit,
ce n'est pas de cela que nous parlons. Nous disons simplement, hé, est-ce
plus petit que cela, ou est-ce égal à cela ? Et c'est l'idée générale. Et les opérateurs logiques
sont des opérateurs qui prennent deux valeurs booléennes et qui les
évalueront. Ce sont les
opérateurs end OR et NOT dans ce cas, sont
les opérateurs vraiment
importants. Il y en a
d'autres également. Si cela vous
intéresse vraiment, vous pouvez consulter l'algèbre booléenne. C'est essentiellement le
terme à examiner. Et cela nous permet essentiellement de nous y intéresser
un peu plus. Mais pour le moment, ne
nous préoccupe pas trop. Donc, quand on y pense,
on peut dire qu'il s'agit d'un test, par exemple voici trois, inférieur à 20. C'est bien sûr
vrai dans notre cas. On peut juste l'imprimer
, non ? Alors disons que
trois sont plus petits que 20 ? Et nous allons juste l'
imprimer. Nous allons
imprimer le test ici. Et voilà. Mais jouons à
ça et
voyons ce qui se passe. Et ça va s'imprimer
vrai parce que c'est trois,
en fait, c'est inférieur à 20. C'est très intéressant en effet, vous pouvez le voir, évaluer cette expression et faire
une valeur booléenne,
dans ce cas, vraie. Maintenant, nous pouvons aussi dire, disons encore une fois des tests,
que tout ira bien. C'est 20, c'est plus grand que 200. Ce sera bien sûr faux. Ensuite, nous
allons simplement sélectionner cette commande,
appuyer sur la commande C, aller
ici, appuyer sur Control V pour la recoller dedans. Et puis nous sommes simplement
en train de changer cela. Est-ce que 20 est plus grand que 200 parce que maintenant nous disons que
2020 est plus grand que 200, ce qui est bien sûr faux. Laissons ça rejouer. Et nous verrons si 20 est
plus grand que 200 est faux. C'est tout à fait exact, car
ce n'est pas le cas. Ce sont des
exemples de plus grande envergure. Et puis la même idée s'applique
aux plus petits égaux, n'est-ce pas ? Alors ce sera
également vrai si c'est égal. Et puis, si c'
était égal, non ? Ce serait faux maintenant. Hein ? Cela devrait avoir du sens car, eh bien, 20 n'est pas plus petit que
20 est égal à 20. Si nous le faisions,
tout à coup, cela
redeviendrait vrai. J'espère que cela
a du sens ici dans ce cas. Maintenant, en ce qui concerne l'opérateur
égal,
disons que nous avons une chaîne, une qui va être bonjour, et puis nous avons aussi une chaîne, qui s'appelle également
bonjour. Pourquoi pas ? Et voilà. Ensuite, nous faisons une comparaison. Pourquoi ne pas comparer ? Cela est égal à,
puis nous disons que la chaîne un est égale à deux signes égaux. Il s'agit de l'opérateur relationnel
égal qui examine ces
deux chaînes, n'est-ce pas ? Et produit une valeur booléenne. Il s'agit de l'
opérateur d'affectation, très, très facile à confondre
l'un avec l'autre. Mais ce que vous devriez obtenir,
c'est que vous pouvez voir que vous
obtiendrez une erreur si vous n'en
avez qu'une. Donc, ce trait rouge ici, gros, vous voyez, c'est comme si, oh, cela n'avait
aucun sens pour moi. Absolument aucun souci. Deux signes égaux constituent l'opérateur
relationnel. Un signe égal est l'opérateur
d'affectation. Très, très important. Maintenant, imprimez, imprimons
simplement ceci et imprimons simplement la comparaison. Et nous devrions en déduire une
vérité, n'est-ce pas ? Nous allons donc avoir un, le premier imprimé, est-ce
vrai, le second est faux. Et là, nous
allons juste avoir une norme, juste un véritable résultat. Voyons voir. Et nous allons voir que
c'est vrai, absolument incroyable. Donc, cela fonctionne vraiment. Maintenant, si je change
quelque chose ici, c'est même le boîtier, car maintenant, ils ne sont
plus exactement égaux. Donc, ce qui va se passer est
faux, car dans ce cas, les deux ne sont pas égaux car le boîtier
est toujours pris en compte car il s'agit
d'un personnage différent et donc ils
ne sont pas exactement égaux. Mais ce serait
l'une de ces choses. Et ne fais pas ça. Il ne s'agit ici que d'un exemple. Donc toi, pour que tu le
comprennes en quelque sorte. C'est en quelque sorte ce que
tu ferais, non ? Quand tu as un mot de passe
et que tu te dis :
« OK, c'est ce que possède
la personne. J'ai tapé, et voici le
mot de passe que j'ai enregistré, rouge. Sont-ils égaux ? Et seulement si c'est vrai, alors tu
les laisseras entrer. Maintenant, ne faites pas ça, n'
enregistrez pas de mots de passe comme ça. C'est quelque chose qui ne devrait être fait que par
des personnes avancées. Très, vraiment, juste pour que vous
puissiez y
réfléchir, d'accord,
c' est l'une de ces
façons dont vous pourriez considérer qu'une comparaison
est importante. Maintenant, en ce qui concerne
les opérateurs logiques, cela devient un peu plus
compliqué ici, car ici, nous voulons
en fait prendre plusieurs valeurs booléennes et les
placer
les unes à côté des autres. Et ils en quelque sorte, vous savez, c'est une
extension logique pour cela. Donc, par exemple, ce que vous pourriez faire est de
dire que x est égal
à la comparaison. Il va donc prendre la valeur de
comparaison ici, ce
qui est vrai dans ce cas
. Ensuite, nous pouvons mettre un opérateur
et ici. Ensuite, la deuxième valeur
doit être un autre booléen. Donc, par exemple, nous pourrions dire : « Passons aux
tests ici », n'est-ce pas ? Alors maintenant, ça va dire, eh bien, si la chaîne correspond
et que le test est vrai, alors x
sera vrai, n'est-ce pas ? Donc dans ce cas, la
comparaison sera vraie et le test
sera faux, non ? C'est donc ce qui
se passe actuellement ici, n'est-ce pas ? Parce que le test ici est faux. Donc, si nous devions maintenant imprimer x c'est juste pour les besoins de argument x, ici
ou là, vous y allez. Si nous faisons cela en plus, soyez faux
et vous pouvez voir que x est faux. Pourquoi est-ce le cas ? Eh bien, parce que
l'opérateur final indique que les deux valeurs booléennes doivent être vraies pour que l'
expression entière soit vraie. Encore une fois, si c'est un peu compliqué pour vous ce moment, ne
vous inquiétez pas. C'est une chose avec laquelle
il suffit de jouer un peu. Donc, ce que je
vous recommande vivement de faire, c'est d'ouvrir ce script
logique relationnel ici et de
jouer avec celui-ci. Ce qui est encore plus fou, c'est que vous pouvez le porter aussi
souvent que vous le souhaitez. Je peux donc dire que la fin est vraie. Et peut-être un autre que
nous voudrions dire, eh bien, 20 est plus grand ou égal à 50,
quelque chose comme ça, non ? Vous pouvez donc voir que vous
pouvez les
enchaîner autant que vous le souhaitez. Encore une fois, c'est peut-être un
peu compliqué. Il s'agit de tester cela et d'essayer
certaines choses avec nous, n'est-ce pas ? Je vais juste
le copier et je vais également créer un opérateur
OR ici. Donc ça va
être, maintenant ça va
être vrai ou faux. Ce qui se passe avec le ou
signifie que l'une ou les deux doivent être vraies pour que la sortie soit vraie. Donc, dans ce cas, vrai ou faux signifie
simplement que la comparaison est vraie. Et puis nous ne nous soucions
même pas du reste, car l'une
d'entre elles est vraie. Cela va être vrai. Nous pouvons donc voir, disons
simplement X1 et X2, juste pour comprendre
que la différence est là. Et si nous jouons à cela, vous pouvez voir que x2 est vrai
parce que nous
utilisons ici l'opérateur ou
et cela ne compte
que si l'un d'entre eux est vrai et que l'
expression entière est vraie. Comme je l'ai dit, ce n'est pas
vraiment une chose avancée, c' est juste une de ces
choses qui n'est pas vraiment enseignée au début de l'école. S'agit-il essentiellement
d'une logique formelle ? Il n'y a rien de
fou là-dedans. Et même si cela peut sembler un peu intimidant,
ce n'est pas le cas. Encore une fois,
asseyez-vous un peu, jouez un
peu avec ça et vous constaterez que ce
n'est pas si fou. Maintenant, une dernière chose,
faisons également
la comparaison ici. Et ensuite, ce que nous
allons dire, c'est que nous voulons
en fait nier cela. Cela signifie qu'il ne s'agit
en fait pas d'un test. Maintenant, c'est peut-être
comme si c'était le FREC,
c'est complètement fou. Eh bien, en gros, nous
nions ce faux ou nous l'inversons. Donc, nier
signifie simplement que nous
le faisons passer d'un
faux à un vrai. Ou si c'était déjà
vrai, alors faux. Vous
verrez donc parfois cela écrit comme ceci avec un point d'
exclamation au recto. Mais cela signifie simplement que tout
cela est vrai, n'est-ce pas ? Donc, tout d'
un coup, ce n'est plus faux, ce qui sera égal
à vrai, n'est-ce pas ? Laisse-moi faire ça. Cela devient donc un peu
plus clair, non ? Nous annulons donc le
test selon lequel tout ce qui est écrit dans la
variable de test est faux dans ce cas. Et nous sommes en train de le transformer en réalité. Encore une fois, si vous ne l'
obtenez pas immédiatement, jouez un peu avec
cela. Je
vous recommande vivement de simplement taper des choses
et de les imprimer , puis de lancer un peu et de vous dire :
« OK, maintenant vous comprenez, parce que
l'appliquer est bien plus important que de
simplement m'écouter, expliquer cela
dix fois ». Il vaut mieux que tu t'
assois et que tu te dises : « OK, le x c'est ça,
puis le y c'est ça, et puis c'est comme si rien », puis tu l'imprimais. Mais pour les besoins de l'
argumentation,
voyons juste que x3 sera vrai. Et vous constaterez que
X3 est bel et bien vrai. Parce qu'une fois de plus, la
comparaison est vraie et le contraire du
test est également vrai. C'est donc vrai. Pour récapituler rapidement, vos opérateurs relationnels et
logiques concernent tous des valeurs booléennes. Et en gros, nos opérations
qui comparent
deux valeurs, deux valeurs ou plus
dans certains cas, et vous donnent une
valeur booléenne à partir de celles-ci, c' vrai, vrai ou faux. Il y a plus petit que,
plus grand que égal, non égal, et aussi les opérateurs
logiques ET, OU et NON. Dans ce cas, ces opérations simples
sont en fait tout ce que l'
ordinateur aime. Lorsque vous descendez
au plus bas ou au plus bas trouverez tous les uns et les zéros dont vous
avez peut-être déjà entendu parler. C'est tout ce qu'ils utilisent et, ou. Et puis certains opérateurs
relationnels, c'est tout
ce qu'ils
utilisent, rien d'autre. Cela s'accompagne donc
d'un grand pouvoir, tout
comme dans la programmation, c'est
pourquoi ils sont très importants. Encore une fois, à
la fin, je voulais essentiellement vous donner l'
impulsion nécessaire pour vous dire, d'accord, asseyez-vous
vraiment pendant dix ou 20 minutes et
testez simplement comment ils fonctionnent. Si vous ne les avez pas compris, si vous les avez compris,
c'est absolument génial. Je
vous implorais quand même de les
essayer un peu, si vous ne les avez pas compris, de les
essayer à nouveau. Je recommande vivement
si, bien sûr, des
questions subsistent, n'hésitez pas à les poser. Sinon, ce sera le pour cette conférence, ici même. J'espère que vous avez trouvé cela
utile et que vous
apprendrez quelque chose de nouveau
. Je vous verrai tous lors de la prochaine conférence. Donc, oui.
8. (Lua) Si et d'autres déclarations: Très bien, bon retour à la petite introduction du cours sur
les barrages routiers. Et dans cette conférence,
nous allons examiner les déclarations « si et
sinon ». Maintenant, nous entrons vraiment
dans le vif du sujet. Encore une fois, dans les serveurs de scripts du
serveur, créons un nouveau script
et nous allons le renommer à cinq tirets si c'est le cas. Que diriez-vous de ça ? Et voilà. Je vais bien, encore une fois,
je vais faire les cinq si et sinon. Maintenant, si les
déclarations sont vraiment
très, très intéressantes,
supposons que nous ayons, par exemple une
quantité d'or qui sera de 100. Et puis peut-être que nous avons une, peut-être que vous avez une
note et ce sera, disons
que nous avons à
peine dépassé les 65 ans,
quelque chose comme ça. Et puis nous avons également
une valeur booléenne. Et ça va être, c'
est, bien sûr, une bonne chose. Et cela
sera égal à vrai. Supposons
que c'est le cas. Maintenant, ce que nous pouvons faire avec les déclarations
if else, c'est que
nous pouvons en quelque sorte interrompre le flux de haut
en bas et dire : «
OK, si quelque chose est
vrai, alors fais-le ». Ou si quelque chose d'autre
est vrai, alors fais-le. Donc, par exemple, nous pouvons dire
si c'est grossier Bien, vous pouvez voir que
cela suggère que c'était inégal, cela nous
dit qu'il s'agit d'un booléen. Nous allons donc appuyer sur la touche
Tab pour effectuer la saisie semi-automatique. Nous disons ensuite, puis, une fois que nous avons appuyé sur la touche Entrée, la fin est
générée automatiquement. Et maintenant, c'est
extrêmement important. Vous pouvez voir que
notre curseur
ici est en fait indenté. C'est donc
comme si j'appuyais sur
la touche Tab et vous pouvez voir que
le même retrait se produit ici. Et puis c'est
automatique, car moment, nous sommes à l'intérieur
de cette instruction if. Et vous devez
réellement être conscient de l'indentation qui
l'écrit comme ceci. Je peux donc écrire des trucs ici. Je ne pense pas que ce soit
techniquement faux, mais cela semble très étrange. Donc, en gros, une fois que vous êtes
à l'intérieur d'une instruction if ou d'une fonction que
nous verrons plus tard et d'autres choses comme ça. Vous avez toujours un
retrait et oui, si je voulais en avoir un autre
à l'intérieur d'ici, au lieu de cela,
si nous devions mettre en retrait un autre type pour les
besoins de l'argumentation, continuons avec cela. Donc ça va imprimer quelque chose et ça
va produire du Brent. Oui, c'est un très bon cours. Alors voilà.
Donc, tant que le cours est bon, nous
allons l'imprimer. Jouons juste à ça pour
le plaisir de discuter. C'est vrai. Donc, oui, c'est un beau cours, c'est un très bon cours. Eh bien, assurons-nous qu' il indique également que c'est un
très bon cours. Mais maintenant, nous allons
dire faux. Résolvons simplement que
ce n'est pas le cas, mais si c'est le cas, nous allons jouer
et nous n'avons aucune sortie. Parce que dans ce cas, tout ce qui se trouve entre cette
date et la fin ne sera
exécuté que si c'est vrai. Et maintenant, nous
commençons vraiment
à intégrer ces différents outils. Il s'agit essentiellement de
chacune de ces conférences. Il s'agit d'un autre outil votre boîte à outils dont vous
avez besoin pour comprendre
les éléments de base qui
vous seront présentés plus tard, en
cas d'obstacles. Et c'est l'une des déclarations les plus importantes
et les plus importantes, si c'est le cas. Donc, par exemple, nous pourrions également
penser à quelque chose comme ça. Disons qu'il suffit d'en ajouter un
autre ici. C'est peut-être quelque chose
comme le péage. Alors peut-être juste là où vous
voulez traverser le pont et
le total est de 150 pièces d'or. Donc, ce que nous pouvons dire,
par exemple, c'est que
si notre objectif est supérieur
ou égal
au péage, n' est-ce pas ? Ensuite, nous pouvons dire « imprimer »,
le joueur pourrait passer. Mais peut-être voulons-nous faire comme si, en fait, nous ne
voulions pas nous arrêter là. Nous pouvons donc remplacer cette
extrémité par une autre. Et puis, une fois de plus, vous
pouvez voir que c'en est une autre. Si j'appuie simplement sur le tap kick, je peux compléter automatiquement
et j'appuie sur Entrée, puis
cela génère
une autre fin ici. Nous pouvons donc dire que si le montant de
l'or est supérieur au péage, le joueur peut réussir. Et si ce n'est pas le cas, alors on peut dire que le joueur
n'est pas autorisé à passer, n'est-ce pas ? Alors on peut juste appuyer sur Play. Et nous pouvons voir, si
nous regardons cela, joueur n'est pas autorisé
à passer parce que l'or est en fait
plus petit que celui en haut à droite. Nous n'avons que 100 pièces d'or,
mais il nous en faut 150. Par conséquent,
cela est imprimé. Ainsi, tout le
reste est imprimé. Si c'est faux et que tout imprimé
ici, si c'est vrai, nous pouvons aussi faire quelque chose
comme ça, n'est-ce pas ? Nous pouvons donc dire que c'est maintenant une façon
très grossière de procéder, mais c'est vrai, n'est-ce pas ? Nous pouvons donc dire que l'
or actuel sera une armure, n'est-ce pas ? Il suffit donc de mettre
les sorties, l'or aussi. Et ce que nous pouvons faire,
c'est que si nous réussissons, nous voulons vraiment obtenir une médaille d'or moins des points, quel que soit
le total uniquement si nous
réussissons, sinon nous ne voulons
vraiment pas le faire. Alors maintenant,
voyons quel est l'objectif après l'avoir évalué ? Eh bien, ça va
être, eh bien, 100, non ? Parce que nous n'avons rien
payé. Parce qu'en effet,
nous pouvons
payer parce que notre péage est de 150 ici et nous ne
pouvons même rien faire. Je vais compliquer les choses, mais vous comprendrez
cet endroit, disons simplement « chez vous », n'est-ce pas ? Nous sommes donc chez nous en ce moment. Et si nous réussissons,
disons simplement que nous serons au centre-ville. Disons simplement que, pour
les besoins de l'argumentation, si nous ne réussissons pas, nous n'avons même pas besoin de
changer de lieu, donc nous pouvons parler de l'or actuel. Copions simplement ceci et
nous pourrons ensuite dire l'emplacement actuel. Ensuite, nous pouvons également
imprimer l'emplacement. OK, rejouons à
ça. Ensuite, nous verrons, d'accord, nous sommes toujours chez nous et nous avons
encore 100 pièces d'or. Et si je modifiais
le péage tout de suite ? Ça coûte en fait 69€ pour réussir ? Que va-t-il se passer maintenant ? Maintenant, notre or est supérieur
ou égal au péage, ce qui signifie que nous sommes
autorisés à passer. Notre emplacement
va changer pour devenir centre-ville et nous allons soustraire tout objectif que nous avons, comme le péage de notre Dieu. Alors jouons à ça
et voyons,
et tout d'un coup, nous
pouvons constater que nous avons maintenant 31 pièces d'or et que nous sommes au centre-ville. Bien entendu, rien n'a changé dans le jeu
lui-même. Nous n'avons modifié qu'une ou
deux variables dans ce cas. Mais vous pouvez peut-être déjà
voir à quel point c'est incroyablement puissant d'avoir ces déclarations if et de
pouvoir les enchaîner. Vous pouvez ajouter une autre déclaration
IF ici. Il y a toutes sortes de
choses que vous pouvez faire, ce qui est vraiment génial. C'est vraiment l'une des
choses qui, je veux dire, c'est vraiment cool de voir ce genre de choses prendre vie. J'espère que c'est un
exemple
vraiment illustratif , car ils contiennent des déclarations
et les
déclarations if else sont
vraiment géniales. Maintenant, disons
encore une fois, la dernière chose. Nous avons donc une note
ici et disons, par exemple nous voulons vérifier, d'accord, cette personne a réussi. Nous pouvons donc dire si l'écran est
plus grand ou égal à 50, par exemple nous allons simplement dire, en fait, faisons-le
dans l'autre sens. Disons que si c'est
inférieur à 50, alors nous allons
imprimer un échec, n'est-ce pas ? Parce qu'alors nous avons échoué. Maintenant, nous allons le remplacer par
un autre. Mais vous savez quoi En fait, quand il est remplacé par un autre, parce que je veux vérifier si la
note est supérieure ou égale à 50 et si elle
est également plus petite. Si grand est
inférieur à 100. Ensuite, je voudrais faire
quelque chose de précis. Et puis j'en veux un autre, parce que tu peux
les enchaîner autant que tu veux. Et puis ça va
faire autre chose. Donc ça va être imprimé, disons passé
ici, c'est génial. Et puis ici, si
vous obtenez 100,
c'est vrai, cela se produira si
vous obtenez 100 ou plus. Mais
réfléchissons-y un instant. Mais si nous en avons 100 ou plus, nous pouvons dire
qu'ils ont été réussis avec honneur. Parce que pourquoi pas, non ? Parce que c'est vraiment cool. Donc, à l'heure actuelle, nous avons obtenu
un 65 pour la note. Nous devrions donc voir la sortie B passée. Voyons si cela fonctionne. Et vous pouvez voir que le passé
est bel et bien une sortie. C'est vraiment bien. Arrêtons-le, puis revenons ici et changeons
cela en, disons, 100. Maintenant, nous devons passer avec nous. Voyons voir. Jouons à ça. Et nous pouvons le voir passé avec
les honneurs. C'est super. Nous pouvons même aller encore plus loin. Disons simplement que pour
les besoins de l'argumentation, nous voulons en ajouter un
autre ici. Ce que nous pouvons faire, c'est en
ajouter un autre si, et nous pouvons dire si c'est le
plus grand, supérieur à 100. Maintenant,
allons-y comme ça. Disons que si
grand est égal à 100, alors nous le faisons, n'est-ce pas ? Ensuite, nous allons en
faire une autre. Et en gros
,
si c'est autre chose que 100, et ensuite nous pouvons en dire plus,
plus de 100, ce n'est pas possible. Tu as triché. Donc, quelque chose comme ça, plus de 100, c'est
impossible, tu as triché. Et maintenant, si je devais en faire 101, tout d'un coup, nous en
aurons plus de 100, ce n'
est pas possible. Tu as triché. Donc, si
vous ne comprenez pas bien la
logique qui sous-tend
tout cela, pensez-y, n'est-ce pas ? Qu'est-ce que le grade en ce
moment ? Parfait comme 101. Est-ce inférieur à 50 ? Pas 101 n'est pas inférieur à 50. Par conséquent, nous passons à l'autre si, maintenant nous vérifions, s'il
est supérieur ou égal à 50 ? Il est en effet supérieur
ou égal à 50. Mais cela doit également être
vrai car nous utilisons
l' opérateur logique AND right, donc ces deux
choses doivent être vraies pour que l'ensemble de l'
énoncé soit vrai. Et comme excellent
est supérieur à 100, nous passerons à l'autre solution si
maintenant nous avons l'air excellent, égal à 100, ce
n'est pas égal à 100, c'est bien 101. Par conséquent, nous allons
passer à l'autre point. Et comme nous n'
avons pas d'instruction if, nous disons simplement, d'accord,
maintenant nous utilisons le L, donc tout ce qui se trouve
ici est exécuté, ce
qui signifie que cela est imprimé. Eh bien, j'espère que ce sont là des exemples intéressants
de déclarations « si et sinon », façon dont vous pouvez les utiliser
et pourquoi elles le sont. Donc, en fait,
vraiment génial. Vous pouvez voir, comme si c'était déjà le cas, nous avons presque fait un tout
petit jeu ici, juste nous avons presque fait un tout
petit jeu ici, juste
avec une déclaration
, une médaille d'or et un péage. Et c'est déjà vraiment
génial,
non, pour un petit
récapitulatif, encore une fois, déclarations
if and else utilisent des valeurs
booléennes pour évaluer
quelque chose, n'est-ce pas ? Ils peuvent utiliser une valeur
booléenne normale. Vous pouvez utiliser les opérateurs relationnels
et logiques pour enchaîner ces
booléens. Comme nous l'avons vu de multiples
manières, nous pouvons utiliser les
instructions if et
else pour enchaîner ces instructions
if. Et puis tout ce
qui se trouve dans cette instruction if est exécuté. Si l'
expression booléenne est vraie, c'est vraiment très cool. Et encore une fois, je
vous recommande vivement de jouer avec ça un peu
pendant votre temps libre. C'est vraiment, vraiment génial. Eh bien, c'est tout pour cette
conférence. J'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
9. (Lua) Variables locales: Très bien, bon retour
aux toilettes, introduction
au cours Roblox. Et puis cette courte conférence, nous allons
parler de variables locales. Pour cela, encore une fois, dans le service de script du serveur, créons un nouveau script
et nous allons appeler ce 06 dash local. Et cela aura bien sûr
également une variable locale O6 commune. Maintenant, ce n'est pas un sujet
incroyablement important. Cependant, je voulais le faire, nous en
reparlerons essentiellement une fois. Donc, les variables locales, avant,
quand nous avions une variable, nous faisions simplement x égal, je ne sais pas, comme
100 et c'est tout. Maintenant, nous pouvons également placer le
mot clé local devant celui-ci. Et vous pouvez voir, vous pouvez
voir que c'est un mot clé parce qu'il devient
gras et rouge. Nous pouvons donc maintenant dire que
local y, par exemple, est 50. Maintenant, pourquoi est-ce
important ou pourquoi pas ? Eh bien, l'idée générale est qu'
une variable locale fait en sorte qu'elle la limite là où
elle est accessible. heure actuelle, dans ce
cas, peu importe parce que nous
pouvons simplement imprimer x et que tout
ira bien et imprimer y et tout ira bien. Donc, les deux vont
tout simplement fonctionner. Disons que nous avons
une instruction if et que
nous allons simplement dire que x est,
disons, supérieur à cinq, et ensuite nous voulons faire quelque chose. Maintenant, si au lieu de
cela, si quelqu'un, disons que cette déclaration
est vraiment compliquée,
vraiment complexe, et que
nous avons réellement besoin certaines variables à l'intérieur
de celle-ci pour fonctionner. Nous pourrions dire quelque chose comme, par exemple, z est égal à 100. Cela fonctionne. Et nous pouvons ensuite l'utiliser ici
et faire ce que nous voulons. Et ce qui est fou, c'
est que nous pouvons même utiliser ce Z en dehors
de cette instruction if. Vous pouvez donc voir que le Z ici est accessible en dehors de
cette instruction if, mais ce n'est pas toujours ce que
nous voulons, car tout d'abord, cela peut semer la confusion chez la
personne qui l'utilise, n'est-ce pas ? Alors peut-être que nous
ne le voulons pas vraiment. Z n'est utilisable que dans
cette instruction if. Et après cela,
quoi qu'il devienne, quelle que soit sa valeur, cela ne représente
même pas ce que nous voulons. Cela pourrait être le cas. Si tel est le cas, nous pouvons
par exemple le rendre local. Et vous pouvez voir ce qui
se passe, c'est que cela a
maintenant un soulignement rouge, une
signification et une erreur. Vous pouvez voir uniquement le z global, car normalement les variables
sont des variables globales. Mais dans ce cas, nous disons
explicitement qu'il s'agit d'une variable locale qui n'est
accessible que dans ce contexte
particulier. Le contexte étant
l'instruction if. Donc, si elle termine
le premier niveau n, la fin de cette
instruction if supprime
également entre guillemets,
cette variable locale. Dans l'ensemble, il est normal de tout
faire en sorte
que tout soit local, sauf
s'il y a des moments où, oh, vous savez quoi, en fait,
cela ne devrait pas être local. En théorie, à chaque fois que vous créez une variable, commencez
toujours par
une variable locale Et puis tout ira bien, puis tout ira bien. Parce qu'il y a
très peu de cas où ce n'est pas le cas. Et vous pouvez voir si
ce n'est pas bien, si vous voulez
continuer à travailler avec cela, alors tout va bien, alors
vous pouvez laisser cela de côté. Mais en général, vous
voulez les rendre locaux et tout
ira bien. Une autre raison supplémentaire pour
laquelle vous souhaitez le faire est simplement parce qu'ils sont un
peu plus performants. Pour être honnête, pour les machines
modernes, cela ne fera probablement pas beaucoup de
différence ici, mais juste au cas où cela
pourrait être très important. Et si vous voyez le local scripts
d'autres personnes,
sachez simplement que vous souhaitez
généralement les
utiliser pour toutes
vos variables,
sauf dans les cas où des vos variables,
sauf dans variables
globales sont nécessaires, alors vous pouvez le garder à l'écart. Habituellement, lorsque j'instancie une variable avec local
devant elle, n'est-ce pas ? Je me suis donc assuré
que les princes ici
présents soient
commentés à cause de cette impression, bien
sûr, qui génère une erreur alors que nous avons une variable locale. Mais dans l'ensemble, pour
résumer ici encore
une fois, les variables locales, elles sont un peu
plus rapides et elles limitent la portée d'accès à une
variable particulière. fait de ne pas créer de global
complique un peu l'
utilisation de vos scripts par les utilisateurs. Et cela permet également au jeu
de fonctionner un peu plus rapidement. Il peut s'agir de modifications minimes, mais en général, vous souhaitez utiliser le
local dans la mesure du possible. Ce sera tout pour
cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
10. Opérations de cordes (Lua): Très bien, bon retour
au cours Roblox. Dans cette conférence,
nous allons examiner les opérations de chaîne. Bien entendu, tout
d'abord,
dans les serveurs de scripts du serveur, créons un nouveau
script ici, et renommez-le en 07
et en opérations de chaîne de tiret. Et bien sûr, encore une fois, nous allons faire une opération à 07
cordes, Ahmed ici, et
puis nous allons commencer. Nous pouvons donc créer une nouvelle variable. Disons simplement que c'est un
test et nous allons l'
appeler quelque chose
comme bonjour, je dis bonjour, et c'est une chaîne. Et nous l'avons
déjà vu. Nous pouvons par exemple imprimer avec la
fonction printf en insérant
des tests ici. Et cela va, bien sûr, générer la valeur de la variable de
test dans ce cas. Pour cela, nous avons besoin de
la sortie ici et de nous
assurer qu'elle figure dans
les anciens scripts et
de commenter également les anciens scripts et
de commenter les fonctions d'impression dans
les anciens scripts. Et si la fenêtre
de sortie est ouverte et que l'impression se trouve ici, et que l'impression se trouve ici,
jouons et nous devrions pouvoir y
voir bonjour. Je dis bonjour, eh bien
c'est plutôt bien. Maintenant, pourquoi est-ce que j'écris
quelque chose de si bizarre là-dedans ? Eh bien, parce que nous allons
voir quelque chose d'
intéressant dans un instant. Mais la première chose que nous
pouvons faire avec une chaîne est de déterminer sa
longueur. Parce que
nous avons peut-être envie de le faire parfois. Nous pouvons donc déterminer la longueur d'une chaîne en
procédant comme suit. Ce que nous pouvons faire, c'est dire test de hashtag, et cela donnera la longueur de cette chaîne
particulière. Il va donc simplement
compter le nombre de caractères , espaces compris. Donc, avant de sortir
ceci, comptons en fait 1,
234-567-8910, 1112, 1314,
1516, 1718, 1920, 201-20-2203, 2420, 5206, 2728, 2930. En théorie, cette variable de test, cette chaîne ici, doit comporter trois caractères. Donc, notre impression ici devrait donner
la longueur d'une chaîne, 30. Jouons et voyons si
c'est vraiment le cas. Et la longueur d'une chaîne est de 30. Agréable. C'est déjà plutôt cool, mais que pouvons-nous faire d'autre ? Eh bien, il y a toute une
série de choses différentes. Supposons que nous créions
une nouvelle variable. Ce que
nous allons faire, c'est taper une chaîne et vous pouvez voir qu'elle commence à nous la
suggérer, et elle la marque également en bleu. Il s'agit donc d'un mot clé dans ce cas, et nous pouvons mettre un point après celui-ci. Et puis vous pouvez voir que nous avons différentes fonctions
que nous pouvons appeler. Et ceux-ci représentent essentiellement une certaine chose qu'ils
font avec certaines choses. Donc, par exemple, renvoie ici la
longueur de la chaîne. Donc, au lieu de faire le hashtag, vous pouvez également créer une chaîne de caractères que Lynn Wright, puis y mettre
la chaîne. C'est très important.
Nous pouvons donc le faire. Et dans ce cas, le nouveau test portera
en
fait sur la longueur. Arrêtons-nous un instant sur cette
longueur. Copions ceci juste à titre de test. Et nous pouvons ensuite mettre
de la longueur ici. Et si nous jouons à ce jeu, nous allons voir 30h30 parce qu'il
fait exactement la même chose. Mais c'est l'une des
opérations que nous pouvons effectuer. Ainsi, dans ce cas,
la plupart des opérations sur les
chaînes se
font toujours avec une chaîne, un point ,
puis une sorte de
fonction. Faisons un nouveau test
et jetons un coup d'œil. Alors, enfilez ça. Et vous pouvez voir qu'il y a
un tas de choses. Vous pouvez donc voir que cela concatène n copies
de la même chaîne. En gros, si
c'est le
cas, si je mets la ficelle
dedans et que j' en
mets trois
dedans, alors ce sera bonjour. Je te dis bonjour. Bonjour, je dis bonjour,
bonjour, je dis bonjour. Il s'agit donc essentiellement
de répéter la même chose. Sup l'est. Il s'agit d'une sous-chaîne similaire à ce que nous
allons voir dans un instant. La description ici. Cela peut être un
peu compliqué, mais ne vous inquiétez pas. L'octet est généralement quelque chose dont
nous n'avons pas vraiment besoin. Mais ce que je
recommande vivement , c'est que vous pouvez toujours
jeter un œil à chacune de ces fonctions. Il vous suffira de cliquer
dessus voir une assez bonne
description et vous pouvez même cliquer sur En savoir
plus pour en savoir plus. Ce que nous allons faire ici,
c'est faire g sub, du g sub. Cela semble incroyablement compliqué,
mais ce n'est pas le cas. Il suffit donc de
double-cliquer dessus. Il va formater tout
cela correctement et nous allons simplement mettre la
virgule dans la chaîne de test. Et puis c'est un schéma. Nous voulons examiner ce modèle. Alors, par exemple, bonjour. Et nous voulons le
remplacer par quelque chose. Et dans ce cas, nous allons
simplement la
remplacer par une chaîne normale. Et cette chaîne va
juste être Howdy. Alors, que pensez-vous qu'il se passe ici si nous publions maintenant un
nouveau test, n'est-ce pas ? Donc, si nous devions imprimer
un nouveau test, non ? Donc, cette nouvelle variable, qui aura un sous-G, j'espère qu'elle
va
prendre la
variable de test ici même. Et il va chercher
le mot bonjour, n'est-ce pas ? Et il va
renvoyer une copie dans laquelle chaque fois
que « bonjour » apparaîtra, il le remplacera par « Howdy ». Donc, si nous devions
imprimer un nouveau test, j'espère
que nous trouverons qu'il
dira : comment en êtes-vous là ? Je dis : « Comment ? Jouons et voyons si
c'est bien ce qui se passe. Et c'est effectivement ce qui se passe. Comment vous y trouvez-vous ?
Je suis en train de dire : « Comment ? Maintenant, ce qui est extrêmement
important, si je devais également imprimer le
test original ici, n'est-ce pas, parce que nous l'avons intégré la fonction et que nous avons remplacé
le bonjour par un Howdy, vous constaterez que le
test n'a pas changé. Vous pouvez donc voir que le test est
complètement inchangé. Et c'est aussi ce qu'il dit. Si je m'arrête là, c'
est aussi ce que j'ai dit. Si nous y allons, il renvoie une copie de
la chaîne transmise. Cela ne modifie donc pas la chaîne que nous
avons transmise. Il est très important
de s'en souvenir. Une autre chose que je peux vous montrer
est, par exemple, de trouver quelque chose. Ce sera donc String Dot Find. Il s'agit donc d'une autre méthode qui a en fait
examiné ce qu'elle dit. Recherche donc la première correspondance
du modèle, puis
renvoie les indices. D'accord ? Alors, qu'est-ce que cela signifie ? Eh bien, ajoutons simplement, par exemple un test ici.
Peu importe celui que nous mettons dedans. Ensuite, je peux le dire, donc nous allons y
jeter un coup d'œil. Ensuite, nous pouvons également l'
imprimer. Alors, où allons-nous
le faire comme
ça là-bas et ensuite trouver des
résultats Et nous devrions en tirer un chiffre
pour que vous puissiez voir où se situent les sept, accord, alors pourquoi est-ce sept ? Eh bien, si on compte encore
une fois, d'accord, donc je compte les
caractères à ma droite, donc ça va être 1234567. Il s'agit donc bien du
septième caractère, ou du caractère avec des indices ou un indice de sept.
C'est l'idée générale. Et puis, pour financer des choses que vous pouvez utiliser parfois, c'est intéressant. Il s'
agit essentiellement de crier affaire puis de chuchoter affaire. L'idée est donc de
placer un point en haut, et si nous y mettons
quelque chose, nous pouvons simplement le copier. Il suffit donc de sélectionner Control C, Control V pour le coller. Et c'est alors du chuchotement
et c'est alors plus bas. Ce que vous constaterez,
c'
est que la partie supérieure, it's just going to see,
renvoie une chaîne tous les caractères minuscules sont
remplacés par des majuscules, tandis que la valeur inférieure
renvoie une copie avec toutes les lettres
majuscules en minuscules. Donc, si nous faisons cela, vous pouvez
voir crier bonjour,
je dis bonjour et puis
chaque printemps, c'est comme si c'était le cas. Donc, elles sont plutôt
cool aussi. Maintenant, ces opérations,
y compris certaines
des autres fonctions relatives aux chaînes de caractères, peuvent être extrêmement
utiles si
vous
avez besoin de modifier des textes fonction de l'emplacement
du lecteur ou si vous devez sortir
quelque chose quelque part. Cela peut donc être utilisé
pour un grand nombre de choses. C'est pourquoi cela peut
être très important. Et bien sûr, comme
toujours, je
recommande vivement de jouer un peu
avec ça. Il existe bien sûr quelques autres fonctions de
chaîne
que vous pouvez utiliser. Mais en conclusion, vous pouvez obtenir la longueur d'une chaîne en utilisant un hashtag plutôt qu'en la variable chaîne,
ou vous pouvez également utiliser les fonctions de chaîne de caractères à partir de string point, puis quelle que soit la fonction,
dans ce cas Len. Nous avons également vu comment
vous pouvez remplacer des éléments
dans des chaînes et n'
oubliez jamais que cela renvoie une copie de la
chaîne d'origine qui n'a jamais été modifiée. Nous pouvons même trouver des objets et des chaînes de caractères et, à la
fin, nous avons également vu la modification des caractères
minuscules et majuscules. Eh bien, j'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose nouveau et je vous verrai tous
lors de la prochaine conférence. Donc, oui.
11. (Lua) Boucles à Lua: Bienvenue dans l'introduction des
toilettes ici pour les noyaux des barrages routiers. Et puis dans cette conférence,
nous
allons examiner les boucles. Maintenant, que sont les boucles ? Eh bien, ils sont très intéressants. Tout d'abord, bien sûr, un nouveau script,
08 boucles de tableau de bord et un joli commentaire
en haut de la page. Et la question qui
se pose est la suivante : que sont les boucles ? Et si
je vous confiais la tâche d'imprimer tous les numéros de 1
à 100 ? Vous pourriez dire, eh bien, d'accord,
commençons du bon pied. Nous allons en faire un et ensuite
nous allons le copier. Je vais dire 23 et 4,5,
et à un moment donné, vous aurez terminé. Maintenant, je vais
dire, en fait, ce que j'aimerais que vous fassiez, c'est que tous les nombres pairs ne devraient
pas être imprimés. Je ne veux que les chiffres impairs, 1 à 100, et tu vas me dire
: « Waouh, c'est un peu ennuyeux. Donc,
soit vous allez commenter chaque chiffre pair, soit vous
allez simplement supprimer
chaque chiffre pair, puis je lui dis : « Oh, désolée, j'ai mal lu. En fait, je voulais l'
inverse. En fait, je ne voulais pas
imprimer les nombres impairs. En fait, je ne voulais pas imprimer les
chiffres impairs et tu t'es dit : « Oh mon Dieu, j'ai juste tout
changé. Et à ce moment-là, tu
vas juste être très agacée. Bien sûr, ce
n'est pas la bonne façon de procéder. Il existe un
moyen bien plus simple de le faire. C'est-à-dire des boucles, en gros des
boucles dans un terme très général, ou certaines parties de code
ou certaines parties de script qui vont se
répéter x fois,
autant de fois que
vous le souhaitez. Ainsi, par exemple, nous pouvons créer une boucle en quatre. Vous pouvez voir que cela
suggère déjà que vous pouvez créer une
boucle for et que cela est déjà
surligné en tant que mot clé. Et pour que cela fonctionne je vais l'écrire
et l'expliquer. Nous pouvons donc dire que je suis égal à
un et je vais dire dix, et je vais répéter une virgule ,
puis un, puis faire. Et dès que j'appuie sur
la touche Entrée, vous pouvez voir que
la fin dégénère
et que tout ce qui se trouve à l'intérieur
de cette boucle
, comme nous avons vu
des déclarations, n'est-ce pas ? Tout ce qui est
remplacé par cette boucle sera fait dans ce cas dix fois. Qu'est-ce que c'est maintenant ?
Comment est-ce que cela fonctionne ? Que signifie cette folie ? Eh bien, cela signifie ce qui suit. Cela signifie que la boucle, nous devons bien sûr commencer à
compter, parce que nous devons savoir à quelle
fréquence nous la parcourons. Quoi que nous
mettions ici, nous pouvons simplement l'
imprimer dans ce cas, non ? Nous allons donc
simplement imprimer le nombre que nous sommes en train de compter. Et la question est la suivante : d'accord, nous avons commencé par un, nous
commencerons par un, c'est-à-dire ceci, n'est-ce pas ? Nous commençons donc par une, d'accord, qui devrait être assez
explicite. J'en ai commencé un. Maintenant, nous allons terminer à dix heures. C'est ce que
signifie ce chiffre , et puis il est
extrêmement puissant. Ce nombre signifie
que nous augmentons le nombre de points chaque
fois que nous terminons la boucle. Nous pourrions également en faire trois. Donc, nous augmentons le
nombre de trois, deux,
six ou neuf ou nous en honorons
26 si nous le voulions, nous pouvons faire beaucoup de
choses avec ça. Mais pour le moment, nous sommes juste en train de vivre cette situation. Et chaque fois que nous
parcourons cette impression, nous augmentons ce I d'une unité. Et dès qu'il atteint
dix heures, nous en avons fini avec ça. Eh bien, jouons et
voyons ce qui se passe. Et vous pourrez voir si nous augmentons légèrement la sortie
. 1 234-567-8910, exactement ce à quoi
nous nous attendions. Mais nous augmentons ce I d'un à chaque fois
que nous terminons une boucle. Nous repartons donc de zéro. On se dit : « D'accord, j'
en suis un en ce moment. Le reste ne
nous concerne pas pour le moment car je n'ai pas dix ans ou
c'est moins de dix ans. Donc,
on se dit que tout va bien. Ensuite, nous imprimons
I, qui en est un. Nous arrivons à la fin. Nous allons donc revenir
à la boucle à quatre. On se dit : « OK, maintenant
je suis augmenté d'un, donc maintenant j'en ai deux, et ainsi de suite jusqu'à ce que nous atteignions dix. Et puis la boucle se
dit : « Oh, regarde ça. J'ai dix ans maintenant. Nous avons donc terminé. Et c'est ce que l'on appelle
une boucle à quatre dans ce cas. Très intéressant, en effet. Maintenant, nous pouvons également avoir un
autre type de boucle. Permettez-moi d'arrêter le
jeu pendant un moment. Et nous pouvons avoir un
autre type de grippe et cela prend un certain temps. Donc, par exemple, nous pouvons avoir une variable locale x
ici, soit trois. Ensuite, nous pouvons dire while, et nous pouvons dire que si x est
inférieur ou égal à dix, alors nous allons faire quelque chose qui,
en série, vous obtiendrez une expression booléenne explicite
qui doit être vraie. Et bien que cela soit vrai, nous allons le faire maintenant, alors que
les boucles sont notoirement sujettes
à
ce qui suit, à savoir une boucle infinie. Une boucle infinie se produit si, pour une raison quelconque, vous
n'arrivez jamais à la falsifier. Donc, si x est toujours
plus petit ou égal à dix, alors cette
boucle va tourner, durer éternellement. Maintenant, je crois, si je
me souviens bien, Lula et Roblox Studio ont une sorte de sécurité
intégrée pour cela, afin que l'ensemble de votre
Roblox Studio
ne tombe pas en panne si cela se produit. Mais je
vous recommande quand même de ne pas l'essayer car c'
est un peu ennuyeux. Donc, à l'intérieur, nous pouvons par exemple dire, d'accord, nous
allons juste augmenter x d'
un à chaque fois et
ensuite
tout devrait bien se passer parce que, bien sûr, si nous augmentons ce chiffre d'un, à un moment donné, ce
sera plus grand que x, n'est-ce pas ? Donc, si nous pouvions simplement dire imprimer et que c'est
aussi imprimer x, y ne serait pas le cas. Et
faisons-le avant de l'augmenter. Nous allons donc en imprimer
trois jusqu'à dix heures. Et puis nous devrions également
être en dehors de la boucle. Faisons donc
une autre impression ici, en dehors de la boucle. Jouons à ça et
voyons ce qui se passe ici. Et bien sûr, 3-10, en
dehors de la boucle,
absolument pas de soucis. Nous pouvons également le faire, et ce n'
est qu'un exemple. À l'intérieur. Si nous sommes à l'intérieur d' une boucle while ou d'une
boucle for d'ailleurs. Hein ? Disons que nous voulons
nous dire : « D'accord, tu sais quoi ? Quand x atteint sept, alors nous voulons réellement faire ce
qui suit et nous allons faire une pause. Break est un autre mot clé
qui va complètement sortir
immédiatement de la boucle comme si nous avions atteint
la fin de la boucle. Et cela ne signifie pas que
nous atteignons ce but. Nous sommes comme si nous étions à l'extérieur
du petit oiseau qui saute. Nous pouvons également utiliser continuer. Et ce serait comme si nous étions arrivés à
la fin. Cela va donc continuer la boucle. Cela rompra la boucle. Cela signifie que
nous serons en dehors de la boucle à ce moment-là.
C'est l'idée générale. Donc, si nous utilisons break
here, nous aurons
trois à sept sorties. Vous pouvez, ou dans ce
cas six en fait parce que nous sortons
x avant de l'augmenter. Donc x vaut six, ça passe, ça
passe à sept. X7, nous sommes en train de sortir et
c'est pourquoi nous avons 345,6. Et puis nous sommes en dehors de la boucle. Si nous devions continuer ici, se passerait en fait que
rien ne serait
différent de
ce que nous avions connu auparavant, car rien n' est pertinent
après cette
déclaration. Cependant, si nous devions le mettre
au tout début ici,
ce serait
intéressant, car
maintenant, sept
ne seraient plus ce serait
intéressant, car produits. Donc, si nous voyons cela maintenant, vous pouvez voir que tout d'un coup,
ce qui se passerait, c'est que nous nous
retrouverions dans une boucle infinie. Maintenant, c'est, bien sûr, une application. Vous pouvez donc voir que nous avons épuisé le
temps d'exécution autorisé, car ce qui se passe ici, c'est que x
vaut sept, puis nous nous disons :
« OK, continuons et
puis c'est comme de l'exercice ». Continuons,
Continuons, Continuons,
Continuons. Et il le fera jusqu'à ce que, dans ce cas, le temps
d'exécution autorisé soit atteint. Cela fait 10 s, si nous
pouvons le voir correctement, donc la différence
de temps est de 10 s. Donc, en théorie, cela peut se produire. C'est pourquoi vous devez
faire attention à cela. Nous pourrions donc, par exemple, faire
quelque chose comme ça. L'impression se produit donc
après
, puis l'augmentation
ici se produit avant. Donc, si nous devions nous contenter de
cela, nous sauterions tout à coup de 6 à 8 et de plus de
sept dans ce cas. C'est donc une autre idée
intéressante. Et puis nous
avons également une boucle de répétition, qui est à
peu près très similaire
à la boucle while. Ce que nous faisons essentiellement dans
le sens inverse. Donc, en gros, nous disons : « Hé, nous voulons répéter le code suivant jusqu'à ce que
quelque chose soit vrai. C'est à peu près équivalent à la boucle complète, mais c'est un peu différent. Et c'est écrit comme ça. C'est à peu près
tout ce qui concerne les boucles. Ou ils peuvent être intéressants. Cela devrait être à
peu près tout à fait normal, non ? En résumé, les boucles sont moyen
incroyablement simple et
efficace répéter le code que vous
souhaitez répéter
x fois qu'il y a des boucles,
tandis que des boucles et
des répétitions jusqu'à ce qu'elles soient en boucles. Et ce sont, je pense, les trois versions principales. Il y a aussi des éléments
intéressants pour,
pour les boucles plus tard, que nous pourrons
voir les quatre boucles de chaque boucle. Mais dans l'ensemble,
ce sont essentiellement les trois grands. Et ils peuvent être très,
très intéressants en effet. Je recommande donc vivement de
jouer un peu avec
ça. Si vous voulez relever un
petit défi, ce n'est qu'un
défi pour vous-même. Ce que vous pouvez faire, c'est
augmenter ce chiffre à 100 et
imprimer les nombres 1 à 100, puis faire exactement ce que je vous
ai dit et dire en gros :
« Hé, nous ne voulons imprimer nombres que s'ils sont
divisibles par deux. Donc, s'il y en a
même ou s'il n'y en a pas. Cela devrait donc être
assez simple
avec la conférence if and else et
la conférence en boucles, vous
devriez être capable de le faire. Je
vous recommande vivement de l'essayer. C'est un exercice très amusant. Quoi qu'il en soit, j'espère que vous trouvé utile
et que vous apprendrez quelque chose de nouveau. Je
vous verrai tous lors de la prochaine conférence. Donc, oui.
12. (Lua) Fonctions à Lua: Très bien, bon
retour aux toilettes ou introduction au cours
sur les barrages routiers ici. Et dans cette conférence, nous allons examiner
les fonctions. J'ai donc utilisé ce
mot plusieurs fois. Créons un nouveau script ici
et renommons-le en 09 fonctions tiret
et, bien sûr, en 09
fonctions ici. Maintenant, la question qui se pose est la suivante :
que sont les fonctions ? Eh bien, comme vue d'ensemble de haut niveau, vous pouvez essentiellement mettre plusieurs instructions au lieu d' une fonction, puis toujours exécuter cette fonction
au lieu de faire toutes ces choses différentes Par exemple, nous
pouvons écrire une fonction. Vous pouvez voir qu'il s'agit d'un mot clé ,
puis du
nom de la fonction. Appelons ça de
la cuisine, non ? Ensuite, nous pouvons même mettre
quelque chose ici pour écrire le nom de cette fonction
, puis nous aurons des parenthèses. Dès que vous insérez
la parenthèse ouverte,
la parenthèse fermante doit être
générée automatiquement. Et ici, vous pouvez ensuite
introduire certains arguments. Ils sont appelés paramètres, sont des paramètres et ils peuvent
être transmis à la fonction, modifiant
ainsi la sortie. Donc, dans notre exemple de codage ici, ne mettons rien ici et en fait, allons
simplement jusqu'à la fin,
appuyons sur Entrée,
puis sur la fin, nous allons à nouveau
générer automatiquement. C'est la même chose
que nous avons vue avec les boucles et les instructions if et
else. Et à l'intérieur, si nous cuisinons quelque chose, je peux maintenant y mettre différentes choses. Maintenant, dans ce cas, ça
ne marchera pas. Je vais juste faire des
commentaires juste pour que vous vous
fassiez une idée d'une fonction. Qu'est-ce qu'une fonction, n'est-ce pas ? Donc, chaque fois que nous voulons cuisiner, peut-être voulons-nous réellement
cuisiner quelque chose de spécifique. Disons, disons
simplement que nous allons appeler ce cuisinier dîner pour les besoins de
la discussion, n'est-ce pas ? Et chaque fois
que je veux préparer le dîner, il y a certaines choses
que je dois faire, non ? Je dois donc sortir les couverts, je dois peut-être
préchauffer le four. Je dois faire des
légumes coupés, des trucs comme ça. Il y a donc certaines
choses que je dois toujours faire si je veux exécuter
cette fonction spécifique, n' est-ce pas ? Ce truc précis. Et vous pouvez tous
les répertorier dans une fonction. Et puis, au lieu de les écrire
individuellement, si nous devions le
faire plusieurs fois, nous devrions toujours lire
chaque instruction. Et c'est de la folie. Fondamentalement, une fonction
est un conteneur dans lequel vous pouvez placer plusieurs lignes
différentes
ici dans ce cas, et elles seront ensuite exécutées. Voici maintenant un exemple de haut niveau
pour vous faire une idée. J'espère. Jetons maintenant un coup d'
œil à un exemple concret. Un exemple concret
pourrait donc être une fonction de somme. Nous sommes entre parenthèses. Nous avons mis en fait le numéro
un et le numéro deux. Et maintenant, ce qui est fou, c'est que
si nous devions appeler
cette fonction num, nous voudrions en fait renvoyer
quelque chose. On peut donc dire retour. Et vous pouvez voir qu'il s'agit
également d'un mot clé et que nous
voulons renvoyer num un plus num deux. Et c'est maintenant ce qui
est retourné. Bien sûr, dans ce cas, nous avons déjà une
sorte de fonction en
utilisant simplement l'opérateur plus. Cependant, encore une fois,
il ne s'agit que d'un exemple
pour vous permettre de commencer à comprendre les fonctions et pourquoi elles peuvent être
extrêmement utiles. Parce que maintenant,
nous pouvons imprimer et dire,
eh bien, la fonction de somme, n'est-ce pas ? Et nous pouvons simplement en imprimer
quelques unes et dire 3.10. Et comme vous pouvez le voir, c'est
ce que nous appelons
la fonction somme. Vous pouvez même voir qu'il se
met en valeur ici. Si je clique dessus
et à l'intérieur d'ici, nous pouvons passer un chiffre et un autre, et
tout cela est résumé ici. Ce sont donc des paramètres que
nous transmettons en paramètres, vous devez toujours avoir la
bonne quantité de paramètres. Donc, si c'est le cas, si je
devais le faire, alors même que nous n'
avons aucun problème ici, si je devais réellement l'exécuter
, nous aurions un problème. Mais pour les besoins de l'argumentation,
jouons à ça. Et nous verrons que si
je regarde la sortie, nous avons essayé
d'ajouter un nombre nul, car si je ne
transmets pas quelque chose de correct, alors ce qui est transmis est nul. Nous l'avons déjà entendu
, n'est-ce pas ? Nil, c'était juste l'
absence de valeur dans une certaine variable. Nous devons donc
transmettre quelque chose. Et si nous devions transmettre les
deux nombres ici, nous
pourrons
alors constater que
la fonction de somme produit 13, qui est exactement ce à quoi
nous nous attendrions ici. Bien sûr, lorsque vous écrivez un
script, fonctions peuvent devenir beaucoup plus
compliquées que cela, mais il ne s'agit que d'une
toute petite
introduction aux fonctions. Nous les verrons
lorsque nous
programmerons avec Roblox lui-même. Pour résumer, voici les fonctions que vous pouvez essentiellement
utiliser pour regrouper plusieurs éléments différents et les exécuter
l'un après l'autre. Cela peut également inclure
d'autres fonctions. Vous pouvez également revenir à
certaines choses et fonctions. Par exemple, nous avons
ici une fonction de somme dans laquelle nous transmettons deux paramètres. Et ils seront ensuite restitués une fois que nous
en aurons fait quelque chose. Il s'agit d'un
aperçu général des fonctions. Si vous ne savez pas exactement
comment les utiliser, ne vous inquiétez pas, le plus important
est que vous ayez été initié à ce
sujet et nous
pourrons également en savoir plus sur les
fonctions dans les prochaines
conférences. Sinon, j'espère que cela vous a été utile et que vous avez appris
quelque chose de nouveau. Je te verrai lors
de la prochaine conférence. Donc, oui.
13. Tables (Lua) à Lua: Très bien, bon retour
aux toilettes. Introduction aux toilettes, pour les scores
des robots. Pour cette conférence, nous allons jeter
un œil aux tableaux. Maintenant, les tables sont une chose très
intéressante et elles peuvent être
assez compliquées, mais ne vous inquiétez pas du tout,
tout ira bien. Faisons donc des tables
ici et des tables de hachage, puis la même
chose ici. Et voici, les tables sont des tables. L'idée générale des
tableaux est essentiellement que vous avez une sorte de
liste de certaines choses. Alors, bien sûr, un tableau est un peu
différent d'une liste, mais vous pouvez, pour l'instant, le considérer comme une liste afin que nous
ayons quelque chose à tester. Je vais créer une
variable locale appelée days. Et ces jours-ci,
ce sera une liste de tous les jours
du lundi au vendredi. Tout d'abord, ce que
nous allons faire est égal à, puis à
un crochet bouclé,
le crochet bouclé de fermeture se
génère à nouveau automatiquement. Et ce sera une
table de chaînes dans ce cas. Ce
sera donc la virgule du lundi, et puis nous aurons mardi. Et pouvez-vous deviner exactement ce
qui va suivre ? journée des témoins, c'est ainsi que cela s'écrit jeudi, et
enfin et surtout, nous avons aussi le vendredi. Vous y voilà. Donc, en gros, ce sont les jours et nous
pouvons maintenant faire ce qui suit. Nous pouvons imprimer, non ? Et ce que nous pouvons imprimer,
c'est imprimer une journée. Et le jour où nous allons imprimer nous allons bien imprimer, nous voulions
imprimer, disons mercredi. Comment s'y prendre ? Eh bien, pensons à
cette journée pour que nous puissions y consacrer des jours et vous
pouvez même nous le suggérer. Et maintenant, comment pouvons-nous réellement
sortir d'un de nos décès ? Eh bien, nous avons ce support ici et nous
pouvons y ajouter un chiffre. Et ce nombre représente l'index d'un côté
de la liste, n'est-ce pas ? Ce sera donc
l'élément de
l'index 1, X2 et X3, X4 et X5. Mais tout le monde, mercredi, nous
allons en faire trois. Jouons
et voyons si nous sortons mercredi et même une journée, mercredi, c'est déjà
génial. Maintenant, l'indice commence ici
à un au lieu de zéro. Cela n'est donc
important que si vous programmez déjà et si
vous avez déjà programmé, généralement lorsque vous faites d'autres choses dans d'autres langages
et d'autres langages de programmation, les indices commencent
généralement à zéro. Ce n'est pas le cas à Lua. Dans Lua, chaque index commence à un. C'
est très important. Maintenant, si vous ne
savez pas ce que tout cela signifie, ne
vous inquiétez pas. C'est très bien. Je dis simplement que pour les personnes qui ont déjà
programmé, c'est une
chose très, très importante à garder à l'esprit. Maintenant, bien sûr, nous
avons la sortie 1, mais si nous le
voulons, nous allons tout afficher. Cela va donc sembler un
peu plus compliqué, mais nous avons une
boucle en quatre que nous pouvons utiliser et qui affichera essentiellement tout ce qui se trouve dans
cette table en particulier. Maintenant, il y a deux
choses différentes que nous pouvons faire. Nous pouvons soit utiliser une
boucle à quatre voies normale , juste
là où nous nous disons : «
Hé, je veux commencer par
une et je veux m'arrêter à ». Il s'agit d'une journée de hashtag très
importante. Ce serait donc la longueur
de cette table particulière. Par exemple, combien d'éléments
y a-t-il dans ce tableau ? Je veux augmenter d'une unité. Pour cela, je veux le faire et
ensuite simplement imprimer des jours. Encore une fois, des crochets. J'ai vu que cela
devrait théoriquement sortir lundi, mardi, mercredi,
jeudi, vendredi. Cela devrait être tout à fait correct. Voyons juste si cela fonctionne. Et bien sûr, lundi, mardi, mercredi,
jeudi, vendredi. Absolument, pas de soucis. Et ça marche très bien. C'est plutôt cool. Il existe une deuxième
façon de procéder. Cela fonctionne totalement, mais il existe un autre moyen
de le faire. Maintenant, celui-ci est un
peu plus compliqué. La raison pour
laquelle l'autre peut être intéressante
est qu'à l'
heure actuelle , les tables sont
mappées à l'index. Donc, en gros, c'est
rouge, c'est un, c'est deux, c'est trois, c'est quatre, c'est cinq. En théorie, je pourrais
faire tout ce que je veux. Donc je pourrais le faire, et
je vais juste, je vais juste faire des trucs dingues. Disons simplement que a égal à
ceci est égal à cela, C est égal à cela, d est égal à cela, et alors
F est égal à ceci. F est E. En fait, voilà. Vous pouvez donc voir qu'
il n'y a pas, non, aucune erreur
ici parce que maintenant
elles sont mappées à des touches
différentes, n'est-ce pas ? Maintenant, ce qui est fou,
c'est que si je devais le
garder et que je joue à
ce jeu, vous constaterez
qu'un jour, c'est zéro. De plus, nous ne
produisons rien parce qu'il n'y en a pas,
tout est nul. Ça, ça ne marche pas. Mais ce que nous devons
faire, c'est
obtenir la paire de valeurs clés. Parce que nous avons
essentiellement transformé cette table d'une
liste normale dans laquelle vous pouvez accéder aux éléments via l'
index en une sorte de dictionnaire ou de carte qui mappe une valeur
à une autre. Nous pouvons donc maintenant faire une boucle à quatre
avec une clé
et une valeur, et ce sera
par paires de tables de jours. Alors on va faire quelque chose. Mais ça a l'air assez fou. L'idée générale, cependant, est la suivante : c'est la nouveauté. Ce que nous prenons, c'est
une clé qui est toujours la première
chose à faire ici, n'est-ce pas ? Donc a est égal, c'est la clé et la valeur est ce qui est écrit
dedans, n'est-ce pas ? Donc, avant, la clé
n'était que l'indice 1,234,5. Et maintenant, la clé est a, B, C, D et E. C'est la seule
chose qui a changé. Et si nous devions
faire ce qui suit, si nous le faisons maintenant ou
disons, disons essentiel. Ensuite, nous allons
imprimer la clé. Et je vais faire la valeur ,
puis l'imprimer. Ce que vous constaterez, c'est
que cela produira une valeur
clé le lundi et
ainsi de suite. Mais jouons à ça. Vous verrez la valeur de la clé a le lundi, clé C le mercredi, ce qui est intéressant, et c'est également une chose très importante. Ce n'est plus en règle. N'est-ce pas fou ? Eh bien, c'est effectivement le cas. Alors rejouons à ça. Comme nous le voyons, nous avons eu le lundi, le mercredi, le mardi, le
vendredi et le jeudi. Refaisons-le et nous
aurons à nouveau le même ordre. C'est une autre leçon extrêmement
importante, car si nous utilisons ces
paires ici, l'ordre dans lequel nous les avons enregistrées
n'est pas garanti. C'est extrêmement
important et il faut absolument le garder à l'esprit. Cependant, c'est toujours une chose
très, très intéressante. Mais gardez cela à
l'esprit, c'est très cool. Et si je devais à nouveau supprimer la valeur des clés
ici, n'est-ce pas ? Et nous devions
revivre cela. Quelle sera la clé ? Eh bien, c'est exactement 12345. Maintenant, l'ordre est correct car je ne me
cite pas à ce sujet. Je ne suis pas sûr à 100 %, mais
je suis presque sûr que les clés peuvent être triées
ou commandées, n'est-ce pas ? Donc 1234, il y a un
ordre précis dans ces choses, alors l'ordre sera
toujours celui dans lequel vous
les avez enregistrées. Et c'est plutôt cool. En effet. Mais ce n'est pas
tout, car que
manque-t-il aujourd'hui ? Bien sûr, le samedi
et le dimanche manquent. Donc, ce que nous pouvons faire,
c'est insérer certaines valeurs
dans ce tableau. Nous pouvons créer un tableau à points et vous pouvez voir qu'il y a un tas
de choses que
nous pouvons faire, créer,
trouver certaines choses. Nous pouvons même voir renvoyer
la clé numérique maximale. Il y a des trucs dingues. Nous pouvons déplacer des choses, les trier,
les cloner. Mais pour nos besoins, ce que je veux en fait, c'est simplement
insérer quelque chose. Et ce que je veux insérer c'est que je veux l'insérer en jours. Voici donc le tableau dans lequel
nous voulons insérer. Ensuite, nous devons le mettre dans un endroit
précis. Dans ce cas, ce que je veux vraiment
faire, c'est placer
cela à un endroit précis. Je vais donc placer cela
en position numéro six. Ensuite, je veux
saisir la valeur. Et la valeur ici est le samedi. Et ce que nous pouvons faire, c'est
simplement copier cela. Et puis, en
septième position, dans ce cas, je voudrais le placer dimanche. Et si nous devions le
sortir maintenant, encore une fois, je pourrais
prendre ce que je veux. En fait,
prenons celui-ci et ensuite nous allons le
supprimer à partir d'ici. Ça va aller pour
ne pas étaler la sortie ici. Jouons, et
vous constaterez que nous avons
maintenant une touche
six qui
va renvoyer la valeur
du samedi et une touche sept qui va
renvoyer la valeur du dimanche. Très intéressant, en effet. Et puis une dernière chose. Maintenant, je sais que cela a été beaucoup et que cela représente beaucoup de nouvelles choses à la
fois. Ne t'inquiète pas du tout. Nous allons
pouvoir, vous savez, vous pourrez y
naviguer facilement un
peu plus tard. Cependant, ce que
je recommande toujours, comme toujours, c'est d'essayer un tas de choses
avec ça. Essaie. Si vous avez des valeurs différentes
ici en utilisant au lieu de chaînes, vous pouvez y mettre des nombres. Et au fait, c'est aussi une chose
très intéressante. Vous pouvez même mettre,
mélanger et faire correspondre différentes valeurs
de types de variables. Vous pouvez avoir des chiffres ici
et ainsi de suite. qui est en fait
très intéressant car cela signifie que vous pouvez avoir un quasi-cours. Maintenant, c'est un peu
plus avancé et, encore une fois, quelque chose pour les
personnes qui ont déjà programmé
dans une autre langue. Vous pouvez donc avoir, par exemple une personne qui
a un prénom, par exemple john. Et il peut avoir un nom de famille, qui est peut-être Smith. Et puis tu peux même
avoir un h, non ? Ce qui est peut-être un 32. Maintenant, ce que je peux faire, c'est imprimer personne, personne. Ensuite, nous voulons mettre
FirstName, ceci y. Et puis nous voulons
avoir la personne. On peut aussi faire Person
Dot, et c'est fou. On peut même faire Person Point. Et vous pouvez voir les
trois éléments différents que nous avons mis dans
ce tableau en particulier. Nous pouvons sortir comme ça. Nous pouvons donc faire le nom de famille
et ensuite nous pouvons dire, c'est que nous pouvons dire
personne. Nouvel âge, années. Laisse-moi faire un
petit zoom arrière. Vous y voilà. Alors, une personne et quoi ? Il va afficher le prénom de la
personne. C'est ainsi que
nous pouvons nous écrire. Nous pouvons également y accéder par ce biais. Et il ne nous reste plus que l'âge, les années. Sortons ce LLS, jouons
ceci et voyons si cela fonctionne. Et bien sûr, son fils John
Smith a 32 ans. Absolument génial. C'est vraiment cool et nous pouvons bien sûr aller un
peu plus loin. Et maintenant, c'est juste, je veux
juste le mentionner. Nous pouvons même faire une
table de tables. Cela signifie qu'en théorie, nous pouvons avoir plusieurs personnes et ensuite avoir une liste
de ces personnes. Nous n'allons pas le
faire ici parce que c'est complètement fou. Cela dépasse largement le cadre de l'
introduction de Lula ici. Je voulais
vous présenter les tables. Elles peuvent être assez compliquées. Cela peut être un
peu compliqué. Cela peut être un
peu compliqué. Mais j'espère avoir
pu vous aider à
comprendre ce
qui se passe ici. Encore une fois, je
recommande vivement de vous
procurer le script ici, qui est bien sûr toujours
disponible en téléchargement. Et tu peux prendre ça
et essayer. Essayez d'en faire différentes
choses, d' insérer des objets à
différents endroits, d' insérer des objets
qui traînent autour de la personne qui est ici. Je recommande vivement de le faire et d'essayer de se faire une idée de
la façon dont cela fonctionne. Mais encore une fois, pour
résumer les tableaux généraux, ils peuvent également être des listes d'éléments ayant certaines clés
et certaines valeurs. Si vous ne spécifiez pas les clés, les clés ne font qu'
une, quel que soit le nombre d'éléments contenus dans cette table
ou cette liste dans ce cas. Et vous pouvez les parcourir en boucle avec deux boucles à quatre boucles différentes, deux styles
de boucles à quatre boucles différents. Et c'est
vraiment très cool. Nous pouvons même utiliser les tables pour faire quelque
chose comme une classe. Dans ce cas, c'
est une personne ici qui a un
prénom et un âge. Et nous pouvons le produire
de deux manières différentes. Eh bien, ce sera tout pour
cette conférence. J'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
14. (Lua) La bibliothèque de mathématiques de Lua: Très bien, bienvenue dans l'introduction
aux toilettes ici, pour les noyaux des barrages routiers. Et dans cette conférence, nous
allons parler de la bibliothèque de mathématiques, n'est-ce pas ? Alors, encore une fois, bien sûr, créons notre script ici, 11. Ça va être un jeu de maths libéral. Et voilà. Et ça va faire 11
maths, ça va aller. Et ce ne
sera qu'une très, très petite introduction. Mais ça pourrait être utile. Bien sûr, nous avons déjà fait quelques
calculs, n'est-ce pas ? Nous avons ajouté, nous avons soustrait, nous avons multiplié, nous avons divisé et nous avons même obtenu le reste. Des choses complètement dingues
que nous avons déjà faites. Mais avec la bibliothèque de mathématiques, nous
pouvons faire des choses encore plus folles. Donc, si nous devions imprimer, par exemple moins cinq, mais
que nous nous disions : « Tu sais quoi ? En fait, peu m' importe si c'est
moins cinq ou plus cinq. En fait, je veux juste le chiffre
absolu pour cela. Eh bien, nous pouvons simplement
imprimer Math Dot. Et vous pouvez voir ici
toutes les choses folles que nous pouvons obtenir
avec cette bibliothèque de mathématiques. Nous pouvons obtenir un nombre aléatoire. Nous allons voir
cela dans un instant. On peut même rendre Pi fou. Nous pouvons faire l'exposant,
obtenir un cosinus, nous pouvons renvoyer un
angle que vous donnez en radians et le
transformer en degrés. Nous obtenons le logarithme. , il y a beaucoup de choses Comme vous pouvez le
constater, il y a beaucoup de choses que nous pouvons faire. Et cela peut être extrêmement utile pour faire encore plus de choses
mathématiques. Si tu dis : « Oh, je n'ai pas
besoin de ces trucs de mathématiques ». Eh bien, par exemple, avoir des choses comme l'onde sinusoïdale est
en fait très utile. Parce que ce que vous pouvez
faire avec un panneau, c'est par exemple créer des cercles parfaits et ainsi gâcher les choses en cercles. Je dis simplement que
c'est l'une des choses qui, là où cela peut être
extrêmement utile. Mais dans ce cas, nous voulons
en fait des abdos, ce qui signifie absolu. Nous obtenons donc la
valeur absolue de moins cinq,
ce
qui, si nous jouons simplement, est bien sûr de cinq, parce que, eh bien, c'est
la valeur absolue. La valeur absolue ne
tient pas compte du signe. Tout ce qui compte, c'est de savoir quelle est la valeur réelle. Il y a d'autres choses
que nous pouvons faire. Donc, par exemple, nous pouvons faire un teal mathématique. Ce sera
donc le plafond. Vous pouvez voir qu'il renvoie
le plus petit entier, supérieur ou égal à x. Qu'est-ce que cela signifie ?
OK, on dirait que ça a l'air bien
plus fou qu'en réalité. Si nous insérons 10.21, ça va juste revenir,
eh bien, ça va se sceller. Cela va donc en fait en
faire un entier, ce
qui signifie que cela va être
arrondi au nombre entier supérieur
suivant. Si nous choisissons réellement l'autre point, qui sera le plancher, celui-ci sera arrondi vers le bas. Nous pouvons donc le mettre en haut,
arrondir vers le haut et celui-ci
arrondir vers le bas, en deux. Gardez à l'esprit
que cela ne correspond pas aux
arrondissements normaux, n'est-ce pas ? Nous avons donc également un rond. ce cas, celui-ci est également en panne parce qu'il a
vraiment l'air bien. Ou la règle, n'est-ce pas ? 0,5 signifie que vous arrondissez vers le haut et tout ce qui est en dessous de
0,5, vous arrondissez vers le bas. Mais voyons voir,
ça devrait être 111010. Euh, voyez si c'est
effectivement le cas. Et bien sûr, 111010. Parfait. Et arrêtons cela et
recommençons avec
0,5, puis ce devrait être 111011. Et bien sûr, 111011, exactement comment nous y sommes arrivés. Ils sont absolument parfaits. C'est exactement ainsi que cela
fonctionne, car ce sont, disons, les règles normales d'
arrondissement. Et voilà. Cela devrait donc
avoir du sens. Nous pouvons également obtenir le
minimum et le maximum. Cela peut donc aussi être
très utile en fait. Donc, c'est minimum,
ce qui signifie
qu'en gros, cela vous donnera
le nombre minimum. Tu as mis deux chiffres, non ? Et elle renvoie un
nombre plus petit donné par r Omega. Cela devrait donc avoir
beaucoup de sens. Et puis, bien sûr, nous pouvons
avoir deux corollaires à cela, savoir le maximum, qui renvoie le plus grand nombre. Vous pouvez en fait,
j'en suis sûr, saisir autant de
chiffres que vous le souhaitez. Allons-y. Pourquoi pas 60 ? Je veux dire, cela ne
changerait rien, en théorie, cela devrait également
fonctionner. Voyons voir. Et c'est effectivement le cas. Le premier est un et
le second 515. Cela peut donc être
très utile, par exemple si vous voulez obtenir
le chiffre le plus élevé pour un score élevé ou
quelque chose comme ça, les fonctions Min et Max
peuvent être très utiles. Mais imprimons aussi pi parce que chapeau blanc et
non pas puissance mais pi. Ensuite, nous pouvons également utiliser
le calcul de la racine carrée selon lequel SQRT est la racine
carrée de 25. Donc, pi
sera bien sûr 3,141, 5265, quelque chose comme ça. Et puis la racine carrée
de 25 devrait être cinq. Voyons voir, à quelle distance
en étais-je avec Pi ? 314-15-9265 ? Je pense que j'avais raison. Je crois avoir dit 649. Je ne suis pas sûr, mais
c'est essentiellement pi. Et c'est bien sûr avec
précision, c'est de l'amine. De toute façon,
je n'aurai jamais besoin d'une telle
précision dans les jeux vidéo . Je suis presque sûr que c'est la précision que
vous allez obtenir, la circonférence de l'univers
observable en millimètres. Donc je suis sûr que
ça va bien se passer. Et puis, bien sûr, la racine
carrée de 25 est cinq. Parfait Le dernier part. Vous pouvez également avoir
un certain caractère aléatoire. Maintenant, il est très important que caractère aléatoire de l'ordinateur
soit toujours pseudo-aléatoire. En gros, cela signifie que vous
l'ensemencez avec une certaine valeur. Et lorsque vous générez des
nombres qui seront
toujours les
mêmes, c'est pareil. L'idée, par exemple lorsque vous pensez à la génération de mondes de Minecraft , vous pouvez la mettre dans
une graine et
cela génère toujours
le même monde. Eh bien, comment ça marche ? C'est exactement la graine
que vous mettez dedans. Et puis les valeurs que vous
obtenez sont toujours les mêmes. Nous pouvons donc faire un tirage au hasard, cela vous donnera
un nombre, le numéro 0-1. Et vous pouvez également faire des
maths au hasard. Et on peut vraiment y
mettre des trucs. Nous pouvons donc ajouter un 0,10
et ce seront
les limites inférieure et supérieure que vous pouvez obtenir. Alors jouons à
ceci et nous pouvons voir que le premier chiffre est 0,6, peu importe, peu importe,
peu importe, puis 42. Je veux dire, quel
chiffre parfait ici pour obtenir n. Si nous arrêtons ça et que
nous le rejouons,
vous verrez que, oh,
ce sont exactement les mêmes
chiffres parce que, et c'est exactement le truc, parce que la graine est
la même, n'est-ce pas ? Nous avons donc la même graine
aléatoire ici. Si je change cela, nous aurons
maintenant des chiffres
complètement différents. Vous pouvez donc voir maintenant
que nous obtenons 0,0, 69,57. Donc, quand vous le mettez dans la graine, n'est-ce pas, si vous
en mettez 100 également, vous devriez en théorie obtenir exactement
les mêmes
chiffres que moi. C'est-à-dire que c'est l'idée de ce hasard ou de ce
pseudo-hasard. C'est plutôt cool en effet. En
général, si vous voulez le rendre complètement
aléatoire, vous devez prendre
le nombre de secondes passées sur votre ordinateur ou le nombre de ticks
sur votre ordinateur, car c'est généralement suffisamment
aléatoire pour obtenir une graine. Pour résumer. l'ensemble, les
fonctions mathématiques sont
nombreuses et peuvent vous apporter beaucoup de choses
différentes. Vous pouvez obtenir des nombres absolus, vous pouvez arrondir vers le haut ou vers le bas. Vous pouvez obtenir un minimax, et vous pouvez même obtenir des
constantes comme pi ici et même des nombres aléatoires qui, en fin de
partie, sont extrêmement utiles. Et ils peuvent simplement vous aider beaucoup pour un
certain nombre de choses différentes. Ce sont des ennemis matinaux dans une certaine zone
qui sont un peu aléatoires ou qui donnent des
attributs aléatoires aux ennemis. Toutes sortes de choses.
C'est vraiment cool, non ? Mais cela
conclut en fait cette conférence
ainsi que toute l'introduction
inférieure. J'espère que c'était une introduction
assez bonne
pour que vous puissiez vous
familiariser un peu avec Laura. Si vous ne vous sentez toujours pas très confiant à ce sujet,
c'est très bien. Il y a deux choses que je
peux certainement recommander. d'abord, s'il y a certains sujets que nous avons abordés et que vous êtes
un peu hésitant, j'
ai essayé de reprendre la
conférence et de voir si ,
avec toutes les différentes
choses dont nous avons
parlé rétrospectivement, ils sont maintenant un peu
plus faciles à comprendre. Deuxièmement, ce que je recommande
vivement c'est de jouer avec eux, avec les différents sujets
que nous avons abordés. Il suffit de jouer
un peu avec les fonctions mathématiques présentées ici, jouer avec les tables, de
jouer avec les boucles et les instructions if et else. Vous pouvez déjà faire
beaucoup de choses
avec ces 11 choses
dont nous avons parlé. Même si cela peut sembler
peu. Je vous le dis, c'est la
base sur laquelle tout, chaque jeu est essentiellement créé
avec toutes ces bases. Oui, bien sûr, il y a aussi
beaucoup d'autres choses. Mais ces bases, si
vous ne pouvez pas les utiliser, alors tout le
reste n'est pas pertinent car vous devez connaître les
bases, les fondamentaux. Sinon, cela
ne fonctionne tout simplement pas bien. À cet égard,
nous nous heurtons obstacles. Si cela vous a
été utile jusqu'à présent, j'
apprécierais vraiment votre avis. Sinon, je vous verrai lors
de la prochaine conférence. Donc, oui.
15. (Roblox) Roblox Studio Explained: Très bien, bon retour dans
les scores de Roblox. Dans cette conférence, nous
allons examiner une partie de l'interface utilisateur de Roblox Studio. Maintenant, cela va juste vous
donner un aperçu général, sans entrer dans
chaque bouton
ni ce que tout fait, car cela nécessiterait une vidéo de
deux heures en gros. Et ce n'est pas tout à fait
ce que j'avais en tête. Je voulais juste vous
montrer chacune
des différentes fenêtres
ici et à peu près ce qu'elles font. Donc, que ce soit cela ou peut-être sans
la sortie, ce sera à peu près ce que vous
verrez lorsque vous ouvrirez Roblox Studio pour la première
fois avec un jeu personnalisé La première chose que je
veux vraiment que vous fassiez est visualiser et d'ajouter la
sortie ici, car la sortie est
l'une des choses les plus importantes que nous utiliserons tout au long
du cours, car elle nous
permet essentiellement de afficher tout ce que nous
voulons par le biais de scripts. Et c'est ici que cela
va être affiché. Concentrons-nous ensuite sur cette
grande zone, qui est en quelque sorte la vue de
la caméra. Et vous pouvez voir que je suis en mode sélection en ce
moment. Il existe également le mode déplacement, le mode
échelle et le mode rotation. Disons en mode sélection. Et si je cliquais dessus
avec le bouton droit de la souris, je pourrais
maintenant me déplacer
si je déplace la caméra, mais je peux zoomer en
faisant défiler la molette de la souris. Et si je clique avec le bouton gauche, je peux sélectionner
certaines choses. Vous pouvez donc voir maintenant qu'il est entouré
d'une bordure bleue, ce qui signifie que j'ai
sélectionné cet objet. C'est l'idée générale. Je peux aussi me déplacer avec WASD et avec E et faire la
queue de haut en bas. Vous pouvez voir que lorsque je
déplace la
caméra en haut à droite, le cube bouge également, car il s'agit d'un espace
tridimensionnel, il est représenté
par une valeur x,
une valeur y et une valeur z. Il
s'agit simplement d' un système de
coordonnées tridimensionnel. Je peux cliquer sur les
visages ici et ce sera
alors ce visage. Je peux donc accéder à la vue
de haut en bas. Maintenant, tout est visible de haut
en bas. Cela peut être utile
pour certaines choses, mais je peux aussi
toujours m'en éloigner. Si je sélectionne un certain objet, vous pouvez le voir s'allumer dans l'Explorateur sur
la droite, sur la droite Vous pouvez
donc voir que le
petit emplacement ici est ensuite surligné. Et l'idée générale est
que je peux aussi simplement cliquer dessus pour qu'il soit
également surligné. Donc, cette idée d'explorateur. L'explorateur
représente tout ce qui se trouve dans notre jeu, fois dans le monde du jeu. Le monde du jeu, c'est tout ce qui
concerne l'espace de travail, n'est-ce pas ? Donc, si je devais cliquer
sur le signe plus, je pourrais ajouter un tas
de choses ici. Nous n'allons
rien ajouter pour l'instant, mais je pourrais ajouter
une quantité incroyable de choses. C'est essentiellement
tout ce que nous voyons. Et puis il y a aussi
d'autres choses, non ? Il y a donc les services
d'éclairage du joueur, des éléments de rangement. Certaines choses
aborderont également la plupart de ces sujets pendant
les conférences. Mais pour le moment, l'espace de travail est vraiment ce que nous avons de plus
important. Et peut-être le service de
script du serveur, où nous allons essentiellement charger tous nos scripts
pour le moment. Ensuite, en bas à droite, lorsque nous avons sélectionné quelque chose, nous pouvons voir que nous avons
certaines propriétés. Les propriétés représentent un
certain objet, n'est-ce pas ? Donc, dans ce cas, ce
lieu d'apparition possède ces propriétés particulières, tout comme la façon dont vous
êtes humain, n'est-ce pas ? Et vous avez un certain nom
qui serait une propriété, juste une idée générale. Et vous pouvez voir que
différents types d' objets ont différents
types de propriétés. Donc, dans ce cas, l'emplacement d'
apparition est de type lieu d'apparition
et contient certaines données. Vous pouvez donc voir quel est son stylo orange ou est-ce que
ce nom a une taille ? Cela fait donc partie de la
transformation et comporte un pivot, un certain comportement ,
des collisions,
des propriétés de port , etc. Il possède même un
champ de force spécifique aux lieux d'apparition. Pareil pour les équipes,
j'en suis sûr. Il y a donc un tas
de choses et vous pouvez même ajouter d'autres
attributs ici. C'est très, très intéressant. En effet,
les propriétés sont également quelque chose que nous examinerons dans une
prochaine conférence. Et puis pour donner un petit
aperçu. Donc, si nous sélectionnons cette option,
nous pouvons maintenant passer en mode déplacement, et maintenant nous pouvons la déplacer. Vous pouvez donc voir que je
peux maintenant déplacer cela. Je peux également le redimensionner. Je peux voir les échelles selon lesquelles, en
gros, si nous maintenons Shift, nous l'ajustons de manière uniforme. Si nous maintenons le contrôle et
que nous le redimensionnons sur un axe, nous pouvons même le
faire pivoter comme suit. Et si vous voulez que cela s'enclenche, vous pouvez le faire en
le faisant pivoter en vous
déplaçant ici, en l'
accrochant sur la grille, et maintenant je
ne peux le faire pivoter que de 45 degrés. Je ne peux le déplacer que par incréments d'
une étoile. C'est l'
idée générale ici. Nous verrons également la plupart de ces autres
choses tout au long du cours. La transformation peut tout de même
être intéressante. Donc, si nous sélectionnons à nouveau l'emplacement du
spa, vous pouvez voir que ce n'est pas
la transformation ici. Nous pouvons entrer beaucoup plus détail sur la façon de
faire certaines choses. Vous pouvez donc voir que j'ai un contrôle
beaucoup plus fin sur tout, surtout quand je prends la taille supérieure. Vous pouvez voir maintenant que la
taille de l'étude est en fait
représentée ici en chiffres, ce qui est vraiment impressionnant. Je peux donc être très, très précis avec les
avatars du moment présent. Nous n'avons vraiment
besoin de rien ici. s'agit donc simplement d'ajouter des avatars, dans ce cas, de tester, juste pour tester certaines
choses ici. À partir de là,
nous pouvons jouer, nous pouvons démarrer un serveur local
avec x joueurs. Nous pouvons même changer
l'émulateur du lecteur. C'est très intéressant. La vue est en fait
très importante car ici, nous pouvons activer et
désactiver certaines fenêtres. Comme vous pouvez le constater, il existe
en fait un bon nombre de gestionnaires d'actifs.
Nous avons la boîte à outils, le navigateur d'objets, l'analyse de scripts
et la barre de commandes. Il y a donc un tas
de choses ici, dont la
plupart
ne sont pas du tout nécessaires pour le moment. La plupart des choses intéressantes, c'est que la boîte à outils
va peut-être être intéressante. C'est donc ici que vous
pouvez charger certaines choses de Roblox dans
votre jeu, n'est-ce pas ? Vous pouvez donc ajouter des lumières,
vous pouvez même ajouter des plugins dans
ce cas, non ? Vous pouvez donc ajouter des plugins. Certains coûtent cher, d' autres Roebuck, d'autres
pas. Certains d'entre eux sont gratuits. Cependant, méfiez-vous toujours lorsque vous ajoutez des éléments provenant
d'autres personnes qui
pourraient contenir du code malveillant
dans leurs scripts malveillants. Cela existe. C'est surtout pour
des choses gratuites. Regardez toujours le
nombre de critiques qu'ils ont reçues et aussi le nombre de
critiques positives qui en sont la moitié, n'est-ce pas ? Donc, quelque chose qui est positif à
91 % et qui a plus de 100 critiques, ça ira
probablement. Gardez donc cela à l'esprit
et nous pourrons clore ce dossier. Vous pouvez ajouter une grille qui est
désormais une force. Nous
pouvons également créer une grille à deux types
ou une grille de 16e note. Cela vous aide simplement à
voir ce qui se passe. rendu
filaire
désactive essentiellement tous les solides vous donne
simplement une
image filaire de tout. Cela peut économiser une certaine quantité de puissance de
traitement si votre
PC est fondamentalement très lent. Et puis voici les plug-ins
pour le moment, nous n'utiliserons aucun plugin
pour la série de conférences, car nous pouvons généralement faire presque tout ce
dont nous avons besoin manuellement ou nous-mêmes. Cependant, il existe
des plug-ins vraiment
sympas qui
sont disponibles. Mais pour le moment, nous n'allons
pas nous concentrer là-dessus, n'est-ce pas ? Et c'est un aperçu général. Comme je l'ai dit, nous
pourrions entrer dans les détails sur toutes sortes de
choses pour le moment, ira bien. Et nous allons ensuite
partir de là et faire
une étape à la fois. Mais ce sera
tout pour cette conférence jusqu'à la prochaine fois. Alors oui.
16. (Roblox) Référence d'une partie: Très bien, bienvenue
aux bases de Roblox ici pour le cours de robotique. Et dans cette conférence, nous
allons
examiner les pièces et
comment les référencer. Que sont donc les pièces alors que
les pores sont tout ce qui existe dans l'
espace de travail, pour ainsi dire. Donc, si nous cliquons sur
cette partie ici, vous pouvez voir que nous sommes en train de
créer un nouveau port. Nous pouvons le supprimer à nouveau. Nous pouvons également passer au plus sur l'espace de travail et
descendre jusqu'au port ou nous pouvons simplement en mettre une
partie et vous pouvez voir une partie ,
puis cela en crée une nouvelle pour nous si
nous avons ce port. Nous pouvons maintenant le faire glisser
et le déplacer. Et nous pouvons faire tout ce que nous avons vu jusqu'à présent, n'est-ce pas ? Nous pouvons
nous déplacer et agrandir ce port. Nous pouvons le rendre plus grand,
nous pouvons le réduire. On peut déplacer ça. Il y a donc beaucoup de choses que nous pouvons faire avec ce port
en particulier. Et ça va être
vraiment très intéressant maintenant que celui-ci s'
appelle port. Et ce que nous pourrions
faire, c'est faire référence à cela dans
un script, n'est-ce pas ? Il existe donc de nombreuses
façons de le faire. Pour le moment. Nous allons
créer presque tous nos scripts à la place du service de script
serveur, ce
qui en fera un script
de serveur, n'est-ce pas ? Cela ne sera
exécuté que sur le serveur. Les différences
entre les serveurs et clients en
parleront un peu plus dans les années à venir, sous forme d'
un petit aperçu. En général, le serveur est essentiellement
ce que Roblox contrôle. C'est comme si quelque part
sur un serveur, quelque part sur Roblox Land, vous
n'aviez rien
à voir là-dedans. Vous êtes le client, donc
votre PC est le client. Lorsque vous vous connectez à un jeu, vous vous connectez à l'un
de ces serveurs et votre client ne peut évidemment pas tout
faire, n'est-ce pas ? Ainsi, le client peut modifier le nombre de
pièces dont vous disposez. Parce que si vous pouviez
le faire, vous pourriez simplement
appuyer sur un bouton
ou créer un script personnalisé
et vous dire
: « Oh, j' ai 1 000 pièces et puis les serveurs
répondent « Oui, absolument ». Tu as 1 000 pièces.
Il doit donc y avoir un découplage
indépendamment de cela, heure
actuelle,
une sorte de service de script. Nous allons créer un nouveau
script, je vais l'appeler. Nous allons choisir ce tableau de
bord F2 O2, et nous l'appellerons
la référence. Ligo va à
nouveau zoomer là-dessus et nous appellerons cela
faire référence à une
partie de l'espace de travail. Cela va vraiment être très
intéressant. Il y a donc deux
choses que nous pouvons faire. Supposons donc que nous voulions faire
référence à la plaque de base. Nous pouvons le faire. Créons simplement une plaque de base
variable locale et c'est égal au jeu. Nous voulons donc toujours
commencer par les minuscules du jeu. C'est très important,
et maintenant vous pouvez voir que je reçois tout ce
qui est à la place d'ici. Donc, en gros, le jeu est la
racine de l'explorateur. Vous pouvez voir que j'ai des joueurs
, et c'est ce gars ici. J'ai un espace de travail avec ce type. Et il y a plein
d'autres choses maintenant, je me demande si vous
avez un espace de travail. Encore une fois, c'est très important. Le boîtier est important ici. Gardez toujours cela à
l'esprit. Un espace de travail avec un w minuscule peut sembler fonctionner,
mais cela ne fonctionnera pas. Alors, gardez cela à l'esprit. Assurez-vous toujours que le
boîtier est correct. Ça et maintenant, tout à coup, vous pouvez voir qu'il y a
un tas de choses, mais il y a aussi une caméra,
qui est juste là. Et voici la première partie. Regarde ça. C'est cool, c'est
le même port ? En effet, c'est le cas. Et le nom ici doit
correspondre exactement. Si je le renomme,
si je clique dessus, appuyez sur F2 et renommez-le en minuscules p. Cela ne fonctionnera plus. Maintenant, vous pouvez même le voir, cela nous suggère un
port en minuscules car c'est le nom de la pièce à laquelle
nous faisons référence. Il doit correspondre exactement. Je sais que j'
insiste sur ce point, mais c'est extrêmement important car j'ai constaté
à
maintes reprises que des personnes venaient de changer le boîtier. Le boîtier est important. OK, donc maintenant, nous référençons la partie avec un p
minuscule, n'est-ce pas ? OK, c'est bon. En tant que plaque de base, ce
n'est pas ce que nous voulons. Nous voulons en fait
référencer les plaques de base. Donc, en gros, voilà. Je peux le compléter automatiquement
avec un onglet. Maintenant, j'ai référencé
la plaque de base. Je peux faire des choses avec. Eh bien, d'accord. Mais qu'en est-il de ma partie à
laquelle je souhaite faire référence ? Eh bien, nous allons
encore une fois dire local. Et puis appelons-la ma partie car c'est juste le nom
de la variable, qui est différent du nom de l'objet de la pièce. Cela est également très important. C'est ce qui est représenté. Insérez le code alors qu'il s'agit de la partie physique réelle de l'objet. Et encore une fois, nous allons parler d'espace
de travail de jeu puis de port, et non de parent. En fait, nous voulons nous
garer. Et voilà. Et maintenant, nous pouvons faire des choses
avec un port car la pièce possède différents
types de propriétés. Nous pouvons modifier ces propriétés
depuis le script. Nous pouvons donc dire ma part, qui est la variable pointant
vers cette partie particulière. Ça, et maintenant vous pouvez voir que
je peux changer la position, le nom, la rotation, la couleur. Dans notre cas, nous allons
simplement modifier la transparence à 0,5. Ensuite, nous ferons également
mon rôle en matière de couleur à points. Ensuite, nous pouvons le changer en un nu
à trois points de couleur. Ensuite, nous ferons
quelque chose comme si nous pouvions simplement changer
la couleur ici. Alors choisissons
un joli bleu. Oui, c'est sympa. Il s' agit donc simplement de
générer automatiquement ces couleurs. Vous pouvez voir si je clique
sur la hauteur, si je clique samedi,
comme vous pouvez le voir, sur la
couleur juste ici, et vous pouvez cliquer sur la
roue chromatique pour changer de couleur, ce qui est vraiment très cool. Maintenant, que va-t-il se passer lorsque nous commencerons réellement le jeu ? Eh bien,
passons simplement à la vue du jeu. Nous entendons le port en ce moment, il semble tout à fait normal, mais si je commence le jeu, il devrait être transparent
de 50 %. Il doit donc être transparent à 50 %
et devenir bleu. Jouons simplement au jeu et voyons où
au lieu du jeu. Et si je regarde ici, vous pouvez voir que c'est
maintenant un peu transparent et qu'il est bleu, exactement ce que nous voulions. Si nous allons dans l'espace de travail, nous pouvons même voir la
pièce ici. Il a maintenant une couleur différente
et la transparence est de 0,5. C'est plutôt cool, en effet, je peux voir que lorsque nous ne
jouons plus au jeu, il revient à ses propriétés d'origine
dans ce cas, car les modifier
au lieu du script, cela ne
les modifie pas définitivement. Ce serait donc une
façon de référencer une pièce dans un espace de travail
via le nom indiqué ici. Encore une fois, il est
extrêmement important que si je change les
noms ici pour, par exemple ma partie cool, n'est-ce pas ? Maintenant, si je devais jouer à ce jeu maintenant, que croyez-vous qu'il se passerait ? Eh bien, nous faisons référence à ce
que l'on appelle une pièce. Jouons simplement. Et nous verrons que cette partie n'est pas un membre valide des œuvres ou ne devient pas un
membre de l'espace de travail. Workspace et elle n'ont pas
changé de couleur ni de transparence car maintenant la pièce
s'appelle Mike Cool Part.
Alors, gardez cela à l'esprit. Si vous obtenez cette
erreur ici, cela signifie simplement
que vous
faites probablement référence à quelque chose
dont le nom a changé. Si nous nous assurons de le
faire, tout à coup, si nous jouons à ce jeu, nous pouvons maintenant voir que nous n'
avons aucune erreur. Et encore une fois, nous obtenons notre partie
bleue qui est transparente. Plutôt cool en effet, d'
accord, pour résumer, comme je l'ai dit, il faut s'assurer de
nommer les choses correctement. Vous pouvez utiliser Game
Dot Workspace Dot, quel que soit le nom du port auquel vous souhaitez faire référence. Assurez-vous que ceux-ci garantissent que le boîtier est
toujours correct. Ensuite, vous pouvez accéder
aux propriétés en faisant
votre part comme variable point. Ensuite, vous pouvez
accéder à toutes sortes de propriétés qui font partie
de cette partie particulière. Et vous pouvez
les modifier à l'aide d'un script, mais ce sera tout pour
cette conférence. J'espère que vous avez trouvé cela utile ,
ainsi que les alertes et la nouvelle À bientôt lors de
la prochaine conférence. Donc, oui.
17. (Roblox) types de scripts: Continuons avec
les bases
des obstacles Suivez le cours Roblox et dans cette conférence, nous
allons
examiner les différents
types de scripts. Nous l'avons donc déjà
vu lorsque nous
créons un nouveau script dans le service de script du
serveur.
Il est essentiellement fréquemment utilisé, par exemple , script et script de module. Il existe cependant
un autre type de script. Si nous tapons simplement ceci ici, vous verrez qu'
il existe également un script local. Malheureusement, le script normal n'
a apparemment pas d'info-bulle, mais le script local en a un. Vous pouvez donc voir qu'un script local est un script qui s'exécute sur le
client et non sur les serveurs. Les scripts du logo peuvent donc être placés sous les
éléments suivants. sac à dos d'un
joueur, le modèle de personnage du joueur, l'utilisation de l'interface graphique, le script du
joueur et le
premier service répliqué, le script du module, à droite, est un fragment de script
et il ne s'exécute que lorsque d'autres scripts utilisent
le Requires dessus. C'est donc une question intéressante. Et le script, eh bien, c'est
juste un script normal. Jusqu'à présent, nous avons utilisé des scripts
normaux dans le cadre du service de script
du serveur. Et cela a ensuite été exécuté à la fois sur le serveur
et sur le client. C'est l'idée générale. Maintenant, il y a certaines
choses que vous ne voulez que pour le
client. Ce sont principalement des choses qui sont essentiellement spécifiques au client. Alors peut-être des visuels, non ? Vous souhaitez peut-être ajouter
des visuels à un client en particulier. C'est à peu près quelque chose
que vous devriez faire avec le client. Scripts locaux ou scripts clients. Ils peuvent communiquer avec un serveur par le biais
d'événements distants. Mais il s'agit
plutôt d'un sujet intermédiaire et
avancé dont nous
ne parlerons pas pour le moment. Mais l'
idée générale est que oui, nous pouvons avoir des scripts locaux. Donc, si nous devions, encore
une fois, voir où nous pouvons l'ajouter, un sac
à dos, un modèle de personnage, un GYE, les scripts d'un joueur
reproduiront le premier service. Donc, ce que nous pouvons faire, c'est abord l'
ajouter à la
réplication. Vous pouvez même voir qu'il est
écrit « Hé, script local ». Et si nous faisions cela,
et que nous disions simplement « print, print, Hello, World »,
tout ira bien. Renommons cela et je dirais script local
O3 dans ce cas. Et puis, juste un
exemple de script local. Dans ce cas, nous allons simplement
imprimer Hello World, et nous allons
voir si nous jouons ce script, il sera affiché. Mais maintenant, et c'
est une chose cruciale. Nous avons maintenant un client ici. C'est donc ce que nous n'avions
pas auparavant, n'est-ce pas ? Nous obtenons maintenant une
sortie du client. Et c'est extrêmement important si nous devions simplement passer à la question du référencement ici et publier HelloWorld,
tout de même, juste pour
le plaisir de discuter
et de jouer à ce jeu. Vous allez voir que c'est maintenant sur le serveur. Vous
pouvez voir que vous y allez. HelloWorld est donc
sur le serveur depuis O2, faisant référence à la ligne
8 et l'autre, droite, à HelloWorld,
celui-ci provient
du client ou de trois scripts
locaux à écrire. Maintenant, vous pourriez dire,
quelle est la foutue
différence, n'est-ce pas ? Il ne se passe rien de fou. Eh bien, pour l'instant, c'
est mon client et je peux réellement passer au
serveur et au serveur. Le serveur
contrôle essentiellement tout, n'est-ce pas ? Donc, en théorie, le serveur ,
je pourrais juste dire : Hé,
tu sais quoi, non, je vais déplacer mon gars ici et je
vais juste le déplacer. Maintenant, vous pouvez vous déplacer selon
les règles de mouvement normales. Mais si vous deviez essayer de changer
de position par rapport au client, cela ne
fonctionnerait pas, car ce
serait là que les produits
anti-triche entreraient en jeu. La séparation client-serveur
est donc très importante. C'est donc essentiellement
l'idée générale entre en jeu
avec un script local. Et comme je l'ai dit, vous pouvez
communiquer avec le serveur, mais c'est quelque chose pour
un niveau intermédiaire. Et puis un script de module est
un peu plus compliqué. Nous allons donc simplement
créer un script de module (module test
O3) ici. Dans ce cas,
appelons cela un témoignage.
Et voilà. Donc, dans le script du module,
l'idée générale est mettre des fonctions ou certaines fonctions,
essentiellement, que vous
allez utiliser
de nombreuses fois, n'est-ce pas ? Donc, différents multiplicateurs,
différentes fonctions bonus, certains calculs que
vous pourriez utiliser. plupart du temps,
vous pouvez créer
une nouvelle fonction. Et le moyen de le
faire est de prendre cette table ici. Je vais dire module. C'est donc le nom de
la table qui fait la somme. Ce sera donc le nom de
la méthode et ensuite
ce que nous voulons. Donc, en gros, nous
allons simplement créer
à
nouveau une méthode de somme et nous allons renvoyer ce cas, pas répéter, nous allons
renvoyer x plus y. Donc, encore une fois, ce n'
est qu'un exemple. Écrivez une méthode de somme. Vous ne créeriez pas vraiment de script de module
personnalisé pour cela, mais juste pour que vous voyiez, d'accord, voici comment
créer une méthode dans
un script de module, puis y faire
référence plus tard. Donc, si nous l'
avons, nous pouvons maintenant intégrer le script du serveur, les serveurs recréer un script
normal et nous appellerons cela 03 modules de test Dash. Pourquoi pas ? C'est bon. Et voilà. Et ce que nous
allons faire, c'est que nous devons maintenant connecter
d'une manière ou d'une autre
ce script
de module à ce script particulier. La façon de le faire est d' utiliser la
méthode require ici, mais nous voulons en
fait créer une variable locale. Appelons donc
cela la sommation. Bien sûr, et cela correspond
à la méthode requise. Ensuite, nous devons
référencer le script du module. Il s'agit donc du service de script Game Dot
Server,
puis du module de test .o3
exactement comme ça. Et puis il le
représentera comme ceci parce que nous pouvons commencer la référence d' un point par un nombre,
mais c'est très bien. On peut l'utiliser comme
ça, c'est bon. Ensuite, nous pouvons dire :
imprimons ceci. Imprimons donc le point de
sommation et vous pouvez voir qu'il nous
dit même, hé, somme, nous pouvons utiliser cette touche Tab
pour compléter automatiquement et nous
pouvons dire 50,23 chemises. Pourquoi pas ? Ce serait donc 73 que nous sommes en train d'imprimer ici. Alors jouons. Et nous allons
voir que le serveur imprime 73 ici même. C'est vraiment génial. Et bien sûr,
encore une fois, ce n'est qu'un exemple. L'idée ici est que vous savez, si vous en avez certains, si vous avez certains
chiffres, n'est-ce pas ? Vous pourriez donc ajouter des choses comme, vous savez, vous pourriez
ajouter différentes tables. Vous pourriez ajouter qu'il y a
peut-être une expérience, un multiplicateur
d'expérience ou
quelque chose comme ça, n'est-ce pas ? Ensuite, vous pourriez simplement ajouter une nouvelle table et vous aurez l'impression, vous savez, c'est peut-être facile, d'acquérir
plus d'expérience, n'est-ce pas ? Alors tu obtiens environ 25 points. Plus expérimenté, plus
moyen, vous
vivrez une expérience normale. Et puis plus dur,
tu auras peut-être moins d'expérience. Encore une fois, ce n'est qu'un exemple de ce que
vous pourriez utiliser ici. Maintenant, celle-ci ne serait pas seulement
disponible dans le module, c'est extrêmement
important car c'est
maintenant une
variable locale, n'est-ce pas ? Jetons juste un coup d'œil. Si nous devions imprimer la sommation R, nous
essaierions de l'utiliser. Nous ne serions pas en mesure de le faire. Nous n'en utilisons que quelques-uns ici,
ce qui est intéressant. Maintenant, si nous n'agissions pas au
niveau local, que se passerait-il maintenant ? Pensez-vous que nous serons
désormais en mesure de l'utiliser ? Eh bien, jetons un
coup d'œil, d'accord, somme que nous ne
sommes toujours pas en mesure de l'utiliser, car pour l'utiliser, nous devrons utiliser le module point. Et maintenant, tout à
coup, il est en quelque sorte ajouté à cette table
en particulier. Et maintenant, si nous y allons,
tout à coup,
nous avons le
multiplicateur d'expérience à notre disposition qui est vraiment génial
et qui peut,
en gros , être
tellement logique, n'est-ce pas ? Vous pouvez stocker toutes sortes de
choses au lieu de modules, des scripts que vous
allez utiliser dans,
enfin, dans tous les différents scripts. Peut-être un nom de
joueur spécial ou peut-être certaines choses pour se connecter à certains
services plus tard. C'est donc un script de module
extrêmement, extrêmement utile pour
beaucoup de choses. Et juste pour
vous montrer, vous pouvez voir expérience de
sommation, le support
multiplicateur. Si vous deviez l'imprimer, nous en obtiendrions un
ou ici, car c'est exactement le support que
nous avons défini ici. Maintenant, c'est
vraiment génial. En résumé, il existe trois types de scripts différents
qui sont des scripts locaux qui
s'exécutent uniquement sur le client. Ensuite, il existe des scripts
normaux qui peuvent s'exécuter à la fois sur le
serveur et sur le client, et ils sont en quelque sorte automatiquement
synchrones. Et puis il y a aussi des modules, des scripts qui sont utilisés
pour stocker des variables ou des fonctions que vous
pourrez utiliser n'importe où
dans votre code. Et cela
vous aide essentiellement à ne pas vous répéter. Quoi qu'il en soit, j'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose nouveau et je vous verrai tous
lors de la prochaine conférence. Donc, oui.
18. Vue d'ensemble des propriétés (Roblox): Continuons avec la
partie débutant du cours sur les barrages routiers. Et dans cette conférence,
nous allons examiner les propriétés. Nous allons donc
approfondir les propriétés. Agrandissons donc cette
fenêtre et prenons
notre part la plus cool et jetons un coup d'œil à toutes les propriétés complètement
différentes dont nous disposons. La première est donc la couleur de la
brique en général, la couleur de la brique et la couleur, ou presque la même chose. Donc, si nous choisissons une couleur de
brique différente ici, disons un bleu foncé, vous pouvez voir que la
couleur change ici. Et l'idée générale du
bricolage, c'est
que ce sont des couleurs
prédéfinies faciles à utiliser. Bien que la couleur puisse être
littéralement n'importe quelle couleur, n'est-ce pas ? Si je choisis une couleur au
hasard ici, elle n'aura
pas de nom. Vous pouvez donc voir que cela dit que
c'est du brun, du vert jaunâtre. Donc ça va se
rapprocher de celui-ci, mais ce n'est pas exactement
cette couleur, non ? Vous pouvez donc voir que
celui-ci n'est que de l'amour. Et puis je ne sais pas si
celui-ci est de l'olivine, mais si je devais modifier un peu les
chiffres, non, son
apparence ne
changera pas trop, n'est-ce pas ? Peut-être que ça
va faire deux ici. Et puis ce
sera un violet sable. Mais vous pouvez voir que c'est... ce n'est pas exactement là. C'est un peu comme
Where's the sand, violet. Je n'en ai aucune idée. Je ne le trouve pas. Quoi qu'il en soit, c'est l'idée
générale, non ? Vous pouvez donc mettre un numéro ici. Ce serait donc un sort, non ? Quelque chose comme ça.
Maintenant, c'est du noir métallisé, mais ce n'est pas vraiment une mentalité
noire. Vous pouvez voir cette
couleur et cette couleur, elles ne sont pas identiques. C'est donc l'
idée générale de la couleur de la brique et de la couleur
utilisée pour projeter des ombres qui devrait être
assez claire. À l'heure actuelle, elle projette une ombre
et maintenant ce n'est plus le cas. C'est à
peu près tout ce qu'il
y a à voir, le matériau. Vous pouvez donc choisir différents
types de matériaux. Certains matériaux ont donc
certaines propriétés. Vous pouvez donc choisir du métal
, par exemple , qui sera un
peu réfléchissant la lumière. Vous pouvez donc voir que cela
ressemble beaucoup à du métal maintenant . Le plastique n'
allait tout simplement rien être. Donc, si nous choisissons le verre, c'est vrai, il n'est pas translucide à 100 % car bien sûr, la
transparence n'est pas au rendez-vous. Mais si nous devions le rendre transparent,
ce serait comme si un verre Shine n serait également
transparent. C'est plutôt cool. Il existe donc un tas de matériaux différents
que vous pouvez choisir. Le plastique est un produit normal qui n'a aucune texture
réelle, n'est-ce pas ? Donc, en ce qui concerne la
variante matérielle, dans ce cas, nous n'avons aucune
variance matérielle et je
ne sais même pas lequel
des matériaux en possède une. Nous pouvons aller voir le responsable du
matériel ici et nous pouvons examiner tous les matériaux
qui existent ici. Champ de force, par exemple, nous pouvons
choisir le champ de force. Voici à quoi ressemblerait
le champ de force. Ensuite, nous pouvons entrer
ici et choisir le champ de force,
par exemple le champ de force. Et maintenant, c'est un champ de force. Vous pouvez donc voir que c'est très
transparent de tous les côtés. C'est donc intéressant en effet. Et il y a plein
d'autres choses. Nous avons du métal ici, différents types de métaux, des plaques
diamantées, des pièces corrodées. Le metal, c'est vraiment génial de
pouvoir le faire avec certains de
ces trucs, n'est-ce pas ? Si nous choisissons de corroder le métal, par exemple s'ils peuvent voir la
couleur ici, cela change ce qui change dans la
texture elle-même, n'est-ce pas ? Maintenant, vous pouvez voir
que la couleur ici est comme la couleur de base. Si nous devions choisir ce rouge, tout d'un
coup, il deviendrait rouge, vert, des trucs comme ça. C'est donc vraiment cool ce que
vous pouvez aimer changer ici, et c'est vraiment génial. Je recommande donc vivement
de jouer un peu avec cette et de se faire une idée
de cette brique est également très cool et vous obtiendrez une texture de brique
juste au-dessus. Très impressionnant en effet,
réflectance rouge et transparence. Nous en avons déjà
parlé, n'est-ce pas ? La réflectance rend essentiellement la chose réelle plus réfléchie. Vous pouvez maintenant voir que
cela dépend du matériau, car
maintenant,
le matériau de la brique ne peut pas
être reflété. Si nous devions
revenir au plastique, qui peut être essentiellement
tout ce que vous voulez, nous pouvons le
refléter comme vous le souhaitez. 100 % le serait littéralement, il réfléchit toute la lumière. Alors maintenant il y a un, maintenant c'est un miroir, non ? Et cela
reflète parfaitement cela. Mais comme notre script donne transparence de 0,5,
nous ne le voulons pas. Et maintenant, nous avons de nouveau un miroir. Vous pouvez maintenant voir qu'il ne reflète
pas le joueur. Ce sera beaucoup trop intensif pour une grande partie du traitement. Mais c'est l'idée générale de la réflectance
puis de la transparence. Nous l'avons
déjà vu, en gros, à quel point cette
étape est
transparente. Donc, l'archivage est un
élément très important à propos de toutes
les différentes propriétés. Et c'est en fait
très important. Vous pouvez passer la souris dessus et
cela vous donnera une brève description de ce que fait
cette chose en particulier. Donc, vous pouvez voir les archives, en
gros,
c'est comme si cela allait être enregistré ici ? Ensuite, nous avons un nom de
classe qui est généralement
verrouillé car dans
ce cas, il s'agit d'un port. Nous pouvons également le verrouiller. Ensuite, si nous fabriquons ce verrou, nous pourrons à
nouveau le déplacer. Donc, si nous le verrouillons
et que maintenant
je ne peux même plus
essayer de le sélectionner. Maintenant, je peux revenir
ici et le déverrouiller, et maintenant je peux le sélectionner
à nouveau, je peux le déplacer à nouveau. C'est très intéressant.
En effet, le nom ici et le nom du parent devraient être
assez explicites. Et puis ceux-ci ne sont
généralement pas modifiables. Cependant, la taille est variable, alors peut-être voulons-nous l'augmenter, peut-être en faire 758, peut-être
quelque chose qui ne l'est pas trop. Vous y voilà. Donc c'est plutôt cool. Vous pouvez donc voir qu'il est maintenant dimensionné et que nous pouvons également
modifier la position. Ainsi, lorsque nous modifions la position, vous pouvez voir la position
à la fois sur l'origine et
sur le cadre C. Vous pouvez donc également le faire
manuellement. Je pourrais donc refaire -25,20, et vous pouvez voir maintenant que ça a bougé
et c'est plutôt cool. Maintenant, le
point d'origine est en gros, vous pouvez le survoler, n'est-ce pas ? Il contient les
informations de la position et la matrice de la rotation. Vous pouvez le modifier et
vous pouvez le lire. L'origine, si vous y avez
déjà pensé,
c' est essentiellement là que
cela tourne. Donc, l'idée générale
est que si je le fais pivoter,
il tourne autour
d'un certain point l'espace et vous
pouvez le voir pointer, il tourne exactement
au milieu de cette partie en particulier, n'est-ce pas ? Cependant, si je devais changer
la position de l'origine, prenons simplement le contrôle Z pour remettre la rotation à zéro, si je devais la changer en 000 ici même, n'est-ce pas ? Maintenant, le truc vient avec. Ce
n'est pas ce que nous voulons. Nous voulons compenser
le pivot, n'est-ce pas ? Alors maintenant, si nous
devions décaler le pivot de 20 moins cinq et de -20, c'est ce
que nous
voulons compenser. Tout d'un coup, le
pivot se situe à des zéros, des zéros. Vous pouvez donc voir maintenant la position est 00 car
nous avons décalé le pivot. Et si je devais effectuer une rotation, nous tournerions maintenant autour de
cette position particulière. Maintenant, nous tournons autour de cela. Donc c'est plutôt cool en fait, parce que ce que vous pouvez faire, c'
est le compenser. Et si vous
voulez, par exemple , avoir une
plate-forme rotative, ils peuvent simplement
modifier la rotation
ici et maintenant vous avez tout à coup
une plate-forme rotative. Tu peux devenir fou
comme les distances. Mais oui, c'est
vraiment cool et ça peut être utilisé pour plein de choses
différentes. Dans ce cas, peut
entrer en collision et peut toucher devraient être assez
explicites, n'est-ce pas ? Il s'agit simplement de savoir si
une interaction physique peut
se produire ici ou non , qu'elle peut toucher. En gros, si l'
événement Touched est appelé
ici, vous pouvez également définir
différents
groupes de collisions . Un ancrage signifie
qu'il ne l'est pas, c' est-à-dire qu'il n'est pas affecté par la gravité. Donc, si nous devions l'avoir, allons-y et mettons-le en l' air et il ne soit pas ancré. Si nous jouons, il va
tomber par terre. Nous pouvons donc réellement le voir. Vous pouvez donc voir qu'il est
maintenant au sol, même si nous
l'avons mis en l'air. Et si nous devions l'
ancrer à droite, si nous descendons
ici et que nous l'ancrons,
cela signifierait qu'
il restera à position particulière et
ne sera pas affecté par la gravité. Vous pouvez donc voir maintenant
qu'il est dans l'air. Plutôt cool, non ? Des propriétés physiques personnalisées,
sans masse, des choses comme ça. D'habitude, je recommande de
rester un peu à l'
écart , car cela vous permettra de vous
lancer dans des choses folles, non ? Les
propriétés physiques personnalisées que vous pouvez voir vous permettent de modifier le frottement, l'élasticité, la densité. Il y a donc des choses intéressantes
que vous pouvez faire avec. Mais c'est certainement
un peu plus pour les utilisateurs intermédiaires et
avancés, non ? Et pour le reste, je ne voudrais pas m'en mêler pour le moment. Cependant, vous pouvez toujours passer la souris sur des objets et
regarder ce que signifient essentiellement les différentes
propriétés. Et maintenant, il s'agit, bien entendu, de propriétés spécifiques à une pièce en fonction de ce que
vous créez ici. Si nous cliquons, créez
une texture ou une vache en D, un taux de dialogue ou
une invite de proximité. Toutes ces
choses insensées auront
toutes des propriétés
différentes. Cependant, vous devez penser, simplement réaliser qu'une
propriété n'est
rien d'autre qu'une variable ou un attribut attaché
à un certain objet. Dans ce cas, ça ne devrait pas
vraiment être fou. Mais si vous avez une
propriété, c'est quelque chose comme le taux d'apparition, par exemple, peut également s'agir d'une
propriété personnalisée. Et puis vous pourriez vous dire, oh, que c'est probablement un chiffre qui
a un certain rapport entre les A et le taux
d'apparition d'une certaine chose, n'est-ce pas ? Voici donc l'
aperçu des propriétés qui peut être vraiment utile et vraiment cool pour jouer un peu
avec ça. Ensuite, vous verrez qu' il y a beaucoup de choses que vous pouvez faire avec les propriétés et
même les propriétés personnalisées Nous verrons plus tard pour résumer chacun de vos objets
existants possède des propriétés. Certaines d'entre elles sont des propriétés que toutes les choses
ont en commun. Par exemple, s'il s'agit d'un objet
plutôt que d'un espace 3D, il a toujours un
cadre en C, une origine, signification et une taille. Il s'agit donc essentiellement de la
transformation indiquant la position réelle de
l'objet dans l'espace 3D. Et il y a d'autres
facteurs, comme les collisions, objets qui
descendent d'une pièce peuvent également être ancrés sans masse,
etc. Il existe donc un tas de
propriétés. Je recommande vivement de jouer
un peu avec ce port, en ajoutant
simplement un nouveau port, jouant avec certaines des propriétés qui existent ici. Et vous pouvez même ajouter vos propres attributs pour le moment. Nous n'allons pas nous
aventurer là-dedans pour l'instant. Mais il suffit de dire qu'
avec les propriétés, vous pouvez faire beaucoup
de choses intéressantes. Très bien, ce sera tout
pour cette conférence,
ou nous l' avons trouvée utile
et avons appris quelque chose de nouveau. Je vous verrai tous lors de la
prochaine conférence. Donc, oui.
19. (Roblox) Vector3 et position: Très bien, Bienvenue au cours Roblox les bases du cours Roblox. Et dans cette conférence, nous
allons parler des vecteurs et de la modification de la
position d'une pièce. Nous avons donc déjà parlé du
référencement des pièces. Nous avons parlé de modules, de
scripts et
de propriétés. Et maintenant, modifions correctement
ces propriétés
à l'intérieur d'un script. Faisons donc un nouveau
script ici. Il a besoin d'un service de script serveur. Disons que c'est 05 positions de tiret. Et ensuite, voyons voir. Nous allons donc appeler cela le
vecteur trois et les positions. Commentez ici et nous
parlerons
ensuite de ce que c'est. Alors, tout d'abord,
faisons notre part. Donc, mon rôle
ici sera égal
à l'espace de travail du jeu, ce qui est cool. Nous l'avons donc vu précédemment
dans la conférence de référencement. Cela ne devrait donc pas
être fou. Maintenant, nous pouvons faire ma part et maintenant nous pouvons
modifier, ce que je veux dire peu près toutes
les différentes propriétés
qui s'y trouvent, y compris certaines choses qui ressemblent à un éclair. Et nous avons même ces trucs bizarres ,
comme des classeurs. Pour le moment,
nous n'
utiliserons que les cubes bleus et, par exemple la position que vous pouvez voir
est de type vecteur trois, et cela décrit la position de cette partie à l'intérieur
du monde. Actuellement, si nous le faisons
simplement et
que nous l'imprimons juste
pour les besoins de l'argumentation. Imprimons simplement ceci. Nous devrions obtenir un vecteur
égal à -21,8 et ainsi suite jusqu'à
0,4, 99,1, 17,93. C'est donc essentiellement
cette position. Et si je le modifiais, rien ne changerait dans la sortie, car nous
ne sortons qu'une seule fois. Donc, si je prends le poste
ici et que je fais 50, 50, 50, comme si la
position réelle changeait. Alors maintenant c'est là-bas. Mais cela ne mettrait pas à jour la sortie, car
même si
elle était déjà sortie et que nous ne la publions qu'une seule sortie et que nous ne la publions qu'une seule fois, c'est assez juste. Et si nous devions changer
cette position, n'est-ce pas ? Et si nous sortions
la position et que
nous disions ensuite par partie
cette position, puis que nous voulions la modifier. Comment pouvons-nous changer cela ? Eh bien, nous changeons
cela en lui donnant un nouveau vecteur trois, n'est-ce pas ? Nous voulons donc dire menu
vectoriel à trois points. Et puis ici, nous avons
mis un nombre X, un nombre et un numéro Z. Maintenant, l'
important ici est qu' un vecteur trois, écrive un vecteur. Vous l'avez peut-être déjà connu
en mathématiques. Peut-être que vous avez connu cela
en mathématiques en général. C'est très facile à comprendre. Ce que vous
avez probablement déjà vu, c'est qu' il
faut faire quelque chose comme ça. Vous avez probablement déjà vu
une grille
bidimensionnelle avec un axe Y
et un axe X, n'est-ce pas ? Et sur ce point, vous pouvez décrire chaque point
avec deux chiffres. Maintenant, c'est la même chose
dans trois directions, mais dans une autre
direction, non ? Donc, cette position, comme
nous l'avons déjà vu, est de la rendre
un peu plus agréable. 2015 et -17 pour les
besoins de la discussion, non ? Maintenant, c'est ici
et nous pouvons maintenant changer cette position en
lui donnant simplement des coordonnées différentes. Disons donc qu'au lieu de -21, nous allons avoir,
refaisons 50, 50, 50. Et cela est maintenant
ancré dans les pièces, donc il va
rester en l'air. Donc, ce à quoi nous nous attendrions à
trouver, c'est que les sorties -20 ,
15, -17, puis nous allons changer
la position en 50, 50, 50. Ainsi, lorsque nous
chargeons le jeu, même si
les anciens numéros apparaissent, sont désormais remplacés
par 50, 50, 50. Et nous pouvons le confirmer, nous sommes juste en train de
descendre et nous pouvons voir la position est 50, 50, 50. C'est très intéressant en effet, mais
nous ne pouvons que changer cela. Nous pouvons bien sûr changer, je veux dire, à peu près tout cela. Nous pouvons même modifier la rotation, qui est également un vecteur trois. Maintenant, il y a des choses
intéressantes concernant la rotation dans l'espace
tridimensionnel. Pour le moment, nous
allons juste faire le
vecteur ici. Donc, par exemple, nous pourrions
faire 4500, disons, et maintenant,
dans la direction X,
nous devrions effectuer une rotation de 45 degrés. Jetons donc un coup d'
œil et nous pouvons voir, si nous y jetons un coup d'œil,
vous pouvez voir qu'il est maintenant pivoté d'environ 45 degrés. Et si nous y
jetons un coup d'œil, vous pouvez également voir que
l'orientation actuelle n'
est pas tout à fait 45,
mais à peu près 45. Il y a parfois
des problèmes d'arrondissement. Gardez donc à l'esprit que l'arrondissement
peut parfois être un peu étrange, en particulier avec
ces vecteurs car de nombreux calculs
doivent être effectués. Ils arrondissent donc parfois vers le bas ou
vers le haut d'une manière un
peu étrange. Nous pouvons également faire quelque
chose de très intéressant c'
est-à-dire peut-être
déplacer le rôle, n'est-ce pas ? Alors peut-être voulons-nous vraiment
dire : Tu sais quoi ? Je veux vraiment que la
situation change. Je voudrais donc prendre
la position qui me convient et je
voulais simplement peut-être poursuivre
quelques études plus loin. Supposons donc que vous créiez un
nouveau vecteur ici. Nous ne voulons pas déplacer l'axe X. Nous voulons le déplacer peut-être de
25 points vers le bas sur l'axe Z. Et peut-être voulons-nous
faire un plus cinq sur l'axe Z.
En fait, pas un plus de cinq ans,
juste un délai de 5 ans. Vous pouvez voir que tout cela fonctionne
parce que si vous faites un
vecteur, un vecteur moins un vecteur, tout fonctionne parfaitement bien. Donc, si nous jouons simplement à cela,
nous allons maintenant voir que le cube s'est déplacé
là où il s'est déplacé. Eh bien, ça vaut le coup,
c'est juste là. Et si nous
regardons ce micro séparément, il se trouve maintenant en 50, 75, 45. Maintenant tu te dis
que c'est un peu bizarre. Oui, c'est un peu bizarre.
Comment est-ce arrivé ? Eh bien, nous avons soustrait
ce vecteur, non ? Donc, on prend 50 moins
zéro, ça fait 50. C'est assez juste. Nous avons fait 50 moins -25. Oh, eh bien moins, moins, c'est un plus,
ce qui signifie qu'il y a un 75. Et puis ici, nous en avons
soustrait cinq. C'est donc
une question intéressante où, si nous
soustrayons quelque chose, nous ne
voulons pas vraiment de
nombres négatifs ici. Et puis, si nous
devions le réexécuter, vous pouvez
maintenant voir que chacun se trouvera
plus bas et le tour est joué. C'est donc maintenant beaucoup plus bas. Et maintenant, nos calculs
fonctionnent parfaitement. C'est donc l'idée générale du calcul
des vecteurs, n'est-ce pas ? Donc, en gros, c'est
toujours le premier élément taux
négatif ou positif,
par exemple, qui fonctionnera. C'est ce que nous
ferions si nous gardions le point négatif, ce sera le premier élément. Les nouveaux éléments
seront 50 moins zéro. Et puis le
second serait 50 -25, puis le dernier
serait 50 moins cinq. C'est l'
idée générale. Que se passerait-il si nous disions Vous savez quoi, chronométrez ça ». Est-ce que ça va fonctionner ?
Eh bien, faisons juste 22.2 ici. Et voyons ce qui se passe. Il n'y a donc pas d'erreur. Et si nous y jetons un coup d'œil, c'
est maintenant très, très loin. Et si vous regardez ça, vous pouvez en voir 150, 90. C'est donc exactement ce à quoi nous nous
attendrions ici. C'est la même idée, non ? Au lieu de faire un moins, nous faisons maintenant deux fois plus. Et puis nous le faisons essentiellement
pour chacun d'entre eux, n'est-ce pas ? Nous faisons donc ceci,
puis nous le faisons. Maintenant, c'est en fait
45 et c'était 25. Et c'est pourquoi nous obtenons 150,90
comme pièces ici. Très intéressant, en effet. Maintenant, il y a quelques
autres choses intéressantes, à savoir, par exemple si nous voulons agrandir
quelque chose, n'est-ce pas ? Nous avons donc la taille ici. Nous pouvons, par exemple, faire une
fois égale
, puis l'augmenter de 50 %. ce cas, cela va simplement multiplier ou dimensionner
les nombres par 1,5. Donc, si nous le regardons à nouveau, vous pouvez voir qu'il est
maintenant plus grand maintenant qu'il n'en a plus vraiment l'
air tant que ça. Mais si nous allons ici et voyons que la taille est maintenant de
10,57 points 5,12. Et si nous ne courons pas, la taille n'est que de 75,8. Mais ce ne sont
là que quelques
exemples de modification de la position, la rotation, de la taille. C'est
déjà vraiment cool, non ? En résumé, la position ou la rotation est représentée
par un vecteur. Et un vecteur est simplement composé de
trois nombres ici, ayant une valeur x et y
et une valeur z. Et vous pouvez les modifier avec
les opérations normales, n'est-ce pas ? Multiplier, soustraire
tout ce travail. Donc c'est plutôt cool
et tu le fais comme ça. Eh bien, c'est tout pour cette
conférence. J'espère que vous avez trouvé cela utile et
que vous apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
20. (Roblox) la fonction d'attente: Très bien, poursuivons les bases de la robotique ici
pour un cours robuste. Dans cette conférence, nous
allons
parler de la fonction du poids. La fonction de pondération est donc une
chose extrêmement importante que vous rencontrerez à de nombreuses
reprises dans les scripts et Roblox. Et créons simplement un
nouveau script ici, appelons-le 06 dash waiting. Et nous appellerons cela la fonction de poids parce qu' il s'agit de la fonction de poids. Disons que j'ai une boucle à quatre voies. Je suis parti de zéro, je passe à
dix et j'augmente de un. Allons-y. Et
disons que j'imprime le numéro. Donc, si nous le faisions,
il imprimerait les chiffres, n'est-ce pas ? Immédiatement. Vous pouvez voir zéro
jusqu'à dix en l'espace de,
je veux dire, littéralement
presque tous,
même en un seul clic,
en quelques je veux dire, littéralement
presque tous, même en un seul clic, millisecondes. C'est comme ça que c'était rapide. Mais disons non,
non, non, non. Je veux que ça s'
imprime à chaque seconde. Eh bien, nous allons simplement utiliser la fonction de
poids ici. Je vais en passer un. Donc, ce qu'il fait réellement c'
est qu'il renvoie
le thread
actuel jusqu'à ce que le
temps spécifié soit écoulé en secondes. Maintenant, il
est très important que cela puisse avoir,
disons, des conséquences
négatives s'il y a beaucoup de
scripts en cours. La fonction de poids
n'est donc pas une
solution miracle, vous devez
l'utiliser partout. Il existe également d'autres moyens d' attendre que
les choses se passent. Ce n'est donc
pas la solution miracle. Mais dans ce cas, si
nous exécutions ce 012 et que vous pouvez voir
qu'il continue. Ça me permet de courir
partout, tout va bien. Et ça continue
exactement 1 s après l'autre et nous y assistons et maintenant
le poids est terminé. C'est donc plutôt cool. C'est cool pour certaines choses comme pour compter
des choses, des trucs comme ça. C'est vraiment génial. Voici un exemple de cas où la fonction de pondération
peut être très utile. Parfois, cela
peut aussi être important si vous importez certaines choses et parfois vous vous dites « Je vais juste attendre
un peu et vous pouvez continuer à
exécuter quelque chose ». Mais comme je
l'ai dit, en
fait, cela donne essentiellement
le fil de discussion actuel. Il s'agit d'un
langage informatique de haut
niveau qui consiste essentiellement à
dire qu'il arrête en
quelque sorte
tout ce qu'il
fait dans le cadre de ce type
de charge de travail particulier , puis le
poursuit une fois que les
secondes se sont écoulées. Il y a donc des choses
qui, lorsque vous
l'utilisez , peuvent endommager
certaines choses de votre jeu. Soyez donc prudent et n'
utilisez pas vos poids partout. On se dit : « Oh,
ça ne marche pas ». Faisons juste
une attente, ce n' est généralement pas
ce que vous voulez faire. Je tiens simplement à le souligner
une fois de plus. Ce que je vais commenter sur
l'impression, c'est à peu près tout ce qu' il y a à voir avec
la fonction de pondération. Il n'y a vraiment
rien à résumer. Il n'attend que
quelques secondes et vous ne devriez pas l'utiliser
partout dans vos scripts. Il y aura quelques exemples de domaines dans lesquels nous allons l'utiliser, qui
seront intéressants. Et puis il y a quelques
exemples où nous pourrions l'utiliser, mais nous voudrions peut-être
utiliser autre chose. Eh bien, ce sera tout pour
cette conférence, ou nous l'avons trouvée utile et
vous apprendrez quelque chose de nouveau et je vous verrai tous
lors de la prochaine conférence.
21. Mouvement de base de pièces (Roblox): Très bien, bienvenue
aux bases de la robotique ici pour le cours Roblox. Et dans cette conférence,
nous allons voir comment déplacer une pièce. Donc ça va être vraiment très
intéressant. Donc, pour cela, dans le service de
scripts du serveur, encore une fois, en créant un nouveau script,
nous l'appellerons 07, et nous appellerons ce mouvement. Cela va donc essentiellement
prendre en compte certaines des choses
que nous avons apprises jusqu'à présent. Bien sûr, pour se séparer, il existe
de nombreuses façons de le faire. D'ailleurs, il ne s'agit que d'
un exemple que nous pouvons utiliser avec les
connaissances actuelles que nous avons. Il existe donc différentes manières mieux
déplacer des pièces, mais il est possible de le
faire de cette façon. Je tiens donc à souligner que ce n'est pas la seule solution et que ce n'est
peut-être pas la bonne méthode pour tout
ce que vous voulez faire. Mais nous allons juste y
jeter un œil. Donc, en gros,
passons à notre partie cool. Orgue, disons local, mon rôle. Et nous dirons que c'est la partie la plus cool
de l'espace de travail du jeu. Et voilà. Ensuite,
nous allons créer une boucle en quatre. Encore une fois, nous allons
commencer par une heure. Nous allons ensuite passer à,
disons, 15 et nous
augmenterons d'un. Et ce que nous allons ensuite faire, c'est qu'à l'intérieur de cette boucle, nous
indiquerons ma part, cette position
sera maintenant égale à ma part, cette position. Donc, la position réelle qui
est à plus un nouveau vecteur. Ils
seront donc nouveaux au vecteur 3. Ensuite, nous allons simplement dire,
faisons IO ici, 0.0. Nous définissons donc la
position actuelle sur elle-même plus I. Nous commençons
donc par une. Et puis, si nous devions
le faire et commencer,
nous obtiendrions simplement la position
plus 15 parce que c'est tout. Mais si nous attendions maintenant une seconde entre les deux,
que se passerait-il alors ? Eh bien, jetons un coup d'œil. Arrêtons ça. Et si nous trouvons ensuite notre
rôle et que nous courons vers lui, vous pouvez voir, oh, regardez ça. Il se déplace d'une étape à seconde parce qu'il
attend 1 s, puis augmente, puis attend 1 s en augmentant, en
attendant 1 s et augmentant jusqu'à ce
qu'il atteigne sa destination
finale, soit plus 15 dans la direction X. Et
nous pouvons le constater. Maintenant, sa position est de 220, donc elle aurait dû être 205
auparavant à cause de toutes les recrues, de
ce que nous avons fait auparavant avec les scripts. C'est donc l'idée générale. Dans ce cas, vous pouvez donc utiliser la
fonction d'attente pour retarder
le réglage de la position
et ainsi donner l'
impression qu'elle
fait réellement quelque chose. Donc, vous pouvez également le faire, vous pouvez aussi le
faire, peut-être 50,
puis peut-être en
ajouter un peu moins. Alors peut-être un
quart de seconde. Et si vous
regardiez cela maintenant,
cela vous paraîtrait beaucoup plus lisse. Donc, si nous regardons cela, vous pouvez voir maintenant que ce
n'est pas fluide,
mais que c'est un
mouvement presque fluide, n'est-ce pas ? Et nous pourrions le
faire encore plus facilement. Maintenant, je dois l'augmenter car, bien sûr,
cela ira
plus vite si je l'augmente ou
si je diminue le temps d'attente. Et si je le
regardais comme ça, maintenant, vous pouvez voir que c'est
presque fluide. Donc, pour résumer, bien que ce soit une façon possible de le faire, nous verrons également d'
autres méthodes dans les
prochaines conférences. C'est parce qu'il
y a certaines choses que nous devons aborder
avant de le faire réellement. Parce qu'il y a
encore quelques éléments intéressants qui doivent être ajoutés à votre boîte
à outils, pour ainsi dire. Mais pour le moment,
c'était tout pour cette conférence. J'espère que vous avez trouvé cela utile et que vous avez appris
quelque chose de nouveau. Je vous verrai tous lors de la
prochaine conférence. Donc, oui.
22. (Roblox) l'événement touché: Très bien,
revenez aux
bases de Roblox ici pour
ce cours approfondi. Et dans cette conférence,
nous allons
parler de l'événement Touched. Nous avons maintenant vu beaucoup
de choses que nous pouvons modifier dans le code
et dans les scripts. Cependant, nous n'en sommes
pas vraiment arrivés à une étape où nous
pouvons réellement saisir quelque chose
ou faire bouger les
choses alors que
cela est sur le point de changer Créons un nouveau script ici dans le service de script
du serveur. Nous allons appeler
ce 08 événement touché. Et cela va
vraiment être très intéressant. L'
événement Touched est donc un événement, comme son nom l'indique. Et les événements sont essentiellement des choses qui se produisent. Ce sont des événements qui peuvent déclencher l'exécution
de certaines fonctions. Dans le cas de Touched, l'événement
est essentiellement appelé chaque fois qu'une pièce
touche une autre pièce. Donc, juste pour les
besoins de l'argumentation,
débarrassons-nous de tous mes changements de
positionnement ici. Parce que nous
ne voulons vraiment pas ces deux-là. Eh bien, nous ne
voudrons plus que cela affecte la partie centrale R ici. Alors jouons à ça et notre rôle cool devrait rester
là où il est. Eh bien, ça va dézoomer, mais c'est plutôt drôle. Donc, à cause
du mouvement ici. Débarrassons-nous donc également de
notre mouvement. Et maintenant, nous devrions
avoir une table rase. Donc, pour l'événement Touched, tout d'
abord, nous allons
à nouveau jouer notre rôle. Donc,
encore une fois, mon rôle est l'espace de travail du jeu. Et puis ce qui est cool dans
cette affaire, c'est que vous y êtes. Et puis il y
aura des événements bouleversants. Nous allons donc dire mon point et ensuite nous pourrons dire touché. Et vous pouvez voir
que c'est un éclair. Donc, un éclair, c'est un événement. Vous pouvez donc voir que
cela se déclenche lorsqu' une pièce entre en contact avec
une autre pièce. Très cool. Vous pouvez également jeter un œil à tous les autres
éclairs. Il existe également une
modification, une droite,
déclenchée immédiatement après la modification d'une
propriété d'un objet. Il peut être intéressant de noter
que nous souhaitons cela détruise
des incendies juste avant qu'une instance ne soit détruite. D'accord, la fin du toucher, c'est lorsque vous arrêtez de toucher une autre partie,
et ainsi de suite. Nous voulons maintenant utiliser l'événement
Touched ici. Ensuite, nous voulons
faire deux points et ensuite nous connecter. C'est très intéressant. Vous pouvez donc également faire d'
autres choses. Vous pouvez également le faire une fois, cela appellera
alors quelque chose une fois. Celui-ci relie une fonction à un événement, en disant essentiellement : « Hé, cet
événement en particulier est appelé, alors nous voulons réellement
appeler cette fonction où il y a également un poids
qui attend quelque chose ». Et puis ici, connecter en parallèle
est encore plus compliqué, en
gros, une fois et connecter
sont les choses intéressantes. Supposons que l'on soit juste ici, à l'intérieur de cette fonction
particulière,
la fonction ones, nous pouvons
mettre une autre fonction, n'est-ce pas ? Ensuite, nous disons autre partie, et nous allons simplement
créer cette fonction
au lieu de celle-ci. Vous pouvez donc voir que c'est
la fonction ici, et ce sont les
parenthèses fermantes de la fonction once. Ensuite, nous pouvons simplement dire imprimer, puis nous pouvons dire,
par exemple, autre partie, n'est-ce pas ? Donc, ce qui se passe ici, c'est que cette autre partie est
celle qui a touché la mienne. Donc, si nous devions simplement jouer
ce jeu en particulier,
que se passerait-il ? Plaque de base, vous
pourriez être comme quoi ? Eh bien, regardez ça. La micropièce touche la plaque
de base, n'est-ce pas ? Et si je devais sauter
ici, rien ne se passerait. Pourquoi ça ? Eh bien,
parce qu'une fois signifie une fois, cela arrive une fois. Puis j'ai dit, cependant, si nous devions
connecter cela, n'est-ce pas, si nous devions dire connecter,
que se passerait-il maintenant ? Eh bien, jouons à ça et
vous verrez qu'elle va spammer la plaque de base
jusqu'à ce qu'elle ne recouvre plus la
plaque de base. OK, intéressant,
que se
passerait-il si je passais maintenant à autre chose ? Eh bien, allons-y. Et vous pouvez voir une partie de la racine
humanoïde, pied
gauche, le pied droit. Et aussi les questions :
pourquoi ça s'arrête ? Eh bien, l'
événement Touched, en gros, vous devez commencer à toucher et ne pas aimer toucher continuellement. C'est quelque chose d'un
peu différent. Mais vous pouvez voir que maintenant
, si je le déplace,
cela ressemble à différentes
parties de mon corps. Parce que si nous prenons en compte le nombre d'espaces de
travail et Joe, je suis en fait représentée par une multitude de pièces différentes,
comme de minuscules pièces. Le pied gauche,
la main gauche, etc. Et pas comme tout mon
corps, pour ainsi dire. OK, donc c'est
très intéressant. Mais maintenant, nous pouvons réellement
faire bouger les choses en touchant un objet spécifique. Nous pourrions donc, par exemple,
dans la
micropièce, l'
ancrer de manière à ce qu'elle
reste en l'air. Alors maintenant, il flotte. Il ne touchera
donc jamais le sol. Ensuite, nous
pouvons faire tout ce que nous voulons. Nous pouvons imprimer quelque chose. Nous pouvons le laisser commencer à bouger. Nous pouvons projeter le joueur
dans le ciel. Je veux dire, il y a toutes sortes de choses à cause de cette
autre partie, non ? Nous avons toujours
accès à ce qui nous a touché. Par conséquent, nous devrions avoir accès
au joueur d'une manière ou d'une autre
ou au personnage, n'est-ce pas ? Nous pouvons donc également
en faire quelque chose. Dans
le cadre de nos objectifs, la seule chose que nous allons faire est de réduire la
transparence de l'objet. Nous allons donc simplement dire que
nous allons rendre la
transparence égale à une. Donc, nous allons rendre la
transparence égale à une. Donc gros, elle changera 2,5 de toute façon, puis nous la changerons en une une une fois que cela
touchera réellement quelque chose. Donc, dès que j'ai sauté sur cet objet ou que je l'ai simplement brossé,
il disparaîtra parce que la
transparence en sera une. Voilà, vous y voilà. C'est parti. Maintenant, bien sûr, ce
n'est pas fini, non ? Elle est toujours là,
mais elle est invisible. C'est donc plutôt
cool que vous puissiez modifier certaines
propriétés maintenant,
vous savez, au fur et à mesure que quelque chose se
passe dans le jeu. Désormais, nous ne nous
contentons plus de modifier les propriétés, nous réagissons
à ce qui se passe
dans un jeu. Et maintenant, juste parce que c'est
une chose très amusante à faire, ce que nous allons faire,
c'est utiliser ce que
nous avons jusqu'à présent. Je vais créer une
propriété booléenne qui se déplace ici. Et je vais vous demander, eh bien,
si déplacer est égal à faux, alors je veux vraiment
faire ce qui suit. J'ai ensuite voulu,
tout d'abord, concrétiser le fait de bouger. Ensuite, je veux faire
une boucle ici. I est égal à un, puis
nous en ferons dix et nous en ferons un, puis nous ferons. Et ce que nous allons faire ici,
c'est attendre une
seconde. Ensuite, je
tiens à exprimer ma position. Ensuite, je veux
modifier sa position. Nous allons donc simplement
opter pour plus égal. Disons que plus est égal,
puis disons simplement menu
vectoriel à trois points,
puis juste un zéros, des zéros. Donc, encore une fois, nous
allons simplement le déplacer dans la direction X d'
un n à la fin. Une fois cette
boucle for terminée, nous voulons dire que le
déplacement est égal à faux ,
sinon nous
ne pourrons jamais la
réinitialiser fondamentalement. Et puis ça va
, ça ne
marchera pas, en gros, selon l'idée générale, mais ça, d'accord,
si nous le faisons, maintenant, quand, une fois que nous aurons
touché la pièce, elle commencera à se déplacer
dans la direction X, dix blocs pendant 10 s, puis elle s'arrêtera et nous
pourrons la déplacer
à nouveau. Alors voyons voir pour les
besoins de la discussion, non ? Rien ne devrait donc bien
se passer. Je l'ai touché après 1 s. Vous pouvez voir maintenant
qu'il commence à bouger. Maintenant, je ne sais pas ce qui
va se passer une fois qu'il sera arrivé ici, sur ce spawn pad. En fait, je suis plutôt calme. Oh,
que va-t-il se passer ? Et ça va s'arrêter. Elle est maintenant arrêtée.
Je peux le toucher à nouveau et il continuera
de bouger. Comme tu peux le voir. C'est clair, n'est-ce pas ? Parce que c'est refait. Et si je le touche
à nouveau au bout d'une seconde, vous pouvez le voir en continu. Donc c'est
vraiment très cool. C'est une chose formidable qui fonctionne
essentiellement ici.
Dans ce cas, c'est en fait un exemple de la façon dont vous pouvez réagir à quelque chose qui se passe
au lieu du monde. Pour résumer, un événement est
associé à un certain objet. Et si cet objet, si cet événement est déclenché, en fonction de ce qui se passe, vous pouvez réellement y
connecter une fonction, et vous pouvez appeler cette fonction chaque fois que
cet événement particulier est détecté. Dans le cas de l'événement
Touched, par exemple, cela vous permet désormais répondre à ce que
le joueur est susceptible de faire, insérer le monde et d'en
faire certaines choses. Eh bien, ce sera tout pour
cette conférence. J'espère que vous avez trouvé cela
utile et que vous
apprendrez quelque chose de nouveau
. Je vous verrai tous lors de la prochaine
conférence. Alors oui.
23. (Roblox) Créer des instances à partir de Scripts: Très bien, reprenons
les bases des obstacles ici pour le cours Roblox. Et dans cette conférence,
nous allons voir comment créer de nouvelles pièces. Alors, que signifie la création
de nouvelles pièces ? Eh bien, nous allons faire
apparaître des cœurs par le biais de scripts. Donc, tout d'abord, sur les serveurs de scripts
du serveur, nous allons créer un nouveau script
et l'appeler 09 Dash Spawning. Que diriez-vous de ça ? Et nous
appellerons cela des objets d'apparition. Vous y voilà. Et ce que nous allons faire,
c'est créer un nouvel objet. Nous allons donc simplement créer de nouvelles pièces. Et faisons-le d'abord dans le script lui-même. Ensuite, nous allons le faire
au toucher dans un petit moment. Alors, comment
créerait-on un nouveau port ? Eh bien, créons simplement une pièce
locale et appelons-la nouvelle partie. Et ce sera une
nouvelle pièce,
comment la créerons-nous ? Nous allons parler d'exemple, et vous pouvez voir que cela nous le
suggère déjà. Nous pouvons le compléter automatiquement en
appuyant sur la touche Tab new. Et puis à l'intérieur, nous
devons trouver le nom de la classe. Nous devons donc saisir le nom de la
classe sous forme de chaîne
dès que je commence
à taper entre guillemets, vous pouvez voir que nous pouvons
en fait choisir un grand nombre de
classes différentes qui existent ici. Nous pouvons donc ajouter un nouveau contrôleur
d'air, un nouveau vecteur à trois valeurs, nouveau script de module
si nous le souhaitons. Mais dans notre cas, nous
voulons un nouveau cœur. Dans ce cas, nous
allons simplement choisir une nouvelle pièce. Et que se
passerait-il si je le faisais ? Jouons et
voyons ce qui se passe. Et ce que vous allez découvrir, c'est que, eh bien, rien ne se passe vraiment. Voyons voir. Il n'y en a pas, il
n'y a pas de nouvelles pièces. Rien ne s'est donc vraiment passé
parce que cette pièce, dans ce cas, n'a en quelque sorte
été créée nulle part. Nous pouvons donc modifier les
propriétés de cette pièce. Nous pouvons donc dire, par exemple, que le nom est égal à une nouvelle partie ici, n'est-ce pas ? Maintenant, nous lui avons donné un nouveau nom et nous pouvons même
changer de position, n'est-ce pas ? Nous pouvons dire que la position
est maintenant un vecteur trois nouveau et disons 0150 ou
quelque chose comme ça. Et nous voulons aussi l'ancrer, n'est-ce pas ? Nous allons donc simplement
fabriquer cette ancre. Et maintenant, en théorie, si
tout va bien, nous devrions le voir
planer à peu près au-dessus du point d'apparition. Et tu ne peux rien voir. Et si nous regardons dans l'espace de travail, vous pouvez également voir que mon
nouveau rôle
n'
en fait pas partie, car nous devons également définir
les parents. C'est extrêmement important. parentalité est donc
littéralement l'idée si vous
regardez l'explorateur ici, mais le script de référencement ou référencement et
tous mes autres scripts. Les serveurs de scripts du
serveur en sont le parent. Vous voyez donc que c'
est la relation. Vous pouvez également voir le
parent ici. Et si nous entrons dans l'espace de travail, vous pouvez voir la micropartie, ce parent est l'espace de travail. Et si vous entrez dans
la plaque de base, si vous allez un peu plus bas, la texture ici, ce
parent est la plaque de base. Quelles plaques de base ? Le parent est l'espace de travail. C'est l'
idée générale. Cela ne
devrait vraiment pas prêter
à confusion. Il vous montre simplement la structure hiérarchique de l'explorateur, et c'
est à peu près tout. Et maintenant, si nous disons nouvelle partie, parent est égal à l'espace de travail
Game Dot, tout à coup, nous le
définissons comme espace de travail. Et maintenant, voyons si nous pouvons
réellement voir notre nouvelle pièce. Et ce que vous allez découvrir
tout à coup, voilà
notre nouvelle pièce. Si nous entrons dans l'espace de travail, nous voyons un nouveau port, exactement le même nom que celui que
nous lui avons donné ici. Et nous l'avons
entièrement créé grâce à un script. Et en général, c'est toujours l'ordre que vous souhaitez prendre. Donc, en gros, vous voulez
créer le nouvel objet, puis vous voulez définir certaines
des variables ici, n'est-ce pas ? Nous allons donc
modifier les propriétés. Et puis c'est
toujours important. Nous voulons définir le
parent, n'est-ce pas ? Et c'est une chose
très, très importante que nous
voulons confier au parent. Sinon, il ne
sera pas affiché du tout. Et si nous faisions
quelque chose d'intéressant, n'est-ce pas ? Et si nous devions simplement participer à
l'événement Touched, n'est-ce pas ? Nous faisons donc la
même chose ici, mais au lieu de bouger, cela fera quelque
chose de différent. Donc, ce que
nous allons faire, c'est simplement
copier ceci et je vais simplement le commenter
parce que, dans ce cas,
je ne veux pas que l'objet soit connecté
à autre chose. Nous allons le faire
lors de la ponte. Nous allons donc juste faire
apparaître un objet. Et puis nous
allons dire, eh bien, vous savez ce que nous devons
faire, au lieu de bouger, cela fera
apparaître quelque chose. Donc, en ce qui concerne l'événement Touched, alors que nous abordions
mon côté cool, je souhaite maintenant créer de nouveaux
ports. Nous sommes donc en train de créer
un Newport local et nous pouvons faire presque la même
chose que celui-ci, n'est-ce pas ? Nous pouvons simplement dire :
« Hé, à Newport », et appelons ça, appelons ça un autre Newport. Et mettons un 015. Téléphonons et en fait,
j'aimerais quelque chose comme 20 et dans ce cas, je ne le ferai
pas ancrer. Et ensuite,
remontons ça un peu, repoussons ça un peu. 525, d'accord ? Ensuite, nous devons encore le relier
à l'espace de travail. Et nous allons également ajouter une petite fonction
de pondération ici, disons une demi-seconde, sinon nous serons inondés de
nouvelles pièces, avec un
peu de retard. Mais maintenant, tant que je
reste
sur mon côté cool, d'
accord, ça va faire entrer de nouvelles pièces de
Swan. Voyons donc que cela fonctionne mais
je suis presque
sûr que ce sera le cas. Une fois de plus, nous avons le
rôle que nous avions auparavant. Et si nous devions sauter dessus,
vous pourriez voir, tout d'un
coup, qu'ils peuvent voir. Et maintenant, vous vous demandez peut-être :
Attends, pourquoi en a-t-il
engendré autant ? Nous l'avons spécifiquement conçu pour que la fonction de poids soit prise en compte. Donc, si je devais
juste m'en tenir là, mais pour que vous puissiez voir que cela
ne gâche rien. Et si je me
déplaçais et que
vous voyiez que cela fonctionne. Et la raison, bien sûr,
est que l'événement Touched, dans ce cas, est en fait
appelé pour chaque partie, n'est-ce pas ? Donc, en gros, nous disons
que peu importe la partie qui touche
notre micropartie ici. Pour chacune d'entre elles, nous créons une nouvelle pièce. Et nous avons déjà vu
que le joueur est composé de très petites pièces
différentes. Par conséquent, cela va être qualifié de temps insensé. Donc, pour résumer rapidement, lorsque nous créons une nouvelle pièce, dans ce cas, nous pouvons créer point nouveau et important
dans ce cas. Ou nous pouvons aussi faire apparaître
presque n'importe quoi d'autre. Nous pouvons créer une multitude de
types de classes,
c'est ainsi qu'elles sont appelées. En gros, ils
disent simplement, d'accord, de
quel type de pièce ou d'objet s'agit-il ? Dans notre cas, nous voulons juste faire port et il y en a
d'autres, n'est-ce pas ? Le lieu d'apparition en tant que classe à
part entière, des choses comme ça. Nous pourrions donc également
créer ces choses. Dans notre cas, nous ne faisons que en tenir aux
pièces pour le moment. Nous pouvons ensuite modifier
les propriétés. Ensuite, il est très important
de définir le parent de la nouvelle partie que nous venons
de créer dans l'espace de travail Game Dot, sinon elle ne s'affichera pas. Et à la fin,
nous avons vu que nous pouvons également relier cela à
l'événement Touched, ce qui est vraiment génial. Alors maintenant, nous créons des choses alors que nous
interagissons réellement avec le monde. C'est plutôt cool, mais ce
sera tout pour cette
conférence. J'espère que vous l'avez trouvé utile et déodorant et que le
nouveau, je vous verrai tous lors de la prochaine
conférence. Donc, oui.
24. (Roblox) Click Detector: Très bien, continuons
avec le Robo Space X,
suivons le cours des règles
et dans cette conférence, nous allons
parler de la détection des clics. Qu'est-ce que cela pourrait être ? Eh bien, nous allons créer un nouveau script dans le service de script du serveur. Et nous appellerons cela la détection
des dix clics et tirets. Et ça va
être très intéressant. Alors, la détection des clics,
qu'est-ce que cela signifie ? Eh bien, vous avez probablement joué un ou deux jeux où vous avez
pu cliquer sur quelque chose. Et c'est exactement ce que
nous allons faire également. Nous allons donc simplement créer une
nouvelle pièce dans l'espace de travail. Tout d'abord, créons
une nouvelle pièce ici, prenons cette pièce et
agrandissons-la un peu, juste pour savoir qu'il
s'agit d'une pièce différente. Faisons en sorte que ce soit 55,5. Et voilà. Ensuite, nous allons également
colorier un peu différemment. Allons-y.
Le bleu est plutôt joli, mais rendons-le un
peu plus bleu. Oui, voilà. Nous l'
ancrons également pour qu'il continue de flotter dans les airs comme
ça et je suis vraiment
d'accord avec ça. Nous avons donc maintenant un port flottant et nous allons le renommer
Clicker. Et ce dont cette partie a besoin c'
est qu'elle
a réellement besoin d'un sous-objet. Nous allons donc cliquer
sur ce plus ici. Et vous pouvez même voir
si le détecteur de
clics fréquemment utilisé est exactement
ce que nous devons ajouter à cela. Et votre détecteur de clics n'
a que deux choses, à savoir la distance
d'activation maximale. Nous en reparlerons
dans un instant. Mais maintenant, nous avons un
détecteur de clics à ce sujet. Ce que nous voulons faire, c'est
réellement obtenir cela en tant que variable. Passons donc au détecteur de clics,
et il s'agit d'une variable. Et maintenant, nous allons passer
à Game Dot, Workspace Dot. Ensuite, nous devons essayer
de trouver le clicker. Nous allons donc utiliser
la partie clicker. Et puis, comme
le détecteur clics est un objet enfant
du clicker, nous pouvons en fait obtenir le
détecteur de clics, comme vous pouvez le voir. Génial. Nous avons donc maintenant le
détecteur de clics ici, et cela fait référence à ce détecteur de clip
en particulier. Et maintenant, nous pouvons simplement
créer une nouvelle fonction. Créons donc une
nouvelle fonction en cliquant. Et nous allons également ajouter le lecteur parce que
c'est en fait ce que nous allons obtenir pour
la fonction, n'est-ce pas ? Lorsque vous cliquez sur quelque chose,
nous allons en fait
obtenir le joueur
qui clique dessus. Alors tout d'abord,
imprimons simplement ce lecteur. Cliquez sur Moi, puis
imprimez le lecteur, c'est tout ce que
nous allons faire. Et comment connecter tout cela ? Eh bien, encore une fois, dans
ce cas, le
détecteur de clics comporte certains
événements, n'est-ce pas ? Nous en avons donc, et nous
en avons même pas mal. Détruire, ce
sont donc des événements normaux, mais il y a aussi l'événement du clic de la souris
et du survol de la souris, du départ de la souris et de
l'événement du clic droit. Et puis, je crois que ce sont
les principaux. Et c'est vraiment génial. En fait. Nous allons à
nouveau utiliser l'événement
MouseClicked en utilisant connect here. Ensuite, nous pouvons simplement
y mettre la méthode
OnClick sans
les parenthèses. Nous voulons donc simplement transmettre
cela comme ça. Et puis, lorsque nous cliquons dessus, nous allons réellement
exécuter cette fonction. C'est la même idée que nous avons déjà vue dans l'
événement Touched, où nous avons connecté une fonction
en ligne ici. Nous venons de créer la
fonction ici même. Mais dans ce cas, nous avons déjà créé la fonction, puis
nous l'y ajoutons. C'est la même idée. Maintenant, si c'est le cas, jouons et quand
nous y irons réellement. Donc, la première chose que
vous pourrez voir, c'est que lorsque je passe dessus
avec ma souris, vous pouvez voir qu'elle se
transforme en main parce que, eh bien, elle est maintenant cliquable. Si je clique avec le bouton gauche de la souris, vous pouvez voir que ce
joueur a cliqué sur la caméra. Alors maintenant, tout à coup,
le serveur se dit :
« Oui, le joueur clique sur ce détecteur de clips
en particulier ». C'est donc vraiment génial,
car tout d'un coup, nous pouvons interagir avec le jeu à un
tout autre niveau. Dans ce cas, il existe
en fait une deuxième façon de procéder. C'est-à-dire que vous pouvez ajouter un
script au clicker lui-même. Vous pouvez donc appeler cela
le script Clickers, disons, d'accord. Et puis prenons la même chose que celle que
nous avons ici. Et ajoutons simplement ceci
au script ici. C'est donc maintenant le détecteur de
clics, mais nous pouvons réellement faire quelque chose différent. On peut dire script. Cela place notre script
dans notre hiérarchie. Et je vais dire parent. Ensuite, nous allons
parler de détecteur de clics parce que dans ce script, c'est vrai, nous allons accéder au parent
qui est le clicker, puis nous allons
cliquer sur la texture. Cela fonctionnera également. Donc, si je devais simplement,
disons, commenter
cela parce que c'est un peu mieux si nous le faisons. Nous y voilà. Cela est donc
commenté, puis nous avons le script du clicker en tant qu'
enfant du clicker. Et nous pouvons également le faire. Et voyons voir, en théorie,
cela devrait toujours fonctionner. Et si nous allons ici, vous pouvez voir que nous obtenons toujours ce résultat, ce qui peut
parfois être meilleur. Donc, avant, bien sûr, nous avons
tout mis dans le service de script
du serveur. Il serait donc
logique d'avoir
le script sous
notre partie clicker. Parce que peut-être si nous
devions le dupliquer, et que nous en aurions un
deuxième ici. Maintenant, celui-ci fonctionne également sans que j'aie
à faire quoi que ce soit. Il existe maintenant deux
scripts différents, et bien sûr, le problème
se pose
maintenant :
vous devez savoir quel script
est lequel et tout cela. Mais peu importe ça
, c'est plutôt cool. Vous pouvez également avoir ce script dessous de la partie réelle.
Ce n'est pas le principal. Bien entendu, l'essentiel est
la détection des clics elle-même, qui est une autre façon d'interagir avec le monde maintenant et nous pouvons désormais utiliser ce que vous avez
appris jusqu'à présent, n'est-ce pas ? Déplacez des objets, envoyez
la position et vous pouvez rendre quelque chose
cliquable et vous pouvez changer de position, par exemple à droite. Donc, juste pour les
besoins de l'argumentation, j'ai créé
ici quelque chose qui pourrait être
assez intéressant. Donc, si je joue à ça et
allons-y, et je te le montrerai. Donc, si je vais ici, c'est vrai, nous avons ce
cube rouge en haut. Et si je clique sur celui-ci, le cube
rouge passe au-dessus. Et si je clique sur
celui de gauche, il recule. Donc, en gros, c'est juste un moyen de
changer la position de ce
cube particulier. C'est une chose plutôt cool. Maintenant, je ne
vais pas montrer le code. Le code sera
disponible afin que vous
puissiez le télécharger et
vous pouvez télécharger le fichier Excel contenant cette
pièce mobile particulière. Ce que je dirais, c'est
que, tout d'abord, essayez de le créer vous-même. Et si tu peux le faire, ce
serait absolument incroyable. Si vous êtes bloqué, vous pouvez toujours y
jeter un œil. Il s'agit essentiellement de deux cliqueurs ici, sur le clicker gauche
et le clicker droit. Et il s'agit de deux scripts. Cependant, les scripts sont
littéralement exactement les mêmes. Il existe donc peut-être un
moyen de le condenser en un seul script pour
le moment, essayant
simplement de voir
si vous pouvez
trouver comment le créer. Parce que ce
serait déjà une bonne façon de consolider certaines des choses
que nous avons
apprises jusqu'à présent. En résumé, le détecteur de
clics est un outil vraiment utile que vous pouvez utiliser pour
interagir davantage avec le
monde et Roblox. Et il peut vraiment être utilisé
pour n'importe quoi. Vous pouvez simplement créer une
nouvelle fonction qui est ensuite appelée lorsque le joueur
clique sur un détecteur de clics. Et ça peut faire tout ce
que tu veux, non ? Mais ce sera tout pour
cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
25. Forces d'application (Roblox): Très bien, continuons avec les bases de Roblox ici
pour le cours de robotique. Et dans cette conférence, nous
allons nous intéresser à la
force et à tout ce qui s'
y rapporte en gros. Donc, ce qu'une force
force force, c'est essentiellement ajouter une force à
une pièce particulière. Et nous allons simplement jeter un coup d'
œil à un exemple. Nous allons donc simplement ajouter une
nouvelle partie ici, et nous appellerons cela la
partie énergique pour les besoins
de la discussion. Et ce que nous voulons
faire pour ce rôle, eh bien, nous voulons le déplacer. Tout d'abord, nous
voulons cependant l'évaluer. Redimensionnons cela à nouveau à 444. Ensuite, nous pouvons ajouter un, eh bien, nous pouvons ajouter beaucoup de
choses, comme nous l'avons vu, mais si nous recherchons une force, vous pouvez voir un champ de force. Maintenant, nous ne
voulons pas réellement ajouter de champ de force. Nous voulons ajouter une force
linéaire ou une force vectorielle. Maintenant, c'est presque
la même chose. Il y a une légère différence, mais nous allons d'
abord examiner la force vectorielle, puis nous
examinerons la
force linéaire dans un instant. En
théorie, la force vectorielle pointe simplement vers un vecteur,
puis renvoie cette partie
vers un vecteur particulier. Cependant, nous avons besoin d'une pièce jointe. Vous pouvez donc voir que c'est une
pièce jointe qui est nécessaire. Et la force qui est
appliquée,
dans ce cas,
à 1 000 dans la direction X. Donc, tout d'un coup, ça
tournerait dans cette direction. Alors, mettons-le ici. Et si nous devions
simplement jouer à ça, vous pourrez voir
que, eh bien, rien ne se passe. Vous pouvez donc voir la partie ici
, rien ne se passe. Dans ce cas, changeons la couleur
en jaune. Et nous pourrons
voir qu'en théorie, il devrait tirer dans
cette direction. Cependant, ce n'est pas parce que
nous n'avons pas d'attachement. Donc, en fait, à
ce rapport de force, nous devons ajouter une pièce jointe. Vous pouvez voir que nous pouvons simplement
le rechercher et
ajouter une pièce jointe. Et maintenant, la pièce jointe fait
partie de cette pièce particulière. Maintenant, si nous devions déplacer la
pièce jointe, vous pouvez la voir. Très bien, maintenant cet attachement se trouve directement au milieu de tout cela, ce qui est généralement ce que
nous voulons réellement. Nous pouvons donc simplement dire attachement. Nous pouvons cliquer dessus, cliquer sur la pièce jointe et vous pouvez
voir qu'elle est maintenant jointe. Maintenant, si nous voulons nous assurer
que c'est la bonne, nous pouvons également renommer cette pièce jointe
puissante. Et si nous examinions
la force vectorielle, vous pouvez voir une fixation forcée des
pièces. OK, jouons à ça et
voyons ce qui se passe maintenant. Ce que vous verrez, c'est que
cela ne bouge toujours pas. Alors tu pourrais être du genre à
dire que c'est un peu bizarre, non ? Parce que nous pouvons le déplacer,
mais il ne bouge pas. Eh bien, le problème est qu'
il y a une friction entre cette pièce et la plaque de base à
cause, bien sûr
, du contact. Et vous pouvez l'imaginer
si vous avez un cube posé comme sur
une table pour le déplacer. Ça ne va pas être si mal. Mais si c'est comme une surface
caoutchouteuse, ce sera un
peu plus difficile car la friction varie. Donc, si nous devions
augmenter cette force à, disons quelque chose comme
3 500 ici dans ce cas. Je suis sûr que cela
devrait suffire pour qu'il commence
à se déplacer dans
la direction X. Et vous allez voir, ça y est. Et il zoome
fréquemment vers le ciel jusqu'à ce qu' il disparaisse, en gros. Donc c'est déjà plutôt cool. Essayons d'en faire 2 500. Peut-être que ça va
le ralentir un peu. Et peut-être qu'alors nous pourrons également
voir quelqu'un d'autre. 2 500, ce n'est apparemment pas suffisant
ici, comme vous pouvez le constater. Nous devons donc faire un
peu plus, mais c'est très bien. Faisons 3 000 et j'
espère que ce ne sera pas trop rapide. Ensuite, nous pouvons
réellement étendre cela. Nous pouvons y voir une partie puissante. Vous pouvez voir que la
vitesse est en fait quelque chose parce qu'elle se déplace
dans cette direction, n'est-ce pas ? Il s'agit en fait d'une
vitesse parce qu'une force est appliquée si je
devais l'augmenter. Disons que c'était 50. Maintenant, la pièce a disparu
parce qu'elle s'est
envolée du sol du ciel. Et si nous devions simplement le
redémarrer, entrer rapidement dans l'espace de travail et
modifier la force ici, disons 5 000, n'est-ce pas ? Tout à coup,
nous avons acquis une vitesse incroyable maintenant et
c'est beaucoup plus rapide. Maintenant, c'est une façon de
déplacer une pièce, non ? Avec force. C'est déjà très
intéressant. Pour avoir cela, il existe un
autre type de force. Nous pouvons aussi l'avoir, nous l'avons vu. Il existe une force du lion. La différence est
donc subtile. force vectorielle applique essentiellement une force dans une certaine direction. Dans ce cas, c'est
désormais la direction X qui le fait par rapport
à la pièce jointe. Vous pouvez également le faire par
rapport au monde. La différence ici est que
si nous devions la faire pivoter, alors pour l'instant, nous
utiliserons la direction X, qui est cette
structure ici même. Ce qui est très bien. Parce que l'
extraction du monde se fait cette façon et que la direction X de l'attachement l'
est également. Si nous devions faire pivoter
les pièces jointes. J'ai maintenant sélectionné
la pièce jointe et je la fais pivoter
de 90 degrés, n'est-ce pas ? Alors
vérifions-la. Rotation modale de 90 degrés. Je viens de vérifier cela. Et si je devais le
faire pivoter de 90 degrés, tout d'un coup, le x de l'accessoire se trouverait
dans cette direction. Maintenant, nous sommes
de plus en plus confus parce que, eh bien la force, d'accord, débarrassons-nous d'
abord de la ligne pendant un moment. La force vectorielle utilisée par
rapport à l'attachement. Nous allons donc maintenant zoomer
dans cette direction. Si vous êtes du genre, attendez, qu'est-ce
qui se passe ? Eh bien, jetons
un coup d'œil et vous
verrez qu'il ne zoome pas
dans cette direction, mais dans cette direction. Parce que la force est
appliquée localement, parce que nous avons des coordonnées
mondiales. Le monde dans cette direction
est donc x, cette direction est z, et la direction montante explique
pourquoi tout devrait être
plus ou moins fin. Mais vous avez aussi des instructions pour vos
propres pièces, n'est-ce pas ? Parce que si vous le faites pivoter, tout d'un coup, il est pivoté. Vous voyez, c'est maintenant x, c'est x, c'est z, c'est y. C'est très bien. Mais si nous devions le faire pivoter environ 90 degrés dans
la direction X, n'est-ce pas ? Tout à coup, y est maintenant différent parce que nous avons
modifié la rotation. Donc, si vous modifiez la
rotation de quelque chose, vous modifiez son système de
coordonnées local 3D c'
était assez fou, mais dans l'ensemble,
j'espère, assez
compréhensible qu'il existe une différence entre un système de
coordonnées local et le système de
coordonnées global. Et c'était la force vectorielle. Parlons également de
l'autre force. C'est la force de ligne. Désactivons simplement la force
vectorielle ici. Et la force de la ligne doit être
attachée, comme vous pouvez le voir. Donc, ce que nous pouvons faire, c'est simplement créer un nouveau port. Ce sera le,
celui-ci, juste ici, et
nous allons le rendre jaune, mais comme l'orange,
ça ira. Augmentons cela un tout petit peu. Quelque chose comme ça. Je suis vraiment d'accord avec. Et si c'était le cas, disons de le faire
pivoter légèrement et de le déplacer d'environ deux,
quelque chose comme ça. Ce que nous pourrions faire, c'est ajouter que ce
sera la partie de la ligne de force. Juste pour le démontrer, nous voulons y ajouter une autre
pièce jointe. Maintenant, cette pièce jointe, encore une fois, se trouve au milieu de tout cela. Nous pouvons déplacer la pièce jointe et vous devriez être en mesure de
voir si nous le faisons. Renommons-le également. Fixation par force linéaire. Nous pouvons maintenant déplacer cela également. Et vous pouvez voir que c'est un petit point ici que
vous serez C. Vous pouvez également le rendre visible qu'il soit toujours
visible même si nous ne l'avons pas sélectionné,
cela peut parfois être utile. Donc, si nous devions simplement déplacer
cette pièce comme en haut,
nous pouvons maintenant
prendre
la pièce d'attache forcée
et l'attacher à
l'autre attache, l'attachement à
la force de travail
tracer une ligne et ensuite
cet objet en particulier franchira nous pouvons maintenant
prendre pièce comme en haut,
nous pouvons maintenant
prendre
la pièce d'attache forcée
et l' attacher à
l'autre attache, l'attachement à la force de travail
tracer une ligne et ensuite cette ligne. Il va donc essentiellement
extraire la première pièce jointe ici. Donc, si nous passons à la force
linéaire,
c'est vrai, cela va tirer l'attache forcée
vers la fixation linéaire. Si nous activons une
force de réaction, c'est important. Et puis, encore une fois, l'ampleur n'
est que l'idée de la
rapidité avec laquelle elle évolue. Donc, si nous devions simplement exécuter ceci, voyons si cela donne
quelque chose. Tout le monde verra,
rien ne se passera mais 1 000, ce n'est
probablement pas assez élevé. Faisons juste 4 500,
quelque chose comme ça. Ce sera peut-être
suffisant dans ce cas. Et cela suffit en effet. Et vous pouvez voir qu'il
essaie d'en arriver là. Cependant, il ne peut en fait pas se lever à cause de la gravité
dans ce cas. Ce que nous pourrions faire,
c'est aussi augmenter
cette valeur afin de renforcer encore
la force linéaire. Nous pourrions donc faire
quelque chose comme 7 500, peut-être pas 75 000, c'est un peu 7 500,
peut-être quelque chose comme ça. Et nous pouvons voir si
cela fait quelque chose. Et maintenant, c'est comme s'il
avait renversé la pinna, ce qui est également assez drôle. Mais vous pouvez voir qu'en
gros, il s'agit de tracer une ligne
allant du milieu de ce cube
jusqu'à celui-ci. Donc, de l'
attachement fort à l'autre. Ce sont donc les deux
types de forces, dans ce cas, la
force vectorielle et la force d'alignement, toutes deux utilisées avec les attaches, qui sont également très intéressantes car vous pouvez faire beaucoup de choses avec l'attachement
, et nous verrons pas mal
de choses dans
les prochaines
conférences également. Donc, pour résumer,
il existe globalement deux types de forces, la force vectorielle
et la force linéaire. La force vectorielle
applique simplement une force dans une certaine direction vectorielle
pour une attache particulière, la direction vectorielle pouvant être relative à la
fixation elle-même. Il va donc
changer de direction en fonction de la rotation
de l'accessoire lui-même. Elle peut également être relative
au monde, ce qui signifie que les objets, leur orientation
ou leur rotation ne tiennent pas compte de
la direction dans laquelle la force est appliquée. Il existe également une force linéaire qui utilise en fait
deux accessoires. Il
applique donc essentiellement une force d' un attachement
à l'autre. Trace donc une ligne d'
une attache à l' autre, puis applique
une force sur cette ligne. Et ce sera tout
pour cette conférence ici même. J'espère que vous avez trouvé cela utile
et que vous apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
26. Contraintes (Roblox): Très bien, passons à
la section Roblox pour débutants ici pour le cours Roblox. Et dans cette conférence,
nous
allons examiner les contraintes. Les contraintes sont une
chose
très, très intéressante que vous pouvez à nouveau
ajouter à votre espace de travail, qui va restreindre
le mouvement de vos pièces. Maintenant, ce sera un aperçu très superficiel en
guise d'introduction, c'est-à-dire, cela peut être, je veux dire, cela pourrait avoir sa propre conférence théorique de
deux heures. Nous allons donc simplement
ajouter une nouvelle partie et nous allons simplement la créer,
disons, comme un orange un
peu plus foncé, peut-être un peu
plus foncé. Voilà. Et nous allons
simplement l'agrandir un peu et y ajouter
une pièce jointe. Ce sera donc la partie défectueuse, vidangée et cela
va comporter une contrainte. Tout d'abord, il y aura
une pièce jointe. En fait. Ce sera une arnaque, pièce jointe
diffusée juste pour
que nous sachions de quoi il s'agit. Ensuite, nous pouvons
effectuer une recherche
afin de pouvoir y
ajouter quelque chose et nous pouvons simplement rechercher une contrainte. Et vous pouvez voir qu'il y a
un tas de contraintes. Comme vous pouvez le voir clairement, le
balsa peut contraindre. Il y a une charnière cylindrique à
consentement, aucune collision, joue dans un système
prismatique, rigide, comme s'il y avait toutes sortes de
choses que vous pouvez avoir ici, et qui font des choses différentes. Par exemple, la contrainte de corde crée une corde entre
deux attaches. Donc, dans notre cas,
nous allons avoir la première pièce jointe
B, notre propre pièce jointe. Ensuite, voyons voir. Le deuxième attachement
est l'attachement à notre rôle puissant. Et puis vous pouvez voir que
tout d'un coup une corde se forme entre eux. Donc, si j'active
réellement la visibilité, vous pouvez voir qu'il s'agit
maintenant d'une corde qui est filée entre cet accessoire
et cet accessoire. Et la corde est vraiment cool. Vous pouvez donc avoir
différentes épaisseurs. Ce serait donc une corde très
épaisse. Remettons-le donc à 0,1. Vous pouvez bien sûr aussi en
changer la couleur, n'est-ce pas ? Donc, si vous souhaitez une couleur de
corde
différente ,
cela fonctionne également. Et puis il y a quelques points
intéressants savoir la
longueur, la restitution et
le treuil activé. Si nous activons le
treuil, nous pouvons utiliser
quelques attributs
supplémentaires. Mais voyons voir Faisons juste la longueur pour que
vous puissiez voir si j'
augmente la longueur,
dix c'est rien, mais si
j'en fais deux, Wendy, par exemple si j'en fais 50, allons-y. Bon, donc 20
ne suffisent pas,
mais 30, pas tout à fait 40. Et puis ça commence à
se relâcher ici parce que c'est plus long
que nécessaire, n'est-ce pas ? Donc, si je devais en faire 32, quelque chose comme ça,
c'est toujours enseigné. 35, c'est déjà en quelque sorte
en baisse. Vous pouvez donc le voir
parce que la corde a
une certaine longueur. Si je le déplace ensuite,
tu peux le voir. C'est vraiment le cas. Il
prend en compte la longueur de la corde
lorsqu'il l'affiche. Donc c'est vraiment,
vraiment cool, non ? Et que va-t-il se passer maintenant ? Disons que j'ancre cette
partie particulière ici. Cela signifie que ce type ne
bouge pas comme
vous le faites, bordel. Mais ce qui va
se passer, c'est que je vais
réactiver ma
force vectorielle ici. Le cube souhaite donc effectuer un zoom
arrière dans cette direction. Qu'est-ce que tu en penses ?
Que va-t-il se passer ? Jetons un coup d'œil et
voyons ce qui va se passer. Nous allons donc trouver
que le cube essaie de se déplacer
dans cette direction. Mais bien sûr, c'est
possible, car il est contraint par la contrainte de la
corde. C'est vraiment génial. Et tu peux faire des choses
intéressantes avec ça. C'est donc un exemple
de contrainte de corde. Comme s'il y avait tellement de contraintes comme vous l'avez clairement vu, n'est-ce pas ? Une autre contrainte intéressante est la contrainte de ressort. Voici celui-ci, et c'est un peu
difficile à utiliser,
mais une fois que vous l'avez compris, c'est vraiment cool. Tout d'abord, pour cela, je vais déplacer légèrement
la contrainte
vers le bas , simplement parce que c'est
juste pour qu'elle soit au même niveau
que l'autre. Ce serait donc, où est-ce ? C'est moins quatre. Donc, la position du mot
est en fait 1,5 dans le y et la
position mondiale est ici de deux. Alors ajoutons, faisons 12. Voilà. Et maintenant, il devrait être
au même niveau. Ensuite, nous pouvons réellement attacher cette pièce jointe
zéro est à nouveau la partie contrainte
et la pièce jointe 1 est le port de force. Vous pouvez voir qu'il y a
maintenant un ressort et nous pouvons modifier l'apparence ici
en ajoutant quelques bobines supplémentaires. On peut changer le
rayon ici pour rendre fou et l'épaisseur
pour quelque chose de vraiment épais. Encore une fois,
faisons en sorte que cela
soit toujours visible, juste pour que nous l'ayons
pour le moment. Et ce ne sont que des apparences. Cela ne change donc rien en ce qui
concerne les fonctionnalités. La fonctionnalité se fait
ensuite ici avec le ressort. La longueur actuelle est donc de 16. Disons donc que
les trois longueurs, c'est essentiellement la
longueur que vous souhaitez. Vous pouvez voir que c'est
en fait la longueur à laquelle le ressort
n'exerce aucune force de rigidité. Cela signifie qu'
il ne poussera plus
cet objet en particulier. Et c'est très bien. Si vous dites 16, alors si nous devions simplement exécuter
cela, rien ne se passera. De plus, il n'y a aucune rigidité, donc rien ne se passera de toute façon. Mais si nous devions régler
la rigidité à 1 000, disons que nous mettions l' amortissement à environ cinq,
quelque chose comme ça. Et jouons à ça. Oh, mais avant de commencer,
désactivons la force vectorielle, juste qu'elle est désactivée. Ensuite,
entrons ici et vous
pourrez le voir
quand j'y serai, n'est-ce pas ? Donc, pour l'instant, rien ne
se passerait si je
devais essayer de le mettre ici
et de le regarder, d'accord. Tout d'un coup, ça
rebondit, non ? Je peux donc déplacer ça. Vers le printemps. Et il
essaiera toujours d'obtenir la distance définie
dans la contrainte ici. Vous pouvez donc voir que la
distance actuelle est de 17. Je peux le réduire en poussant
simplement vers la droite. Et puis ça va s'
étendre à nouveau. Maintenant, la longueur
actuelle ne change pas. Cela ne
change probablement que sur le serveur, ce qui est
en fait assez intéressant. Voyons donc si
c'est effectivement le cas. Et vous pouvez voir que vous pouvez faire des choses assez
insensées ici. Mais oui, ça
change sur le serveur. C'est donc bon à savoir. Mais oui, c'est l'une de
ces choses que vous pouvez faire, des
choses vraiment intéressantes pour que cela fonctionne. Bien entendu, la
contrainte du ressort nécessite une rigidité suffisamment élevée et une certaine
longueur de trois longueurs, n'est-ce pas ? Donc, si nous devions diminuer
cette longueur libre, tout d'un coup, cela la réduirait parce
que, maintenant, la longueur libre est de
12 et nous allons essayer de
faire en sorte que la longueur actuelle
soit à peu près la longueur libre. Pas exactement, mais
autant que possible. Et parce que, dans ce cas, le
ressort ,
une
fois pour
maintenir un équilibre , il ne veut pas être trop long et il ne
veut pas non plus être trop court. Vous pouvez également activer les limites. Ce serait donc la longueur
maximale, non ? Vous pouvez donc, la longueur maximale
est inférieure à la longueur libre, cela n'a pas vraiment de sens. Vous pouvez donc dire quelque chose
comme 20 et une longueur minimale, vous pouvez dire quelque chose
comme cinq et vous ne
pouvez même pas vous en
rapprocher. Donc, si nous devions maintenant déplacer ça ici,
juste un peu plus. Voyons quelque chose comme
ça qui sera plus facile que si vous
essayiez d'en faire moins de cinq.
Faisons-en dix. Ce sera peut-être
un peu plus facile
et ça ne
marchera même pas. Vous pouvez donc voir,
je vois vraiment, que je ne peux même
plus aimer appuyer dessus parce que c'est la longueur minimale réelle. S'il est égal à zéro, il peut
être aussi court que vous le souhaitez. Donc, ce que je recommande vivement en ce qui
concerne les contraintes, en particulier la contrainte de
ressort, car cela peut parfois être le cas, il y a beaucoup de choses que
vous pouvez modifier ici. Je recommande vivement
de jouer un peu avec cela, tenant compte de certaines
autres contraintes. La contrainte de ligne est donc probablement l'une des
plus faciles à utiliser. La contrainte de ressort est un
peu plus compliquée, et certaines autres le
sont encore plus. Cependant, ils permettent presque toutes sortes de choses
basées sur la physique. Donc, en théorie, avec la contrainte du ressort et
d'autres contraintes,
les charnières et la
forme cylindrique qu'elle impose. Vous pouvez réellement
construire comme la physique, voitures
simulées et
des trucs comme ça. C'est en fait comme notre
simulation avec la physique réelle. C'
est fou que cela fonctionne, mais ça marche. Mais c'est quelque chose pour personnes très
avancées, non ? Comme si ce n'était rien
pour nous en ce moment, mais c'est plutôt cool. Je peux donc vous recommander vivement
de
jouer un peu avec certaines contraintes et de voir ce
que
vous trouvez, c'est toujours l'une des meilleures idées pour apprendre
comment tout cela fonctionne. En résumé, vous pouvez ajouter plusieurs contraintes à vos pièces, puis
ajouter deux pièces jointes. Et cela peut limiter la capacité
des pièces à se déplacer. Il existe de nombreux
types de contraintes. Nous avons vu la contrainte de corde et
de ressort comme deux exemples ici. Et encore une fois, nous allons mentionner que
je suggère vivement de jouer avec certains d'entre eux et vous pouvez espérer que nous pourrons également leur trouver des utilisations intéressantes. Mais ce sera tout pour
cette conférence. J'espère que vous avez trouvé cela utile
et que vous avez appris quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Alors oui.
27. Points de frayage (Roblox): Très bien, continuons avec
les bases des barrages routiers.
Suivez le cours de robotique et
dans cette courte conférence, nous parlerons de l'ajout de nouveaux lieux
d'apparition. Alors, bien sûr, ajouter
un nouveau lieu d'apparition. Rien de tel n'
est insensé, non ? Vous pouvez littéralement
le faire en accédant au modèle d'apparition et en créant un autre, ou vous pouvez dupliquer le spawn
déjà existant. Que se passe-t-il si vous en
avez deux
au même endroit ? Eh bien,
jouons. Et nous verrons évidemment
que j'apparaisse ici même. Donc, je fais apparaître les deux suivants
en cliquant sur Game over here. Arrêtons-nous et rejouons. Et voyons
où il est né maintenant. Maintenant, j'apparais également
à côté du jeu de clics. C'est donc plutôt cool. Et naissons de nouveau. Et espérons que les
forces du hasard sont de
mon côté , car maintenant je apparais pas à côté
du jeu de clics, mais à côté du printemps,
ce qui est plutôt cool. L'idée est donc que si vous avez plusieurs apparitions appartenant à la même équipe, ce qui se passera, c'est
que l'une
d'entre elles vous sera attribuée au hasard. Si vous sélectionnez l'un des lieux d'apparition et
que vous descendez complètement, vous pouvez voir qu'il existe un
élément appelé
changement autorisé au toucher,
ainsi que la couleur de l'équipe. Donc, pour cela, vous avez
réellement besoin d'équipes. Nous allons juste y
jeter un œil. Ainsi, dans notre Explorateur, nous pouvons en fait ajouter des équipes. Nous pouvons donc ajouter une équipe.
Nous allons juste appeler cette équipe rouge. Ensuite, nous ajouterons également
une autre équipe et ce
sera l'équipe bleue. Team Blue. Nous allons juste lui donner
une couleur bleutée. Et l'autre, on va lui
donner une couleur rougeâtre. C'est vraiment prêt, j'aime
ça, c'est plutôt cool. Et c'est à peu près
tout ce que vous devez faire. Nous pouvons activer ou
désactiver l'assignation automatique. Gardons-les
allumés pour les deux. Et si nous nous dirigeons maintenant vers le
petit site, n'est-ce pas ? Et si nous descendons, nous pouvons changer la couleur de l'équipe, vraiment du rouge, et nous pouvons dire : « Autorisez l'équipe à changer ». Ensuite, nous pouvons aller ici
et nous pouvons également dire ceci, et ce sera la bleue. Je pense que c'était
comme ça, bleu électrique. Je suis sûr que nous
avons nos deux équipes. Cependant, pour le moment,
les cuillères sont neutres, nous voulons qu'elles ne soient pas neutres. Ainsi, lorsque vous apparaissez
, certaines équipes
y sont associées. Alors allons-y. Donc, en ce moment, je suis dans l'équipe rouge
parce que j'apparais ici. Si je passe à l'autre spawn et que je touche l'autre travée, tout
d'un coup, je suis Tim Blue. Allons-y et je
pourrai rentrer dans l'équipe rouge. Et vous pouvez même voir que
vous changez d'équipe. Maintenant, ce n'est pas toujours
ce que vous voulez, n'est-ce pas ? Peut-être que
vous ne
voulez pas que les gens
changent d'équipe. Alors vous dites simplement : « Hé, vous ne pouvez pas autoriser le
changement d'équipe à apparaître sur nous. Cela fonctionne donc. Vous pouvez donc simplement le désactiver. Et ce qui
est important , c'est que si nous
devions le remplacer par, disons, vraiment bleu maintenant au lieu du bleu électrique, n'est-ce pas ? Mais si je l'active, la couleur de
l'équipe sera le bleu électrique,
mais le bleu de l'équipe aura
en fait la couleur de l'
équipe vraiment bleue. Que va-t-il se passer
maintenant ? Voyons voir, je vais rejoindre la petite équipe rouge. Et si je vais ici, cela changera l'équipe. Vous pouvez voir que cela me fait passer au neutre parce qu'il ne
trouve pas la couleur de l'équipe. C'est très important. Il s'agit donc d'un
élément important à ce sujet. Donc, en gros, si nous entrons ici, la couleur de l'équipe directement
sur le lieu d'apparition, doit être
exactement la même couleur d'équipe. Ce serait donc du bleu électrique. Et puis cela doit également
être bleu électrique. Les couleurs de ces équipes sont
essentiellement identiques. C'est aussi pourquoi vous pouvez avoir deux équipes de la même couleur. C'est en fait un élément très
important à ce sujet, mais c'est l'idée
générale d'ajouter des équipes et de nouveaux lieux d'apparition. Maintenant, ce que vous voudriez
faire, la bonne chose à faire
, c'est de créer toutes
ces équipes et ces quatre lieux
via un script. C'est également une bonne idée. Nous n'allons pas le faire
pour le moment. Je voulais juste
vous montrer en gros comment ajouter un autre lieu et aussi
comment examiner l'équipe. Ce sera donc tout pour
cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de
nouveau. Je vous verrai tous lors de la prochaine
conférence. Donc, oui.
28. Joueur (Roblox) vs personnage: Continuons avec
les bases de Roblox ici pour le cours sur les barrages routiers. Et dans cette conférence,
nous allons
parler de personnage contre joueur. Alors, qu'est-ce qu'un joueur et
qu'est-ce qu'un personnage ? Nous avons vu les
joueurs ici dans l'Explorer. Et si nous nous joignons, nous pouvons réellement constater qu'il y a quelque chose qui est
ajouté et qui est dénombrable. Voilà, je suis
ajouté en tant que joueur, mais si nous entrons dans l'espace de travail, je suis également ajouté dans l'espace de travail, ce qui
est très intéressant. Examinons cela du point de vue
du serveur. Ainsi, sur le serveur,
nous pouvons voir que le joueur
passe également et que nous avons également
le kilomètre modal. Ils peuvent donc voir que c'est un modèle, alors qu'
ici c'est un joueur. Alors, quelle est la différence
entre le joueur ici
et le modèle
ou le personnage, par
exemple, ce qui fait chacune
de ces choses ? Donc, le joueur contient réellement
quelles données de joueur, n'est-ce pas ? Ce sera donc quelque chose qui me
sera propre dans mon nom d'utilisateur,
j' ai une équipe, n'est-ce pas ? C'est donc spécifique
à mon joueur. Alors que le personnage
ou le modèle
n'est ici que la représentation
physique, n'est-ce pas ? Donc ça va être, c'est
le modèle ou le personnage, et ça a des couleurs différentes. C'est le cas, il a un ensemble de santé, il a une composante humanoïde. Et les
composants humanoïdes sont responsables, comme vous pouvez le constater, d'
une partie de la mise à l'échelle, d'une partie de la largeur, de
cette description uniforme. Vous pouvez donc voir qu'il existe
différents accessoires. Voilà donc toutes
les choses visuelles. Cela inclut également les scripts, comme vous pouvez le constater, les
scripts locaux tels que Animate. Il s'agit donc essentiellement
de toutes les animations que vous voyez lorsque je me
déplace ici. Ces animations, non ?
L'animation de marche, l'animation de saut,
tout ça, tout
ça, tout se fait par le biais de l'
animation ici, ce type, que je peux
vraiment aborder. Vous pouvez donc voir que c'est le script animé
qui se trouve déjà ici. Et vous pouvez voir qu'il y
a beaucoup de choses là-dedans. Donc, comme vous pouvez le constater clairement, certains de ces gommages peuvent
devenir complètement fous. Donc, dans l'ensemble, quand on y pense
vraiment, ce
qui est important, c'est que le joueur, si nous voulons ajouter
n'importe quel type de valeur, ajouté avec le joueur tandis que tout le reste est
ajouté au personnage. Donc, vous pouvez voir,
si, vous pouvez voir si j'élargis le joueur ici, s' il y a un sac à dos ici, il y a de l'équipement de départ. Donc, si vous avez de l'équipement, n'est-ce pas, vous pouvez
le sauvegarder dans le lecteur et il
sera affiché dans le
personnage ou le modèle. Donc, si, pour une raison quelconque,
vous vouliez changer l'apparence de notre
personnage, vous devrez
réellement faire référence au personnage et
non au joueur. Maintenant, vous pouvez obtenir le personnage
via le joueur, n'est-ce pas ? Parce que si je clique
sur Control ici, vous pouvez voir que nous
avons une
référence à un personnage ici, et c'est collégial, qui
correspond exactement à ce type
ici, n' est-ce pas ? Ils sont donc liés. Vous pouvez obtenir le personnage
auprès du joueur. Mais c'est l'idée générale. Donc, pour résumer, le personnage est tout ce qui est visuel. Il fait essentiellement référence à tous les modèles et à
tous les éléments humanoïdes, et il est disponible
dans l'espace de travail. En théorie, cependant, vous passeriez
toujours par le joueur. Vous
attendriez toujours que le joueur ait chargé ou
quelque chose comme ça, ensuite passer par le
joueur au personnage,
parce que le joueur
fait référence au personnage et que
le joueur lui-même est essentiellement le véritable client et souffre de toutes sortes
d'inflammations, y compris une certaine
valeur, qui sera abordée
dans la prochaine conférence. Eh bien, ce sera pour
cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de
nouveau. Je vous verrai tous lors de la prochaine
conférence. Donc, oui.
29. (Roblox) sauvegarder des variables sur le joueur: Continuons avec
les bases des robots ici pour le cours de robotique. Et dans cette conférence, nous
allons voir comment vous pouvez enregistrer certaines variables
sur votre lecteur. Au début, cela peut
sembler un peu, et ce n'est
pas vraiment utile, mais c'est en fait très,
très intéressant. Alors, où pouvons-nous
ajouter ces valeurs ? Nous souhaitons ajouter ces valeurs
au pack de démarrage. Donc, ce que vous pouvez faire, c'est
ajouter des valeurs comme vous pouvez le voir Si je recherche des valeurs,
vous allez ajouter valeurs de
couleur dans des nombres de valeurs. Il y a donc un tas de choses
que nous pouvons ajouter ici. Disons simplement que nous
ajoutons une valeur finale et appelons cela. Je l'ai fait juste pour
les besoins de la discussion, juste pour que nous ayons
quelque chose sur lequel travailler. Si nous devions
commencer à jouer maintenant, n'est-ce pas ? Et si nous examinions
le joueur et calmions Joel, puis que nous examinions le sac à dos, vous verrez que j'ai de
l'expérience dans mon sac à dos. Bien sûr, dans ce cas, l'
expérience du sac à dos
n'a pas
beaucoup de sens conceptuellement, mais
considérez simplement que, d'accord, vous allez maintenant ajouter de
l'expérience à votre joueur. Nous allons voir cela
dans la prochaine conférence d'une manière un peu plus agréable. Mais juste pour
les besoins de la discussion, nous allons continuer comme
ça pour le moment. Maintenant, maintenant, nous
pouvons vraiment tout faire
avec cette expérience, comme si cela ne vous faisait pas
changer d'avis. Je suppose que nous pouvons
le changer ici, mais cela ne fait rien, n'est-ce pas ? Mais ce que nous voulons faire, c'est simplement dire que nous voulons changer expérience chaque fois je change de position ici. Disons que j'ai sauté de l'autre côté
de la rue, non ? Ce serait donc le bloc
tactile, n'est-ce pas ? Si je me lance là-dedans, au lieu d'explorer
1 milliard de choses, je voudrais simplement imprimer l'expérience réelle de
ce joueur en particulier. OK, ça a l'
air très intéressant. Maintenant, en théorie, vous devriez déjà être capable de le
faire vous-même. Mais allons-y. Maintenant, je vais d'abord
créer un nouvel objet ici et nous allons aborder cela
un peu différemment. Alors colorons-le d'une couleur un
peu différente, peut-être un peu
plus de rouge foncé. Oui, c'est bien. Bourgogne. Absolument. C'est du bordeaux.
Nous allons le conserver sous forme de clicker avec
un autre script. Ce
sera en fait le clicker de l'expérience. Et ce
sera l'expérience, le script
Experience Clicker,
car cela
va en fait produire l'expérience réelle
des joueurs. Alors maintenant, nous avons le
joueur ici, n'est-ce pas ? Quand on clique dessus, nous
pouvons créer Player Dot,
puis faire du sac à dos
puis de l'expérience Dot. Est-ce que ça va fonctionner ? Eh bien,
il va chercher ça. Et tant que nous avons
tout écrit correctement ici, cela devrait fonctionner, n'est-ce pas ? Nous devrions donc pouvoir
dire ce joueur, n'est-ce pas ? Ensuite, nous pouvons créer
un joueur qui affichera que le nom du joueur est XB, n'est-ce pas ? Cela devrait donc être un résultat, celui de
ce conseil de joueurs,
et ensuite, quelle que soit l'expérience que nous
avons réellement dans
le sac à dos. Voyons si cela
fait vraiment quelque chose, non ? Alors allons-y
et voyons
où il se trouve juste ici. Donc, si je clique dessus
, nous devrions
pouvoir voir ce nombre. Cette ligne de nombre de joueurs
a reçu de l'XP. OK, eh bien, ce
n'est pas tout à fait aussi entraînement que nous le voulions parce que d'après
notre expérience, c' vrai, il s'agit d'une valeur int. En fait, nous devons calculer la valeur par points ,
puis obtenir la
valeur parce que, bien sûr, lorsque nous acquérons de l'expérience, nous obtenons simplement le nom, n'est-ce pas C'est donc le nom par défaut et nous voulons en fait
obtenir la valeur. Donc, en théorie,
si je recommence, si nous entrons ici
et que nous cliquons dessus, alors nous pouvons voir ce joueur passer, qui n'a
aucune expérience. C'est un très, très bon premier pas. Voyons maintenant comment nous pouvons
améliorer l'expérience. Pour ça. Nous voulons modifier à la fois le clicker gauche et
le clicker droit. Et voilà. Et pour cela, encore une fois,
nous avons le joueur. Nous pouvons donc simplement changer
l'expérience, n'est-ce pas ? Nous pouvons donc simplement prendre la valeur d'
expérience de
ce sac à dos de joueur. Voici donc l'expérience. Et à ce moment-là, lorsque
le joueur clique, nous voulions simplement augmenter
la valeur d'une unité. C'est littéralement
tout ce que nous voulons faire. OK, faisons-le ici, et faisons la même
chose ici. Et cela devrait être à
peu près ce dont nous avons besoin. Désormais, la valeur de
l'expérience
augmente chaque fois que nous cliquons sur la gauche
et la droite. Voyons donc si cela
fait vraiment quelque chose. Tout d'abord, juste pour
vérifier que quelqu'un vérifie expérience
HasZero qui
est tout à fait correcte. Si nous allons voir le
joueur ici, regardez l'expérience du sac à dos. Maintenant, je clique sur celui-ci. Vous pouvez voir que tout d'un coup
j'ai une expérience. Maintenant, j'en suis à 3456 et je peux cliquer
sur le même et obtenir plusieurs
expériences, bien sûr, mais ce n'est qu'un
exemple dans ce cas. Si je clique maintenant dessus, vous pouvez voir que j'ai
16 points d'expérience. Oui, c'est vraiment cool, non ? Donc, si vous avez enregistré une valeur sur le lecteur, elle est
maintenant stockée. Maintenant, si je devais m'
arrêter et trier à nouveau, nous allons, bien sûr, le
réinitialiser, n'est-ce pas ? Si je reviens
ici, je te souhaite la bienvenue. C'est
à nouveau zéro parce que nous ne l'
enregistrons nulle part. C'est quelque chose que
nous allons
examiner en tant
qu'étapes
intermédiaires , car nous devons enregistrer cela sur les blocages. Cloud, qui est un peu plus
compliqué, comporte
également d'autres éléments auxquels vous devez
vraiment faire attention. Mais pour l'instant, vous avez enregistré une valeur particulière sur le lecteur avec une valeur
int ici. Et encore une fois, je peux
vous montrer que vous pouvez avoir différentes
valeurs. Valeurs booléennes,
valeurs de couleur et valeurs numériques. Vous pouvez même avoir des
valeurs d'objet, trois valeurs vectorielles. C'est donc plutôt cool le type de valeurs que vous pouvez
stocker sur le lecteur. Et vous pouvez essentiellement
améliorer votre jeu en termes de statistiques ou d'
attributs du joueur. C'est déjà assez cool, mais dans la prochaine
conférence, nous
verrons comment ajouter
les ensembles de leaders. Cela reviendrait donc à
ajouter les statistiques sur le classement en
haut à droite, à droite. Si je participe ici,
nous aurons vu le
classement parce que nous
avons des
équipes différentes et je peux ajouter certaines valeurs à
ce classement sous forme statistiques, puis les
modifier également. Ensuite, nous pouvons
les voir plus ou moins dans le jeu. Nous n'avons donc pas besoin d'aller sur une pierre au hasard et de cliquer dessus pour voir notre
expérience. Nous allons en fait
pouvoir le voir dans le jeu. Donc, encore une fois, c'est
vraiment génial. Notre, ce sera tout pour
cette conférence ici même. J'espère que vous avez trouvé cela utile
et que vous avez appris quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
30. Classement des Leaderboard (Roblox) avec Leaderstats: Très bien, poursuivons ici
les bases de Roblox pour
le cours World Works. Et dans cette conférence,
nous allons examiner les classements, ou aussi les statistiques des leaders.
C'est très intéressant. Cela supprimera donc l'expérience que nous avons
mise dans le pack de démarrage, car cette fois-ci, toutes
nos différentes
valeurs seront
générées via un script. Donc, sur les serveurs de scripts du serveur, nous allons créer un nouveau script avec
des statistiques de 16 litres de tableau de bord. Et ajoutons simplement qu'il s'agit soit d'un classement,
soit de statistiques de leader. C'est l'idée générale
et il est en fait très important que nous
fassions tout cela correctement. Donc, tout d'abord, nous
aurons un joueur
local ce qui équivaut
à un nombre de joueurs. Nous allons donc jeter un
œil à celui-ci ici. Donc, les joueurs sont là,
et ils vont y arriver. Et ce que nous pouvons faire, c'est créer une fonction locale ici. Et cette fonction
sera la configuration du classement. Et cela se produira
pour chaque joueur et cela
ressemblera à ceci. Nous allons donc créer un nouveau dossier. Tout d'abord, cela s'
appellera Leader Stats, puis
le dossier lui-même. Il s'agit donc d'un nouveau dossier et
d'une instance point nu, et il s'agit d'un nouveau
dossier. Comme tu peux le voir. s'agit simplement d'un nouveau dossier qui
va être créé pour chacun de nos joueurs. Vous verrez
comment ils vont être ajoutés pour chaque joueur
dans un instant. Mais tout d'abord, et c'
est extrêmement important. Le nom ici doit
être exactement le litre Stats. S'il vous plaît, faites attention à cela. Doit être écrit
exactement comme ça. L minuscule, statistiques en litres. n'y a pas d'espace entre les deux, il n'y a pas de tiret,
exactement comme ça. J'ai vu ça tellement de
fois que les gens se disent
: « Oh, je ne sais pas où
ça ne marche pas ». C'est parce que ça doit être
écrit exactement comme ça. Une fois que c'est le cas,
vous pouvez définir le point parent des statistiques du leader
égal au joueur lui-même. Cela va donc définir le
dossier parent du lecteur, qui est exactement ce que nous voulons. Et maintenant, nous pouvons ajouter
différentes valeurs. Ainsi, par exemple, nous pouvons remettre
la valeur acquise. Nous pouvons donc faire l'expérience d'une instance
égale dot nu, et ce sera
maintenant une valeur int. Et puis nous pouvons voir qu'un nom de point
expérimenté est alors, bien sûr, expérience. Vous y voilà. Ensuite, la
valeur du point expérimentée sera nulle. Nous allons donc commencer par
zéro, ce qui est logique. C'est donc très important
ici, à la fin. L'expérience de ce parent est
alors égale aux statistiques en litres. Nous voulons donc placer
chacune de nos variables sous les statistiques
du leader. Et en théorie, nous pouvons
simplement le dupliquer ou le copier, puis
le remplacer par de l'
or, par exemple , n'est-ce pas ? changez
simplement tout cela en or. Et disons que nous commençons
avec quelque chose comme dix pièces d'or. Et maintenant, nous l'avons. Maintenant, il ne
fait encore froid nulle part, car comment appelle-t-on cela ? Eh bien, nous allons dire que
Players Dot Player a été ajouté. Comme vous pouvez le voir, il s'agit d'un événement
ici, qui est appelé chaque fois un joueur est ajouté à la partie. Et nous allons connecter
cela à la configuration du classement. Désormais, chaque fois
qu'un nouveau
joueur rejoint notre jeu, il reçoit
le dossier des statistiques des leaders avec la valeur int (expérience)
et la valeur or (zéro
expérience et dix volts). Donc c'est vraiment cool. Jouons et
voyons si cela fonctionne. Et je vous assure
que cela fonctionnera. Vous pouvez voir maintenant que Joel n'a aucune expérience
et dix pièces d'or. Et si nous ouvrons le
lecteur ici, nous pouvons voir qu'il existe
un dossier contenant des ensembles de leaders. Et au lieu de cela, vous avez
l'expérience et l'or. Et en gros, le
classement ici recherche
toujours un
dossier de statistiques de leader , puis l'affiche. Bien sûr, ce que nous ne pouvons
plus faire , c'est cliquer dessus car pour l'instant n'
y a rien dans notre sac à dos, donc nous pouvons
réellement l'afficher. Revenons donc à cette page et passons à l'
expérience. Et puis examinons
également les deux cliqueurs ici. Donc, celui de gauche
et celui de droite, et nous allons changer
cela ici. Nous étions en train de modifier la valeur
de l'expérience vécue dans le sac à dos, mais aujourd'hui, nous la
changeons réellement dans les sets de leader. Alors, comment est-ce que cela fonctionne ? Eh bien, nous pouvons le faire de deux
manières. Si nous ne voulons rien
vérifier, nous pouvons littéralement
simplement dire que le litre indique que la valeur du point d'or est égale
à plus un, par exemple ou expérimenté, je veux dire,
ce que nous voulons. Faisons simplement de
l'expérience ici, et faisons de
l'expérience ici aussi. Nous pouvons donc le faire. Maintenant, nous allons juste le faire pour le plaisir de discuter, non ? Allons-y et nous devrions être en mesure de constater que si je le fais, vous constaterez que notre
expérience ici augmente.
C'est plutôt cool. Mais que se passerait-il si, disons,
cela était sujet à des flèches très faciles ? Parce que dans ce cas, je fais une faute de frappe ici. Et tout à coup, on se dit « Je tape ici
et tout à coup je clique dessus et j'obtiens
une erreur parce que bon, l'expérience
n'est pas un membre valide ». Je me demande : « Qu'est-ce
qui se passe ? » Ça me manque, tapez ça. Il y a donc un peu de validation
que vous pouvez effectuer. Et ça va être
quelque chose comme ça. Nous pouvons donc, par exemple, dire : « Hé, donnez-moi les statistiques
de leader du joueur ici ». Nous allons donc utiliser les positions de
leader comme variable. Cela ne générera aucune erreur même
s'il n'y a pas de litres. C'est parce que, eh bien,
ça n'a pas d'importance. Ensuite, nous pouvons faire une visite locale et c'est vraiment très
intéressant. Donc, ce que nous pouvons faire, c'est dire « expérience statistique »,
et c'est fou. On peut dire des statistiques par litre. Et puis mettez en
litres la position du côlon, trouvez le premier enfant, c'est une fonction et cela
recherchera de l'expérience. Cela peut sembler
complètement insensé. Ce que nous ferons alors, c'est
dire, si nous en faisons l'expérience ,
alors nous pourrons
réellement l'augmenter. Et nous pouvons utiliser cela en
utilisant l'expérience. C'est ce que nous pouvons
dire, en ayant fait l'expérience,
que plus une valeur est égale à un. Pourquoi est-ce mieux que ça ? Eh bien, tout d'abord, cela permet s'assurer que les deux ensembles de
leaders existent, découvrir l'expérience réelle
ici avec un bon premier enfant, cela est validé en utilisant l'instruction
if ici. Et l'idée générale de ce taux
linéaire est que c'est vrai et qu'il renvoie
tout ce qui s'y trouve, n'est-ce pas ? Donc, en gros, nous disons : Hé, n'est-ce pas nul ? C'est généralement
l'idée, non ? Le leader dit donc que ce n'est pas nul. Et puis nous
découvrons que cet enfant, qui est ensuite sauvé dans l'
expérience, que cette expérience, que la valeur plus égale
un est la même que celle-ci. Donc, si nous devions, juste
pour les besoins de l'argumentation, copier également dans le clicker
rouge, et nous le modifierions. Vous, nous allons voir à
ce que tout fonctionne. Nous allons donc entrer ici et nous
allons cliquer ici et vous pouvez voir que l'expérience
continue d'augmenter. C'est un
script bien meilleur dans ce cas, et cela permet simplement de s'assurer
que tout existe. Maintenant, qu'en est-il de la sortie ?
Cela ne fonctionne toujours pas bien, passons au
clicker d'expérience ici. Et puis ici, la même
chose s'applique, n'est-ce pas ? En gros, nous pouvons simplement l'obtenir. Ensuite, au lieu de
faire le plus égal, nous pouvons simplement dire que
nous allons imprimer la
valeur de cette donnée expérimentée ici, dans ce cas. Et puis nous pouvons
réellement faire de même. Nous pouvons faire une autre déclaration. Donc, si l'expérience n' existe
pas pour une raison quelconque, nous pouvons simplement dire que ce joueur n'a aucune expérience pour les besoins de
la discussion, n'est-ce pas ? Et puis, si nous jouons à ce jeu
et que nous devions entrer
ici, nous n'avons plus aucune
expérience, n'est-ce pas ? Ensuite, nous pourrons acquérir
cette expérience. Maintenant, nous en avons six,
nous avons maintenant six expériences. Tout fonctionne, d'accord, donc c'est déjà plutôt cool. Maintenant, nous pouvons devenir encore plus fous juste pour
le plaisir d'argumenter. Donc, par exemple, ce que nous pourrions faire,
c'est dire, eh bien si vous cliquez dessus,
nous voulons vraiment savoir si vous n'
avez pas assez d'or, n'est-ce pas ? Peut-être que ça coûte
de l'or de déplacer la chose. Donc, ce que nous pouvons alors dire,
c'est que nous pouvons ensuite le faire. Et puis on peut aussi dire, trouve-moi
aussi l'or, n'est-ce pas ? Et puis nous pouvons
dire ce qui suit. S'il n'y a pas d'expérience ce
sera désormais une étoile d'or, n'est-ce pas ? Donc, c'est la statistique de l'or. Ensuite, nous pouvons dire si c'est la statistique de l'or, alors nous allons
vérifier quelle est la valeur. Si la
valeur des données Gold Stat et Gold
Standard est supérieure
à un, parce que nous allons la diminuer. Ensuite, nous pouvons continuer
sur cette voie et augmenter la valeur
expérimentée. Et nous allons réduire
la valeur de l'étalon-or. Alors maintenant, nous sommes en train de
devenir complètement fous ici. Copions également ceci sur
l'autre,
comme je l'ai déjà mentionné
précédemment. Maintenant, il existe une meilleure
façon de procéder. Au lieu d'avoir deux
scripts comme celui-ci, vous pouvez utiliser
un seul script et exécuter la même fonction OnClick
pour les deux. Pour le moment,
nous allons juste
continuer comme ça,
ça va bien se passer. Mais l'idée générale est
que nous sommes en train de vérifier, d'
accord.
Avons-nous également une bonne statistique ? Et si c'est le cas, c'est la
valeur supérieure à un,
supérieure ou égale ? En fait, c'est ce que nous voulons. Oui Et si c'est le cas, alors nous vérifions que nous
augmentons l'expérience
qu'en diminuant la quantité d'or. Et nous pouvons également effectuer un suivi ici
au lieu de, si, nous pouvons en faire un autre ici. Et nous pouvons alors
imprimer quelque chose comme si le joueur n'avait pas assez d'or
pour les besoins de la discussion. Donc, si le joueur
a zéro or ou moins, environ zéro, c'est probablement
ce qu'il aura. Ensuite, ça va
imprimer que le joueur n'a
pas assez d'or. Jetons donc un
coup d'œil à cela. Jouons donc, et nous
pourrons voir que
si je continue, c'est
vrai, je n'ai aucune
expérience avec dix pièces d'or. Je clique dessus. Maintenant, j'ai une expérience
et neuf pièces d'or et
je peux cliquer sur la même expérience. Je suis à zéro or, tout
fonctionne toujours bien. Si je le fais maintenant, alors tout d'un coup, l'ordinateur
n'a plus assez d'or. Maintenant, la chose est
toujours en mouvement. Ce que nous pouvons faire, c'est changer cela en disant : « Eh bien,
vous savez quoi, cela ne bougera si l'objectif est réellement
soustrait, n'est-ce pas ? Nous allons donc déplacer cela juste pour qu'il apparaisse. Et puis tout à
coup, nous ne pouvons déplacer la pièce que si nous avons
réellement de l'or. Eh bien, c'est très
intéressant, non ? Nous pouvons donc déplacer cela. Tout va bien, n'est-ce pas ? Vous y voilà. Et nous le déplaçons encore une fois, et maintenant je clique ici
et tout d'un coup,
non, ça ne fonctionne pas, n'est-ce pas ? Comme si tu avais cliqué sur moi, mais
tu n'avais pas assez d'or. C'est très intéressant en effet, qu'il s'agit déjà d'une fonctionnalité assez
intéressante. En résumé, nous utilisons l'
événement ajouté par les joueurs
pour créer un dossier de classement pour chaque joueur qui
rejoint notre jeu. Et ce dossier contiendra le nombre de
variables différentes
que nous voulons. Et ils peuvent
représenter n'importe quel type de nombre ou n'importe quel type de valeur. Ici, dans notre cas, nous avons ajouté de l'expérience et de l'or, et nous les utilisons pour valider. Il nous en faut une certaine
quantité d'
or ici pour déplacer une pièce. Ensuite, nous acquerrions également de l'
expérience. C'est vraiment génial
et cela vous
permet de faire tellement de choses. Maintenant, les choses s'
ouvrent vraiment et nous
allons voir bien plus de
choses que nous pouvons faire. Mais ce sera tout pour
cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
31. Pièces collectionnables (Roblox): Très bien, continuons
les bases de Roblox ici, en suivant le cours Roadblocks. Et dans cette conférence,
nous allons
créer des pièces que vous pourrez récupérer. Alors, à quoi cela va-t-il ressembler ? Eh bien, tout d'abord, créons une nouvelle
pièce ici et voyons voir. Donc, tout d'abord, nous
allons en faire notre 333. C'est, je pense, la bonne taille que je veux. Je veux les
ancrer et les
déplacer juste sur une
toute petite partie du sol. Nous allons donc avoir
quelque chose comme ça. Maintenant, nous allons
les colorer d'un jaune plus vif. Alors peut-être que ce jaune, je pense que c'est
différent de lui, non ? Non, c'est un nouveau jaune et
c'est aussi un nouveau jaune. Allons-y, l'
orange foncé convient également. Maintenant, nous avons ce
port et nous allons l'
appeler la file d'attente dorée, parce que ce sera,
eh bien, un cube en or. Un
nouveau script sera joint à ce script, et ce sera
le script Gold Pickup. Maintenant, nous allons tout
faire ici pour le moment. Ensuite, je vais
vous montrer comment vous pouvez faire en sorte que cela soit bien meilleur. Un script de collecte en or
pour le moment, juste pour vérifier cela
et de quoi avons-nous besoin ? Eh bien, nous devons vraiment savoir ce que sont ces cubistes
dorés en particulier. Nous avons
donc besoin d'un cube
en or local, Nous avons
donc besoin d'un cube
en or local égal au
script point parent. Ensuite, nous avons également besoin d' un joueur local, soit l'
équivalent des joueurs Game Dot. Encore une fois, c'est la même idée que nous
recevons ces joueurs. Maintenant, nous avons une fonction locale appelée partiellement touchée,
parce que nous
utiliserons l'événement Touched
ici dans un instant pour récupérer cet
objet en or en particulier ou cet or. En gros, il y a plusieurs
étapes. Bien sûr, la première serait l'événement Touched
ici dans un instant pour
récupérer cet
objet en or en particulier ou cet or. En gros,
il y a plusieurs
étapes. Bien sûr,
la première serait de connecter
ce point doré à points cubiques touchés par des points cubiques. Ensuite, nous allons
mettre la partie touchée ici sans parenthèses. Donc, juste comme ça, et maintenant cette fonction ou cette
fonction locale va être
appelée à chaque fois que l'événement
Touched est déclenché. Mais nous voulons nous
assurer qu'il se déclenche
uniquement lorsque le
joueur le touche. Donc, pour celui-ci, nous allons avoir un, le parent de l'autre partie. Ce sera donc l'
autre partie de ce parent. Ensuite, nous aurons l'humanoïde
de cet humanoïde, n'est-ce pas ? Ce sera
donc le parent. Ainsi, le parent de l'
autre partie, le côlon, trouve le premier enfant, qui
est un humanoïde, puis un humanoïde. Humanoïde. Et voilà. Il y a un long appel de fonction. Assurez-vous de l'écrire
correctement. Trouvez donc le premier enfant
qui est
écrit exactement comme ceci dans le
même boîtier. Et si cela existe, alors nous pouvons le faire s'il s'agit d'un
humanoïde d'hier et d'aujourd'hui ,
tout ce qui se trouve ici ne
sera qu'exécuté. Si l'autre partie qui
touche ce cube d'or est un joueur auquel est
attaché un humanoïde. Donc, la première chose
à faire est détruire les deux-points de la file d'
or, ce qui signifie que cela
détruira ce cube en or. Dans un instant. Nous verrons en fait que nous pouvons le faire d'une manière un peu
différente. Mais pour le
moment, nous allons simplement le
faire et ensuite nous pourrons
faire la même chose que nous avons déjà fait dans le
clicker, n'est-ce pas ? Donc, en gros, nous faisons
exactement tout cela à Leary , n'est-ce pas ? Nous allons donc obtenir les statistiques des joueurs, donc nous allons dire couche locale. Tout d'abord, nous
devons réellement trouver le joueur. Donc, pour cela, nous devons
saisir les deux points des joueurs, obtenir le nom du joueur à partir du personnage car nous en avons
parlé à partir du personnage. Et nous avons mis dans les
cheveux et ici, nous avons mis le parent ici, parce que réfléchissons-y. Nous avons besoin du joueur dès
maintenant, mais nous n'avons accès au personnage que par l'intermédiaire du
parent ici. Parce que c'est
le personnage qui
a réellement touché, n'est-ce pas ? Il s'agit de la représentation 3D
du modèle qui
touche réellement l'autre pièce. Et nous devons en sortir
le joueur. C'est ainsi qu'il faut procéder. Ensuite, nous aurons les statistiques du leader. Ainsi, les litres égaux au nombre de
points par litre du joueur déterminent les
statistiques du leader. Et voilà. Et encore une fois,
nous obtiendrons les statistiques relatives à l'or, en l'occurrence, à l'étoile dorée
égale aux statistiques en litres. Et c'est exactement la même chose
que nous avons vue ici jusqu'à présent. Nous allons juste
obtenir les statistiques du leader,
deux points, trouver le premier enfant. Et la première épreuve
que nous voulons trouver est l'or. Dans ce cas, si les statistiques sur l'or sont vraies, statistiques sur
l'or sont vraies. Celui-là. Et voilà. Ensuite, ce que nous voulons faire,
c'est pas le nom,
mais ensuite c'est parti. Nous voulons dire que la
valeur du point doré est égale à un plus. Grâce à cela, nous avons maintenant
un port de collecte d'or, donc nous en avons
un ici même. Donc c'est plutôt cool. Jouons à ça et voyons si je peux vraiment le comprendre. Mais je suis sûr que je
devrais être capable de le faire. Donc, si je marche vers
lui et que je
le touche, le cube disparaîtra et je
vais obtenir une pièce d'or. Et voilà, le cube
a disparu et j'en ai gagné 1. Maintenant, le
cube a disparu pour toujours. Et en théorie, nous pourrions
simplement le dupliquer, Control D, et nous pouvons
le dupliquer et ajouter quelques cubes supplémentaires. Mais à un moment donné, vous rencontrez
un problème. Disons, par exemple , que
vous savez, en fait, tous ces cubes vous permettront d'obtenir de l'or. OK, eh bien, changeons-le. Eh bien, attendez une seconde. Cela a changé les choses dans
l'un d'entre eux, non ? Cela a changé
celui-ci en particulier, mais celui-ci n'a pas changé et ce script n'est pas modifié, et les autres ne sont pas
non plus modifiés. C'est un peu juste,
ce n'est pas très bien. Alors, que pouvons-nous faire
pour atténuer ce problème ? Nous
avons quelques
options à notre disposition
pour atténuer ce problème. L'une d'elles serait d'
utiliser un script de module. Disons simplement que pour
les besoins de l'argumentation, créez un
script de module ici, et nous l'appellerons, c'
est-à-dire 17 tirets. Et ce serait
la collection d'or. Disons que c'est comme
ça. Et voilà. Ensuite, ce que nous pourrions faire,
c'est simplement dire, eh bien, prenons à peu
près la totalité de cela et voyons ce que
nous allons obtenir en
tant que fonction, n' est-ce pas ? Nous allons donc créer
une fonction ici. Et nous allons appeler ce
module Dot Goal Pickup. Et nous verrons de quel type de paramètres nous
aurons besoin. Nous avons donc besoin de l'autre partie. Ce sera donc
le premier paramètre. Et puis nous avons également
besoin du cube en or, ce sera le
deuxième paramètre. Et les derniers
seront les joueurs. Ce sera
le troisième paramètre. Et maintenant, cela devrait
théoriquement être un point d'interrogation. Eh bien, je veux dire, voyons voir, donc nous allons pouvoir en
faire deux ici, et ensuite nous avons juste besoin de cela
pour pouvoir ramassage local,
disons que c'est égal à l'exigence. Ensuite, nous
voulons dire Game Dots, une
sorte de
service de script, puis un crochet entre
guillemets 17 et un pick-up doré. Vous pouvez compléter automatiquement à l'
aide de la touche Tab. Et maintenant, nous devrions
pouvoir appeler Pickup Dark Gold Pickup, passant l'autre partie
comme premier paramètre, en
passant l'autre partie
comme premier paramètre, le cube doré comme deuxième, puis les
joueurs comme troisième. Et maintenant, non seulement c'est un
peu plus facile à lire, écrire, mais nous pouvons
toujours y revenir. En fait, vous pouvez maintenir la touche
Contrôle enfoncée et cliquer dessus , puis vous serez
amené à cette fonction ici. Donc c'est plutôt cool. Et maintenant, nous avons ceci à l'intérieur
de cette partie particulière. C'est donc plutôt génial. Maintenant, il
faudrait encore une fois les modifier toutes. Mais si nous avions eu celui-ci, c'est
celui que nous avons changé. Oui. Donc, juste pour les besoins de
l'argumentation, supprimons le reste et si nous le dupliquons
maintenant, n'est-ce pas ? Maintenant, nous en avons
encore deux, donc quatre,
mais maintenant, ils appellent tous
le Gold Pickup. Eh bien, maintenant, si je
veux modifier la valeur, ils vont changer d'
étage ou de nuit. Si je modifie maintenant la valeur
dans le script de ce module, elle changera
pour tous. Donc, si je devais jouer correctement, et que nous devions entrer ici, nous devions choisir celui-ci. Tout à coup, je gagne
six pièces d'or et j'en obtiens six d'or pour
celui-ci, et celui-ci également. Maintenant, ce
qui s'est passé,
c'est que l'or , comme ils partagent tous la
même fonction ici, peut tous utiliser celui-ci. C'est plutôt cool car
sinon nous
utiliserions la
même fonction de toute façon. Il n'y a aucune vraie raison de
ne pas le changer. Maintenant, c'est déjà très cool et
simple. Cependant, disons que pour les besoins de
la discussion
sur le choix des buts, je vais maintenant répondre
: « Tu sais quoi ? Au lieu d'avoir la statistique sur l'or comme celle-ci, comme l'augmentation, comme celle-ci, comme l'augmentation,
je voudrais simplement créer une variable d'
augmentation ici. Et je vais le
mettre ici pouvoir fondamentalement
changer, d'accord ? Un ramassage de buts peut en fait
avoir différentes valeurs. Maintenant, nous allons nous
heurter à la question
de savoir si ce n'est pas le cas, n'est-ce pas ? Et puis, si je joue à ce jeu pour le moment, rien ne
se passera. Cependant, dès que j'en
aurai trouvé un,
ce sera
comme s' il allait être nul parce qu'il n'est pas défini. Et maintenant, nous
revenons au même problème. Si je le change ici en
deux, ça ira. Mais maintenant, j'en ai un tas d' autres où ce n'
est pas le cas. Donc, évidemment, ce que
vous voulez avoir à la fin, c'est que tous vos cubes
dorés aient un seul script au lieu que chacun d'entre eux ait son propre script, n'est-ce pas ? Maintenant, pour y
parvenir suffit de les
sélectionner tous, de cliquer avec le
bouton droit de la souris et de les regrouper en tant que dossier. Cela va monter
jusqu'en haut ici. Je vais appeler ça les micros
dorés. Et voilà. Ensuite, je vais également déposer le script dans le
dossier ici. Ce n'est pas strictement nécessaire, mais c'est juste un
peu plus agréable. Maintenant, nous allons modifier légèrement ces micros en
or. Donc, pour le moment, nous
n'avons pas un seul cube. Écrivez le script ici, c'est
en fait maintenant le parent. Ce sera donc le dossier de collecte. Disons, d'accord, et voilà. Et ce que nous allons maintenant
faire, c'est
parcourir tous les enfants
de ce dossier en particulier. C'est donc une boucle à quatre maintenant, donc ça va être quatre. Ensuite, ce que nous
pouvons faire, c'est faire un I et un pick-up ici, et ce sera un i paires. Donc,
vous pouvez le voir, cela indique en fait
qu'il renvoie
une fonction itératrice et la table à utiliser pour la boucle. Alors maintenant, vous êtes peut-être comme ce
salaud qui se passe ici. Ne t'inquiète pas,
attends juste un moment. Nous allons donc simplement l'utiliser pour
ce qui suit, et nous allons l'utiliser
pour le dossier de collecte, deux-points pour les enfants. Donc ça va attirer tous
les enfants, non ? C'est très bien. Ensuite, nous
allons faire quelque chose. Qu'est-ce qu'on va faire ici ? Tout d'abord, nous
allons dire que si je suis égal à un, alors je veux que vous continuiez ,
car ce sera
le script de collecte d'or. OK, c'est juste. Ensuite,
je veux que vous preniez le contact avec le côlon touché. Ensuite, je veux
utiliser Onboard Touch. OK, je veux le faire d'
abord et avant tout. Maintenant, il est plus logique, plutôt que de le faire comme
ça, de
prendre littéralement cette fonction ici
et de la placer ici. Parce que maintenant, le
problème devient que vous allez le faire, nous n'
allons pas le nommer maintenant. Nous allons donc simplement
avoir une fonction qui
s'appellera ainsi, car il
est un peu plus difficile d'
accéder au cube doré et aux joueurs. Nous allons donc déplacer
les joueurs ici, et nous devrons tout
de même les récupérer ici. Et nous avons également besoin du cube en or. Cependant, nous avons le cube en or
qui vient d'être récupéré. Il s'agit donc d'un
doublement malheureux. Voici donc le script de ramassage.
Disons ça comme ça. Et voilà. Et
puis le micro est en fait le cube en or. Et puis nous n'avons
besoin de rien de tout cela. Et je suis passé par là
peut-être un peu rapidement. Passons donc à nouveau en
revue de haut en bas. J'ai donc un
dossier de retrait, non ? Ce sera
cette photo qui est maintenant demandée Je l'
appelle accidentellement. C'est ce qu'on appelle des micros. Emmenez-nous. Et voilà, n'est-ce pas ? Parce que
nous allons créer le script point parent, qui est le
parent du script, d'accord ? Et puis nous avons
les joueurs, ne
reste plus qu'à
être ces joueurs. Et puis nous avons le script de
collecte ici, qui est requis pour cela. Maintenant, si nous examinons cela,
nous pouvons en fait réduire encore plus
la complexité en le disant, en supprimant simplement cela. Parce que, pourquoi faisons-nous passer
les joueurs ici ? Nous pourrions simplement dire :
« Hé, tu dois trouver les joueurs. Et
puis voilà. Nous avons les joueurs. Nous pouvons le faire et
cela a accès
aux joueurs. Vous pouvez donc voir que, de cette manière, nous séparons
certaines choses de certains scripts pour
les rendre un peu
plus faciles à lire. Et deuxièmement, réduire
le nombre de choses que nous devons
faire pour continuer à travailler sur ce jeu
en particulier, n'est-ce pas ? Parce que imaginons que
nous avons. Si nous avons un champ
géant de cubes d'or, je ne connais pas le nombre de cubes
d'or ici, n'est-ce pas ? Comme chacun d'entre eux a son script distinct nous devons
le modifier pour chacun d'entre eux. Tout cela est ridicule. C'est dingue. C'est pourquoi un script en or serait
génial si tout fonctionne. Maintenant, dans ce cas, ils auront
tous
le même numéro ici. Et même si nous pouvions changer, restons-en à 14 heures pour l'instant. Et voyons ce qui se
passerait si nous devions exécuter cela. Donc, la première chose à faire
est de voir que nous n'avons pas à aller
chercher, à aller chercher. C'est probablement
parce que nous sommes en
train de voir qu'il est
11 heures ici. Le problème, c'est que pour le moment, il essaie de l'utiliser pour le
script Gold Pickup ici, ce qui
est assez intéressant. Je m'attendais à ce que
l'œil dise :
« Hé, c'est la collection
d'or, alors ne le faites pas. Ce moment où c'est en fait un zéro. Ça va être intéressant. Mais je ne pense pas que
ce soit le cas. Non, c'est toujours, ça
va toujours être là. D'accord ? D'accord, donc le I est égal à
1 n'a pas fonctionné. Faisons-les donc simplement
les suivants. Dites simplement si le nom du point de collecte
est égal à celui du point de ramassage en or, alors nous voulons continuer. En théorie, cela devrait en fait sauter par-dessus,
et c'est effectivement le cas. Il n'y a donc plus
d'erreurs ici. Et si nous devions
tomber sur ce 2222, allons-y. Maintenant, vous pouvez voir que,
même si les
micros réels, les cubes d'or eux-mêmes n'ont
pas leur propre script. Ils sont
détruits correctement. Et tout cela se fait
via un seul script. C'est donc
absolument incroyable. À l'heure actuelle, nous pourrions même aller encore
plus loin, n'est-ce pas ? C'est maintenant la dernière étape
que nous allons franchir. Et ça fait
deux ici, c' est quand même un
peu bizarre, non ? Vous pourriez donc ajouter une autre valeur à ce cube d'or
en particulier. En théorie, on pourrait appeler
cela la valeur de l'or, n'est-ce pas ? Nous pourrions donc appeler cela la valeur de l' or pour les
besoins de l'argumentation. Et on pourrait appeler
ça, disons. Et puis on pourrait dire, hé, quand le ramassage sera terminé, je veux vraiment connaître la valeur en
or, la valeur en points. Maintenant, il va
chercher cette valeur ici, et il va
lire la valeur
qui est écrite à l'intérieur
du cube en or.
Vous aurez presque le
même problème qu'avec les autres, Vous aurez presque le
même problème qu' où vous devez la modifier à nouveau. Vous pourriez donc aussi faire
quelque chose d'intéressant. Encore une fois, ce n'
est qu'un exemple. C'est juste pour t'amener
à y réfléchir. Ce n'est pas nécessairement ainsi
que vous le feriez, mais ce qu'il pourrait faire, c'est aussi
dire : Vous savez quoi ? Trouvons simplement la taille x,
puis faisons en sorte que cela dépend, par
exemple, de la quantité d'or
que vous obtenez, en fonction de
la taille du bloc réel. Disons que ce bloc
est maintenant de deux à deux. Ensuite, nous pouvons simplement supprimer
un tas de cubes. Disons simplement que
nous avons un tas de petits cubes et un
tas de gros cubes, puis nous avons un tas
de cubes encore plus petits. Donc ça va être des
cubes de 111. Donc, pour les besoins de la
discussion, non ? Nous allons donc avoir
un tas de très,
très petits cubes et un tas
de cubes de taille moyenne. Et peut-être qu'il y a un cube
géant qui ressemble à 999, n'est-ce pas ? Juste pour le plaisir de la discussion. Maintenant, la question
est de savoir si cela fonctionne. Eh bien, je veux dire, nous prenons
littéralement la taille x du
port de collecte comme valeur. Pourquoi cela ne fonctionnerait-il pas ?
Hein ? Alors allons-y et nous pourrons voir si je
prends l'un de ces petits. Nous obtenons une médaille d'or. Il y en a deux, il y en a
trois en or, non ? 311, ça en fait deux. Ça fait deux. Et il y en a encore
trois, encore trois, et celui-ci est
géant et ça fait neuf. C'est donc une fois de plus, juste pour vous faire réfléchir façon dont vous pouvez regrouper
toutes les choses dont nous avons parlé jusqu'à
présent en un seul objet géant. Maintenant, je dois admettre qu'il y avait
beaucoup de choses ici. Je comprends donc que s'il y a encore un peu de confusion, je vous recommande tout d'abord avoir le fichier Excel RB disponible en téléchargement,
afin que vous puissiez le télécharger. Regarde le script. Premièrement, le script
Gold Pickup, et deuxièmement,
le script du module. Découvrez comment ils travaillent ensemble. J'essaie juste
de changer certaines choses ici. Et peut-être que vous pouvez ajouter
certains de vos propres micros. Peut-être que vous
pouvez ajouter vous-même un petit
exemple ,
peut-être endommageant des objets
ou en guérissant des objets, n'est-ce pas ? Des micros de
guérison, des micros et des micros blessants ou
quelque chose comme ça, juste pour avoir une idée de ce
qui se passe réellement. Mais dans l'ensemble, c'est
absolument incroyable. Donc, pour résumer, nous avons un aperçu que nous avons fait
avec l'événement Touched. Nous avons commencé par
créer un script pour chacun de nos cubes,
puis nous sommes allés
jusqu' à avoir un script
qui contrôle les cubes, qui ajoute essentiellement l'événement
Touched à ces cubes. Et puis un script
de module contenant toutes les
fonctionnalités. Et c'est l'un des points
forts pour lesquels un script de module est absolument
incroyable pour cela, n'est-ce pas ? Mais ce sera tout pour
cette conférence. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de
nouveau. Je vous verrai tous lors de la prochaine
conférence. Donc, oui.
32. (Roblox) Ajouter des sentiers au joueur: Très bien, continuons les bases
des robots ici, suivons le cours sur les rubriques. Dans cette conférence, nous
allons voir comment ajouter un
parcours à votre joueur. Avant d'ajouter le sentier, qu'est-ce qu'un sentier ? Alors ajoutons-le à
ma partie cool ici. Nous pouvons simplement appuyer sur le signe plus n. Nous allons rechercher sentier et nous allons le
sélectionner. Et maintenant, il y a une piste, non ? Maintenant que nous avons ajouté la piste, nous devons
maintenant ajouter
deux pièces jointes. Donc, en théorie, à notre partie
cool, il suffit d'ajouter
deux pièces jointes. Donc, faisons
cette pièce jointe ,
puis je l'ai dupliquée avec Control D. Et nous allons juste la
déplacer d'environ deux, disons que quelqu'un comme
ça ira. Et puis l'
autre, nous
allons également passer de l'autre côté. Vous y voilà. Et maintenant, je peux utiliser la première pièce jointe et
la deuxième pièce jointe. Et maintenant, comme il est
attaché à cela, ce que nous pouvons faire, c'est que
lorsque nous le déplaçons, nous devrions voir que vous y allez, une trace apparaît exactement une trace apparaît exactement
à partir de
ces deux pièces jointes. Et vous pouvez modifier les sentiers pour faire toutes sortes
de choses, n'est-ce pas ? Vous pouvez le voir sur le
sentier ici, nous pouvons
toujours le faire face à la caméra. Nous avons même des émissions de lumière. Nous pouvons lui donner une texture. Il existe différents
modes que vous pouvez utiliser. Donc,
une pellicule statique, vous pouvez y ajouter de la transparence et vous pouvez
également avoir quelques
émissions ici. Donc, pour toute la durée de vie,
vous pouvez obtenir la largeur. Il y a donc beaucoup de choses
et vous pouvez aussi faire très cool en ajoutant une
couleur à la couleur ici. Vous pouvez ajouter une séquence de couleurs. Ainsi, par exemple, vous pouvez simplement changer la couleur rouge au
début pour lire. Et puis au
milieu, c'est peut-être du bleu
, puis vous le changez ici pour un autre
vert, puis ici vous le
changez pour une autre
couleur pour obtenir couleurs
arc-en-ciel ou toutes
sortes de choses folles. Vous pouvez donc voir maintenant qu'il a
à peu près la forme suivante. Et si nous devions maintenant
faire bouger ce type, donc si nous le déplaçons
maintenant, vous pouvez voir
que
maintenant ça change avec le temps, c'est déjà plutôt cool. Vous pouvez voir maintenant qu'il
change de sentier, qu'il change de
couleur et qu'il persiste avec certaines propriétés. Ainsi, par exemple, ou en diminuant l'émission, vous pouvez ajouter différentes choses,
comme augmenter la durée de vie, afin qu'elle
reste en vie plus longtemps. Vous pouvez avoir une longueur minimale et une
longueur maximale et même
ajuster la largeur. Donc, si nous devions faire,
je ne sais pas, cinq
ans à vie, alors cela
resterait là bien plus longtemps, comme vous pouvez le voir. Comme s'il restait en vie bien plus longtemps
jusqu'à ce qu'il se décompose. Donc c'est plutôt cool aussi. Bien que cela ait l'air cool ici, cela ne nous fait vraiment
rien. Ajoutons-le donc au lecteur. La première chose que
nous voulons faire
, c'est d'ajouter un
parcours dans le stockage de ces
serveurs , et ce sera le parcours des joueurs. Ce sera donc la piste qui sera ajoutée au joueur. Et pour les besoins
de la discussion, changeons cela
pour, encore une fois, couleurs
folles. Pourquoi pas ? Passons donc au rouge,
puis un peu plus tard au rose
, puis au bleu. Et puis nous passons
au turquoise,
disons, puis au vert, peut-être un peu plus tard. Ensuite, nous passons à un vert plus
clair puis à un jaune. Et puis, à la
fin, nous passons à l'orange, puis à la toute fin, nous
passons à nouveau au rouge plus foncé. Alors maintenant, nous avons un arc-en-ciel
cool ici, ce qui
est plutôt génial. Et nous allons l'utiliser
et le donner au joueur. Tout cela va bien. Jetons ensuite un coup d'œil à
celui-ci ici, juste ici. Nous allons donc en faire
une longueur maximale,
sinon ce sera le cas, je veux dire, sinon la
longueur est infinie et nous ne le voulons pas
nécessairement. Ensuite, nous allons l'
attacher au joueur. Eh bien, en fait, nous allons l'
attacher au personnage, mais parce que le personnage
est bien sûr
ce qui est réellement visible, n'est-ce pas ? C'est, c'est
la chose visible que nous avons déjà
vécue. Mais ajoutons simplement un script une fois de plus dans le service de stub
du serveur. Et nous appellerons ce tiret 18 et nous l'appellerons également le parcours des
joueurs. Vous y voilà. Et
zoomons juste ici. C'est le parcours des joueurs et
nous allons créer des joueurs locaux. Ce sera donc à nouveau notre jeu, les joueurs de
Game Dot. Ensuite, nous voulons que les joueurs jouent avec des
points. Nous voulons donc vérifier quand le
joueur a été ajouté et connecter à une
fonction particulière, ici où nous le joueur, puis à l'intérieur, oh, ce sont des
joueurs. Bien sûr, voilà.
Des joueurs ont été ajoutés, et voilà. Ensuite, au lieu d'ici, nous
voulons connecter le point joueur, le
caractère deux-points ajouté, et le connecter à
une autre fonction, cette fois pour obtenir le personnage. Nous avons donc deux événements
ici, l'un à l'intérieur de l'autre. C'est tout à fait normal et nous voulons
maintenant continuer. Maintenant, nous voulons
cloner la piste. Nous voulons donc parler de
serveurs de jeu, de stockage, de suivi des joueurs à points,
celui-ci, d'un clone de deux points. Nous avons donc cloné cette piste. Nous avons donc un crédit, un deuxième objet de
celui-ci en particulier. Donc, littéralement, comme si nous
devions contrôler C, contrôler V, et maintenant
nous l'avons dupliqué. C'est donc l'
idée générale de ce que fait le clone. En gros. Nous voulons ensuite dire que
la piste Don parent est désormais à la hauteur du personnage. Ensuite, nous voulons
attendre environ une
demi-seconde car
cela est nécessaire. D'après ce que j'ai
découvert par ailleurs, les pièces jointes et autres choses de ce
genre ne fonctionnent pas vraiment. Ensuite, nous allons
créer de nouvelles pièces jointes. Nous allons donc créer
une nouvelle pièce jointe. Il va être
touché par zéro ce qui équivaut à un point d'
instance nouveau, bien
sûr, à une nouvelle pièce jointe. Et nous pouvons immédiatement
dire que cela
va figurer sous
Character point head. Cela va donc aller à
la tête du personnage. Ensuite, nous pouvons dire que le nom
zéro point de la pièce jointe sera
juste pour que nous ayons cette
pièce jointe zéro. Il n'est pas
nécessaire de changer le nom, mais simplement de
tout organiser. Ensuite, nous pouvons créer une deuxième pièce jointe en tant que pièce jointe 1. Et c'est aussi Instance qui à
nouveau une fois de plus
, puis une nouvelle pièce jointe. Et ce sont deux personnages
dont la racine humanoïde fait partie. Vous y voilà.
Ensuite, nous en
changerons également le nom. Et ce nom sera suivi de la pièce jointe 1 dans ce cas. Et maintenant, nous
devons encore l'attribuer. Nous devons donc toujours dire que l'attachement
Trail Dot zéro est égal à un
zéro tangent et que l'
attachement Trail Dot 1 est égal
à l'attachement 1. Jouons et voyons ce que cela va
donner. Nous y voilà donc. Et
si je commence à bouger, vous pouvez voir tout d'un
coup que nous avons un sentier
vraiment, vraiment impressionnant qui nous
suit bien sur
une certaine longueur. Et nous pouvons bien sûr
changer cela, n'est-ce pas ? Si nous allons dans Workspace,
comptez et gérez. Et puis ici, nous devrions être en mesure de
trouver la trace du joueur. Et en théorie, nous pourrions
modifier ce poids pour nous placer face à la caméra. Alors maintenant, il sera toujours
face à la caméra, comme vous pouvez le voir, ce qui a également l'air plutôt cool. Vous pouvez donc l'activer
ou le désactiver. Il y a des influences légères. Vous pouvez donc le modifier ici
et, en gros , regarder ce
que cela change ici. Alors peut-être voulons-nous
rendre les choses un peu plus claires ou peut-être une femme,
comme tu sais quoi ? Non, la luminosité sera nulle,
puis tout d'un coup, il fera complètement noir, bien sûr. Il y a donc un tas de
choses que vous pouvez faire ici et les modifier en fonction de
vos besoins fondamentaux. Et cela peut ajouter une cape
à votre gamme de personnages. C'est peut-être quelque chose que vous souhaitez ajouter à
vos personnages. Peut-être souhaitez-vous l'ajouter à votre jeu afin que les gens
puissent l'acheter, par exemple avec des barrages routiers à titre
d'exemple ici. Mais c'est l'
idée générale d'un sentier. Donc, juste pour des raisons d'
argumentation, d'addition
au pied gauche et au
pied droit du personnage. Et voyons à
quoi ça ressemble. Ça va paraître un
peu fou, mais pourquoi pas ? Vous pouvez voir que cela fonctionne toujours. Vous obtenez donc une trace essentiellement
là où le personnage marche. Et en fait, c'est
aussi très cool. Je peux, je peux imaginer peut-être ceci pour un animal de compagnie ou
quelque chose comme ça. Comme un animal de
compagnie très rare
qui pourrait emprunter l'un de ces sentiers qui seront vraiment,
vraiment géniaux. Mais oui, c'est une
piste et c'est ainsi que vous l'ajoutez
spécifiquement au personnage. Mais honnêtement, vous pouvez l'ajouter pour
qu'il signifie vraiment n'importe quoi. Donc, pour résumer, un parcours peut être ajouté avec deux pièces jointes
différentes. Dans notre cas, nous sommes
en train de le cloner depuis le stockage du serveur,
puis de
l'ajouter au personnage via
deux pièces jointes que nous créons également dans
un script dans ce cas. Et ce n'est pas seulement
faisable pour un personnage, vous pourriez en théorie également l'
ajouter à Kaslow. Pensez à déplacer
différents modèles. Vous pouvez vraiment le faire partout où vous
avez deux pièces jointes. Robot, ce sera tout
pour cette conférence. J'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
33. (Roblox) trois types de GUI: Très bien, continuons
avec les bases de Roblox ici pour le cours sur les robots. Et dans cette conférence,
nous allons jeter un bref
aperçu de la Grèce. La Grèce ou les interfaces graphiques sont essentiellement
des interfaces utilisateur graphiques. Et ils permettent à l'utilisateur interagir avec une interface utilisateur
graphique. Et il en existe essentiellement
deux types différents. Nous pouvons soit
créer quelque chose dans l'interface graphique standard ici, soit créer
quelque chose dans le monde. Commençons par l'interface graphique standard. Et si nous appuyons sur le bouton
plus, vous pouvez voir qu'il nous
suggère déjà l'interface graphique de l'écran et
c'est exactement ce que nous
voulions créer. Nous allons donc
créer une interface graphique d'écran. Et en vertu de cela, nous
pouvons faire un autre avantage. Et puis vous pouvez
voir que nous pouvons
certainement ajouter des objets d'interface utilisateur, par exemple un
cadre. cadre. Et vous le verrez dans
le coin supérieur gauche ici. Maintenant, nous avons un cadre blanc
et nous pouvons même le déplacer, donc nous pouvons le déplacer. Vous pouvez voir que nous avons
quelques lignes directrices. C'est le milieu horizontal, et nous pouvons même
le placer exactement au centre de l'écran. Nous pouvons ensuite le redimensionner pour pouvoir le redimensionner
comme ça, non ? C'est donc plutôt cool.
Nous pouvons donc simplement redimensionner cela comme un grand nombre de choses. pouvez même suivre quelques
lignes directrices,
comme le nombre de pixels qu'il est grand et le nombre de pixels à partir du haut, par exemple et puis à l'intérieur de celui-ci Augmentons simplement la taille un peu plus
ici. Et puis ce que nous pouvons faire, juste au moment où nous le centrons
à nouveau, et voilà. Nous pouvons également ajouter des éléments
à ce cadre. Nous pouvons donc, par exemple, ajouter une étiquette de texte et maintenant nous avons ajouté une étiquette. Nous pouvons aussi lui envoyer ça. Nous pouvons peut-être l'agrandir un
peu et
dire, par exemple , d'accord, nous voulons modifier le texte
affiché sur l'étiquette. Nous pouvons cliquer sur cette
étiquette, puis
descendre jusqu'aux textes qui se
trouvent ici Vous pouvez voir que nous pouvons non seulement
modifier le style du texte, le rendre gras et
peut-être même cursif, est-ce pas ? Nous pouvons faire beaucoup de choses. Nous pouvons créer une étiquette en texte enrichi
et modifier le texte. Donc, par exemple, nous pouvons dire que c'est
un exemple de texte, n'est-ce pas ? Et si je t'envoie ça, hop, c'est fait. Nous pouvons modifier la
taille du texte. Je les veux plus grands. Faisons en sorte que cela soit un
peu plus grand. 32 ans, absolument incroyable. Nous pouvons même créer la balance, afin qu'elle soit mise à l'échelle
automatiquement, comme vous pouvez le voir. Donc, si je redimensionne cet élément
en particulier redimensionné automatiquement,
ce qui est plutôt cool. Mais sortons
ça d'ici. Et vous pouvez également modifier
les textes. Les textes sont également colorés. Vous pouvez donc voir qu'en dessous de ce
texte,
il y a de très nombreuses
propriétés que vous pouvez essentiellement modifier
pour changer cela. En fait, faisons également de
cet audacieux y rien. Et puis nous avons un, eh bien, un élément de texte juste
ici. Plutôt cool. Et vous pouvez voir qu'il
y en a d'autres. Donc, un bouton de texte, par exemple, c'est juste un bouton
avec du texte dessus. Vous pouvez également avoir un bouton d'
image en fait. Cela fonctionnera donc également dans le bouton Image
qui contiendra alors
une image dessus. Vous pouvez cliquer sur ce bouton et
certaines choses se produiront. En fait, nous n'allons
voir
ici qu'un tout petit exemple pour les boutons de texte. Ce ne sera donc que le bouton de fermeture. Nous allons donc simplement passer
du bouton à la fermeture. Et redimensionnons
cela également. Quelque chose comme peut-être
50, ça ira. Ensuite, nous allons
également fabriquer cette balle. Voilà. Et si je clique sur
ce bouton maintenant, rien ne se passera parce que
nous pouvons simplement y jouer, n'est-ce pas ? Si je devais jouer, ce qui
se passerait, c'est que l'interface graphique
apparaîtrait parce que le GYE apparaît
toujours. Et tant que je peux
cliquer sur ce bouton, comme si rien ne se passait et
que le GY persisterait. Mais bien sûr, c'est vrai,
c'est un peu ennuyeux. Donc, ce que vous pouvez faire
, c'est arrêter ça. Et si nous voulions
réellement désactiver cela, nous pouvons
simplement ajouter un script local à notre bouton de texte ici, puis nous pouvons ajouter quelque chose. Donc, par exemple, c'est l'exemple de script de
boutons, n'est-ce pas ? Il s'agit simplement d'un script de bouton. Maintenant, il s'agit d'un
script local car l'interface graphique ne
concerne que notre client, n'est-ce pas ? Uniquement pour notre joueur en particulier. Nous ne devons le faire que
sur le client local. Allons donc chercher le bouton. Le bouton lui-même sert à écrire point parent car, bien sûr, nous faisons référence à
ce script et il fait maintenant référence à ce
bouton en tant que parent. Ensuite, nous pouvons également obtenir le panneau
réel. Il y aura donc le
panneau qui est égal
au bouton, ce parent, n'est-ce pas ? Ce serait donc le cadre lui-même, tout comme le serait le
cadre appelé cadre sans cadre. Et si nous voulions
aller plus loin et accéder à
l'interface graphique de l'écran, nous pouvons alors dire
frame point parent. Ce sont donc les
trois que nous avons. Et lorsque nous
voulions vraiment faire quelque chose
, le bouton nous
propose un événement. Bien sûr, ce serait le bouton d'
activation, activé. En fait, voilà.
Il s'agit donc d'un événement ici, laissons l'
événement activé ici. Et nous pouvons
connecter deux points
et créer une nouvelle
fonction ici. Et on n'y trouve
rien ou on n'a pas
besoin de quoi que ce soit. Et puis nous pouvons simplement dire, par exemple avez cliqué sur le bouton d'
impression
ici juste pour l'avoir. Et puis nous pouvons
aussi simplement dire écran. Donc, notre point
d'écran activé sera
égal à faux, ce qui désactivera essentiellement l'écran. C'est plutôt cool. Voyons si cela fonctionne déjà, mais cela devrait déjà fonctionner. Allons-y
et vous pouvez voir, si je clique maintenant sur cette fermeture, vous pouvez voir ButtonClicked
et l'interface graphique a maintenant été désactivée
parce qu'elle a démarré.
Nous sommes ici, celle-ci a été essentiellement désactivée maintenant elle ne l'a
pas été historiquement, parce que l'interface graphique est bien
sûr également enregistrée quelque part ici dans l'
espace de travail ou ailleurs, probablement ailleurs,
mais c'est reproduit. Et c'est l'idée générale. C'est pourquoi il est ensuite désactivé pour notre
joueur. Plutôt cool. Ce sera donc un
exemple d'interface graphique. Maintenant, une
chose importante à noter, si vous voulez, par exemple, avoir une image, n'est-ce pas ? Donc, si nous voulons ajouter une étiquette d'image ici
et la centrer, vous devez remplacer cette
image par autre chose. Le problème, c'est que vous ne pouvez pas vraiment le
changer en quoi que ce soit. Donc, pour le moment, notre jeu
n'est pas publié sur Roblox. C'est délibéré,
et c'est pourquoi
nous pouvons ajouter une
image personnalisée ici dès maintenant. À compter de ce moment,
dès que nous publierons notre jeu. Ensuite, nous pouvons accéder à
la possibilité d'ajouter également des images, puis nous pouvons
également ajouter une image ici. Gardez donc cela à l'esprit.
Nous allons continuer comme
ça pour le moment. Et nous allons en fait
accéder à l'
interface graphique de l'écran et l'activer, la désactiver. Ensuite, nous allons
voir les deux autres interfaces graphiques. Il existe donc un autre type d'interface graphique. Disons simplement que nous
voulons ajouter ceci à, disons à ce
bloc en particulier, le clicker. Et ce que nous pouvons faire,
c'est faire un plus ici et
saisir une interface graphique,
et vous pouvez voir que nous
pouvons ajouter une
interface graphique pour panneaux d'affichage ainsi qu'une interface graphique pour surface. Ajoutons tout d'abord une interface graphique de surface et voyons
de quoi il s'agit. Je pense donc qu'il n'y a que Clicker. Nous pouvons désormais également y ajouter certaines
choses. Vous pouvez donc voir que c'
est de ce côté. Maintenant, changeons de visage. Ce sera une couverture. Nous voulons probablement la
droite ou la gauche. En effet, voilà. Et maintenant, nous l'avons sur
ce site en particulier. Vous pouvez donc voir qu'
il y a une étiquette. Si je dézoome,
c'est à peine lisible. Si je zoome un peu
, c'est beaucoup plus lisible, et nous pouvons changer cela. Donc, dans l'étiquette des textes ici, nous pouvons entrer ici et modifier
certaines choses. Tout d'abord, modifiez les textes ici. Ce n'est donc qu'
un exemple de texte. Voilà. Si nous voulions déplacer
cela, nous pouvons le faire. Donc, en fonction de
la position entre X et Y, sachez
maintenant que la mise à l'échelle et le
décalage ici sont assez importants. Donc, par exemple, si nous faisons
un décalage de 50, nous nous déplaçons réellement. Si vous faites une gamme, alors vous devriez faire
0,1 et des trucs comme ça. Parce
que sinon, ce serait comme le mettre
hors service. Disons, par exemple, 25,
tout d'un coup cela est centré sur l'
écran ici. Agrandissons également ce
texte
pour qu'il soit un
peu plus facile à lire. 32, peut-être un peu
trop grand, peut-être 26. Oui, voilà. Et
maintenant, nous l'avons ici. Donc, si nous devions maintenant jouer
et nous y atteler réellement, et vous pourriez voir où c'est ? Ça y est. C'est donc difficile à lire et
puis à un moment donné, cela devient un
peu plus agréable à lire. Ce n'est donc peut-être pas toujours la bonne
chose à faire. Cependant, il s'agit d'une interface graphique de surface, c'est
donc une interface graphique que vous
pouvez placer sur une surface. Mais enfin, nous avons
le troisième. Et si nous ajoutons ceci, il s'agit de l'interface graphique du panneau d'affichage. Maintenant, l'interface graphique du panneau d'affichage est intéressante car elle est parfois
un peu bizarre, mais ajoutons-y simplement
un cadre. Et vous pouvez voir en ce moment qu'il se trouve au milieu de cet objet. Nous pouvons modifier la position en utilisant ces statistiques
décalées ici. Disons que je veux
augmenter ce nombre de départs de dix points, et maintenant c'est terminé. Maintenant, lorsque je zoome en avant et en arrière, vous pouvez voir qu'il change
de taille car il veut essentiellement toujours conserver sa
taille sur cet écran. Donc, si nous nous assurons simplement
que tout cela est configuré, donc dans le cadre, nous voulons utiliser comme taille un, la virgule zéro, puis
10 ici également. Parce que nous nous sommes toujours posé
la question, et voilà. Nous voulons toujours que le cadre
remplisse parfaitement l'interface graphique. L'idée générale
est la suivante : si vous utilisez l'échelle de taille ci-dessus, elle suffira à 100 %. Si j'en veux la
moitié, je pourrais faire
0,10, 0,05 serait 5 %, 0,5 serait la moitié. Alors maintenant, il occupe la
moitié de l'
interface graphique du panneau d'affichage , comme vous pouvez le voir, n'est-ce pas ? Et puis, bien sûr,
cela signifierait que j'en occupe
100 %. Si j'ajoute ensuite une
étiquette de texte ici, n'est-ce pas ? Maintenant que nous avons
l'étiquette des textes, changeons l'étiquette de
texte elle-même. Disons donc qu'il va
être un peu plus grand. Nous sommes 32, euh,
peut-être que nous allons en faire 28 et ça ira. Et puis je
cliquerai sur le texte. Et voilà, non ? Et
si je devais simplement m'inscrire ,
voyons à quoi cela
va ressembler. Donc, si je change d'appareil photo ici, tout
ira bien. Il s'agit en fait d'une interface graphique de panneau d'affichage plutôt
sympa. Maintenant, il est affecté par
la lumière d'ici. Nous pouvons également changer cela,
mais dans l'ensemble, c'est plutôt cool. Mais maintenant, voyons ce qui
se passe si je continue je continue éloigner et à m'
éloigner. Et vous pouvez voir que c'est une chose étrange qui
se produit, n'est-ce pas ? Donc à ce stade, ça devient
énorme, idiots, assez gros. Maintenant, nous pouvons toujours le lire, ce qui est
plutôt génial, mais il devient assez gros. Et peut-être, pour être
honnête, avons-nous vraiment besoin
de savoir ce
qui se passe ici pour
une centaine d'études. Pas vraiment. Peut-être que
cela devrait se produire
n'importe où ici, ce serait probablement suffisant. Et nous pouvons changer cela en accédant à nouveau à l'interface graphique du panneau d'affichage et en redescendant jusqu'à
la distance maximale. heure actuelle, c'est infini,
donc cela
montre simplement n'importe où
vous vous trouvez dans le monde. Et peut-être disons
50 ici et voyons si cela fait quelque chose
et si cela
fera certainement quelque chose, mais ça allait arriver,
eh bien, voilà. Il fait exactement
ce que nous voulions. Donc, si nous en sommes loin,
cela ne se voit pas. Et puis, nous n'
avons pas non plus cet étrange problème de taille. Et si on entre dans un
certain rayon, cela fait 50 états. Donc, la caméra doit l'
être, pour que je puisse afficher parfois et parfois non, mais ça ne devrait pas
être tout à fait correct. Et puis, si nous sommes
ici, vous pouvez le voir clairement et c'est plutôt cool. Mais la taille ici est
en fait la chose la plus importante. Donc, avoir l'échelle et les
coordonnées x et y ne font qu'un. Donc, en gros, pour
remplir l'interface graphique du panneau d'affichage, puis généralement, la
mise
à l'échelle fera exactement ce que vous
voulez. Et ce sont les trois interfaces graphiques, l'écran, l'interface utilisateur de la surface et l'
interface graphique du panneau d'affichage. Très intéressant en effet, cela conclut
cette conférence ici même. J'espère que vous avez trouvé cela utile et appris quelque chose de
nouveau. Je vous verrai tous lors de la prochaine
conférence. Alors oui.
34. Références d'API (Roblox): Très bien, nous allons continuer
avec les bases des robots ici pour le cours. Et dans cette conférence,
nous sommes en fait dans les références de l'API Roblox Engine plutôt que dans Roblox Studio. Parce que c'est essentiellement
là que je vous montre un aperçu général de la façon dont vous
pouvez utiliser create robots.com. Je vais également lier cela dans
les ressources. Et c'est une très bonne
ressource qui vous permettra, comme vous pouvez le constater, de comprendre la logique vos expériences et de vos
obstacles. Donc, en gros, vous avez
accès à toutes
les différentes classes
et types de données à
tout ce qui peut s'
y trouver et que vous
souhaitez consulter. Donc, par exemple, ce que
nous avons vu auparavant, nous l'avons vu avant le détecteur de
peste, par exemple
, cliquons dessus
et vous pourrez le voir. Un détecteur de clics permet un script et à un
script local de recevoir un pointeur provenant d'un objet 3D par le biais d'un clic de souris. Absolument fou. En gros, cela
vous montre beaucoup de choses. Cela vous montre un
exemple ici et explique en grande partie comment
cela fonctionne, n'est-ce pas ? Vous
trouverez ici certains exemples de
code que vous pouvez
ensuite comprendre. Et il y a même un
résumé qui vous donne les propriétés de cette classe
particulière. Il vous donne les méthodes et
les événements que vous pouvez utiliser. Et c'est absolument incroyable. Je ne veux donc pas
entrer dans les détails, mais ils sont également liés par des hyperliens. Donc, par exemple, si je me dis : « Oh, quel est le script ?
Cliquez dessus. Bam, c'est un script. C'est absolument incroyable et je ne saurais trop
le recommander. Si vous ne savez pas
ce que
fait quelque chose ou comment cela
fonctionne ? Qu'est-ce que ce duel ? Nous venons de parler
des interfaces graphiques, par exemple, de droite. Passons donc à l'interface graphique du
panneau d'affichage, par exemple BAM. Mais ce sont des conteneurs
pour les objets de l'interface graphique. Vous pouvez voir que leur position est relative à une parure. S'il n'y a pas de
genou adoré, alors le parent est placé en dessous,
des choses comme ça. Il y a tellement de choses
intéressantes que vous pouvez regarder
ici. C'est en fait insensé. Je voudrais être bref et doux s'il y a quelque chose que vous voulez apprendre sur certains
des principes fondamentaux dont nous avons parlé jusqu'à présent, n'est-ce pas ? Si vous avez lu
l'introduction aux toilettes, vous comprenez un peu Lewis. Si vous avez franchi les obstacles de base maintenant
et que vous êtes dans la norme. La plupart des notions de base que
nous avons abordées. Vous pouvez presque
suivre n'importe quel cours ici et comprendre à peu près
ce qui se passe. Bien sûr, certains d'
entre eux se situent
peut-être un
peu plus haut,
peut-être que certains éléments d'
animation et
d'autres choses sont peut-être que certains éléments d'
animation et peut-être un peu trop loin pour
le moment, n'est-ce pas ? Avec un cloud et le stockage de
certains services, certaines choses peuvent
encore vous échapper, mais c'est vraiment génial de l'
avoir à votre disposition. Et c'est tellement cool
que vous pouvez simplement lire et obtenir de plus en
plus d'informations. Ce que vous trouverez également sur
certains d'entre eux, c'est qu'
ils sont peut-être obsolètes. Donc, je pense que d'accord, la vitesse angulaire n'est
en fait pas obsolète. Eh bien, certaines
choses sont obsolètes, n'est-ce pas ? Nous pouvons donc réellement
voir des choses ici, par exemple, la position du corps ici est obsolète et ne
doit pas être utilisée, mais elle vous indique toujours ce que vous devez utiliser à la place, n'est-ce pas ? C'est donc un vieux modèle et
c'est vraiment, vraiment cool. Je ne saurais donc trop exprimer quel point l'
API du moteur est cool ici. Comme je l'ai dit, je vais créer un lien. Il possède une telle ressource. Je vous en prie, jetez-y un
coup d'œil, n'est-ce pas ? Mais cela met fin à cette conférence et met fin aux bases des obstacles. À l'étape suivante,
nous allons créer notre premier jeu,
qui sera un ABI. J'espère donc vous y
voir. Oui.
35. Introduction (Roblox) et comment cette section est construite: Très bien, bienvenue à la première conférence de
la section militaire. Et je veux juste mentionner
rapidement type d'OB que
nous allons créer. C'est donc le RB fini qui va
être essentiellement fait. Et si j'
apparais, je vais en fait
apparaître à la fin, mais ça
ira très bien. On peut alors voir essentiellement l'
Avi vers la fin. Vous pouvez donc voir que nous avons des formes
différentes ici. Nous avons des objets mobiles, donc des
briques mobiles que vous ne pouvez pas toucher. Ils se déplacent tous dans
des domaines différents. Cela se fait avec le service d'
interpolation ici. Nous avons des escaliers qui vont disparaître lorsque vous les touchez. Et puis nous avons
juste quelques
briques de destruction et d'autres
choses encore. Donc c'est vraiment génial
et ça va être un RB vraiment, vraiment cool. Bien sûr, je
le fais dans le mauvais sens, mais
c'est très bien. Et voilà. C'est donc l'idée générale du camping-car que nous
allons créer. Des choses vraiment cool ici, il est
vivement recommandé de regarder. Et chaque cours comportera
bien sûr un fichier Excel RB à
télécharger. Vous pouvez donc
télécharger le RB dans n'importe quel état dans lequel vous
souhaitez continuer à l'utiliser. J'espère vraiment que vous
prendrez plaisir à fabriquer le camping-car et
à bientôt lors de la prochaine conférence. Donc, oui.
36. (Roblox) modélisation de the: Très bien, bon retour
au cours Roblox. Et dans cette conférence,
nous allons en fait créer
une ABI pour cela. Comme vous pouvez le constater,
nous sommes en fait dans Roblox Studio où nous
pouvons créer un nouveau lieu. Dans ce cas, je veux que
vous choisissiez RB pour cela, car cela nous
permet de copier au moins trois ou quatre choses différentes qui ont déjà été créées pour nous. Et cela va simplement faciliter
la vie de notre obstétricien. Choisissons donc RB
et vous verrez que le jeu commence et vous
pouvez voir que c'est notre exemple. Je viendrai ici. L'idée
générale est donc la suivante il s'agit du modèle
de Roblox lui-même. Et vous pouvez voir qu'il y
a une étoile ici. Nous avons
déjà quelques points de contrôle ici, ainsi que violets
, puis des points de contrôle rouges
qui sont des briques détruites. Et oui, c'est à
peu près ce que nous avons. Et la première chose que
nous allons faire est enregistrer
sous forme de fichier. Je vais juste l'appeler RB1. Et ce sera le
fichier que vous pourrez télécharger après cette conférence. Quoi qu'il en soit, quelles sont les
parties que nous voulons économiser. Eh bien, pour les
besoins de la discussion,
jouons et voyons
ce que ce RB peut faire. Nous allons évidemment apparaître ici au début, puis nous pourrons passer à
la première partie. Et la seule chose, c'est que si nous ne touchons pas la partie
centrale, nous n'
obtiendrons pas ce point de contrôle nous allons
le réparer immédiatement. Et puis, si nous
continuons ici, vous y êtes. Vous pouvez les voir. Ils fixent la vitesse
ici, vous devez donc
faire attention lorsque vous vous déplacez dessus et que vous sautez d'eux. Et voilà. Et puis les
briques de destruction, bien sûr, vous tueront si vous les touchez. Tu dois donc faire attention à
ça. Et voilà. C'est en fait ce que
j'ai fait ici, mais ne vous inquiétez pas du tout. Eh bien, pas de soucis du tout. Essayons encore une fois. Donc quelque chose comme ça. Et voilà. Maintenant, nous l'avons. Allons-y. Et puis le dernier n'est qu'
une rampe de saut ici. Vous pouvez donc voir si vous sautez
dessus, alors c'est parti. Et maintenant, nous avons pratiquement
terminé le RB. Maintenant, il ne
se passe rien, n'est-ce pas ? Il n'y a pas de grande fanfare
ou quoi que ce soit de ce genre. Mais c'est une très bonne base sur
laquelle commencer à construire. Et c'est pourquoi je le voulais. En gros, quand
vous serez de retour ici, vous devriez accéder à la sélection
et vous pouvez enchérir . Supprimez simplement ces parties ici et nous
pourrons les redimensionner. Maintenant, nous allons
essentiellement concevoir l'OB. Et nous allons avoir
certaines fonctionnalités qui n'ont pas
encore été implémentées parce que instant je
voulais juste concevoir une forme approximative pour
l'ABI, n'est-ce pas ? Je veux juste placer
des points de contrôle. Je veux placer
des pierres mortelles, des obstacles
intéressants, puis nous allons
continuer à partir de là. Donc, la première chose que je
recommande ici pour les points de
contrôle est de les dimensionner. Vous pouvez donc les sélectionner,
accéder à l'outil de mise à l'échelle, puis appuyer sur Shift. Ensuite, il va les
étendre pratiquement dans toutes les
directions simultanément. Et nous voulons les étendre à une plus grande échelle .
Regardons où nous en sommes. À ce stade 0,92, 0,5, et que diriez-vous de 99, virgule
trois, virgule neuf. Je pense que ça devrait aller. Et puis nous en avons un gros. Maintenant,
vous pouvez également dire que c'est
peut-être trop important pour nous pour que nous puissions également le
changer. Peut-être voulons-nous que ce soit
plus plat, alors ce sera un. Et voilà. Je pense qu'un neuf par neuf,
c'est plutôt bien. Maintenant, si le joueur
touche le tout, il enregistrera
ce point de contrôle, qui est celui-ci. C'est un peu bizarre qu'ils aient fait ça, mais ce n'est pas grave. Alors, pourquoi ne pas vous procurer deux de ces convoyeurs pour
que l'un d'entre eux puisse varier. Passons à gauche et prenons un convoyeur qui
se dirige vers la droite. Nous pouvons donc simplement
sélectionner l'un d'entre eux, maintenir la touche Shift enfoncée et sélectionner l'autre. Ensuite, nous pouvons simplement
les découper en appuyant sur Control X et Control V
pour les recoller. Maintenant, notez qu'ils
se
trouveront en bas de l'espace de travail, mais nous pouvons résoudre ce problème
en un instant. Pour le moment. Je veux juste
les enregistrer ici dès le départ. Je vais
faire la même chose avec un kill brick. Je vais juste
copier ce contrôle C puis le contrôle V
pour le recoller. Et puis j'ai aussi le Kill
Brick ici. Et puis nous pourrons l'utiliser plus tard pour toutes sortes de choses
différentes. Et puis je vais
faire la même
chose pour le trampoline. Vous pouvez voir qu'
il y a une surface G. Et cette surface
Juif, je vais la
désactiver elle-même
dans le jeu. Je crois que c'est
ce qu'est le scénario. Quatre, comme vous pouvez le constater, l'
interface graphique de surface activée équivaut à faux. C'est pourquoi il y a un script et c'est pourquoi cela
ne s'affiche pas. Donc, ce n'est que pour ce que vous, pendant que vous créez
le jeu lui-même, ce qui est plutôt
génial en fait. Copions donc cela également. Et voilà. Et
allons-y. Ensuite, nous pouvons presque simplement supprimer tout le reste parce que
tout le reste n'est en quelque sorte pas vraiment nécessaire pour
le moment, n'est-ce pas ? Supprimons donc
tout sauf cela. Et voilà.
Nous avons donc maintenant la boutique d' une armée et nous avons presque tout
supprimé. C'est très bien. Et vous pouvez le voir
dans l'espace de travail, maintenant tout
est configuré de manière aléatoire. Donc, les points de contrôle,
c'est le premier point de contrôle. C'est bien. Changeons cela également. Rendons cela un
peu plus intéressant. Nous allons donc commencer par, alors peut-être quelque chose comme ça. Peut-être voulons-nous l'étendre
un peu. Et nous allons
déplacer cela. Et ce que je veux faire, c'est
construire une rampe jusqu'ici. Nous allons donc simplement dupliquer ce Control D pour le dupliquer. Ensuite, nous pouvons le
faire pivoter. Et
assurons-nous que vous y êtes. Oui, c'est quelque chose que l'un de ceux qui pensent
que quelqu'un comme
ça peut faire, c'est que vous pouvez
peut-être faire quelque chose comme ça. C'est donc un peu
plus délicat, non ? Tu dois sauter par
le côté, baisser un
peu plus, que ce soit presque le
même. Et voilà. Et puis on a eu ça. Alors maintenant, tu dois monter
ici et puis en fait. Encore un. Oui,
voilà. Alors tu vas ici, saute ici. Et ce qui est très important
avec le camping-car
ici , ce sont aussi des tests fréquents parce que parfois vous vous dites
: « Oh, cela devrait être
très facile à faire ». Et puis tu te
rends compte, attends une seconde, c'est
vraiment une étape très difficile et que ce n'est pas vraiment
ce que tu veux faire. Ensuite, construisons une
rampe qui descend ici. Faisons donc ceci,
cela et quelque chose comme ça. Et puis
voilà. Ça va ? C' est donc l'une de ces choses où
il suffit d'essayer un
tas de choses différentes. Et c'est là que la modélisation
est très subjective. Tu peux tout suivre
exactement comme je le fais. Ou vous pouvez simplement regarder
cette conférence et ensuite copier le fichier à partir de la terminée ou simplement jeter un
œil à la conférence terminée. Et l'idée est donc
également importante. Vous voulez le rendre
plus coloré. Si tu gardes ces briques
grises comme de la pierre ici, c'est vraiment
très ennuyeux, non ? Vous pouvez donc simplement
les sélectionner et vous pouvez dire : « Hé, c'est censé être peut-être comme un bleu
ici, un bleu électrique. Oui. Et puis celui-ci
devrait être comme un cyan, non ? Et puis celui-ci devrait
peut-être être d'un bleu pastel. Et puis tout d'un coup,
tu as un état bleu. Et puis
voilà. Nous pouvons jouer à ça. Et vous verrez que vous pouvez y jouer
immédiatement. Nous y voilà. Nous pouvons donc simplement marcher jusqu'ici
et sauter ici,
aller ici, et puis
ils termineront la première étape. Maintenant, bien sûr, cela
dépend
du type de RB que vous voulez
créer, n'est-ce pas ? Si vous voulez créer
une armée inconditionnelle, c'est vraiment difficile et vous pouvez
bien sûr le faire. D'habitude, les gens préfèrent RB un
peu plus facile
et plus facile,
mais c' est très bien que cela
ne tienne qu'à vous de décider. Vous pouvez le concevoir
comme vous le souhaitez. Continuons donc et créons réellement
quelque chose ici. Nous allons donc créer une
sorte de passerelle. Nous allons donc simplement l'étendre
à nouveau, un
peu plus longtemps et peut-être un
peu plus loin également. Donc, un dans chaque direction. Je pense que c'est plutôt bien. Et maintenant, je veux
utiliser le kill brick. Alors, comment
les utiliser pendant que je vais
les dupliquer ? Contrôle D, je vais m'assurer choisir celui que
je viens de créer. Je vais le mettre sous les briques
mortes ici. La façon dont l'
espace de travail est organisé ici repose essentiellement sur la
fonction, n'est-ce pas ? Nous avons donc toutes les
briques essentielles réunies. Nous avons
réuni toute la structure OB , à
l'exception des
trampolines, des convoyeurs, de
tous les points de contrôle, vous pouvez également le faire par étapes. Cependant, je pense généralement que c'est une meilleure configuration,
car certains loisirs font environ 500 pages. Et d'habitude, c'est mieux ainsi, car
dans le jeu, la place de
la vue du jeu, vous pouvez toujours cliquer sur
quelque chose et cela sera en évidence dans
l'Explorateur de toute façon. Vous n'avez donc pas vraiment
besoin de le configurer manière à afficher chaque
état individuellement. Donc, ce que nous allons
faire, c'est
faire en sorte que vous deviez
sauter par-dessus les
briques de la mort ici. Dupliquons cela
à nouveau, puis allons-y. Non, pas là-bas,
ça serait un peu bizarre. Et puis un
autre, dupliquez-le. Et puis peut-être
quelque chose comme ça. Et voilà. Et puis un à
la fin, ici aussi. Agrandissons simplement cela
un peu afin de pouvoir l'étendre
encore plus. Ensuite, nous pouvons simplement déplacer
ce gars ici. Je pense que ça
devrait être joli, oui, ça devrait
être très bien. Et ici, bien sûr,
en changeant à nouveau
la couleur parce que cela
vous donnera un joli contraste. Peut-être déplacer un
peu ce gars. Et voilà. Donc en fait, j'
aime bien ça en ce moment. Bien sûr, une fois cette étape
terminée, vous aurez besoin d'un autre point contrôle pour
pouvoir
le dupliquer, cliquer sur le
point de contrôle D, puis nous allons simplement le déplacer ici,
pour assurer qu'il ne soit pas trop haut, n'est-ce pas ? Parce que si vous dupliquez
quelque chose, ce sera
toujours
comme si vous le mettiez plus haut, ce qui est un peu bizarre
parfois, mais voilà. Et c'est à peu près ça. Maintenant, la prochaine chose que l'on voit
habituellement et que l'on aime beaucoup, donc je vais copier la
partie ici, c'est les escaliers. Nous allons donc
essayer de faire des escaliers. Maintenant. Ils peuvent en fait être assez difficiles à obtenir à 100%. Mais ils sont quand même assez
géniaux. Nous allons donc juste
faire des escaliers. Et puis plus tard, nous pourrions, par exemple si nous voulions
les faire disparaître, n'est-ce pas ? Vous pouvez donc faire en
sorte que lorsque vous montez les escaliers où ils disparaissent derrière vous, cela ait toujours
un effet cool et les gens ont l'air d'aimer ça. Alors, comment s'y prendre
réellement ? Vous pouvez le faire de deux manières
. Ce que je veux essentiellement
faire,
c'est tout d'abord créer un nouveau dossier, je vais en fait
cliquer avec le bouton droit sur la partie et je vais
créer un nouveau dossier. Et je vais appeler
ça les escaliers. Je vais appeler les
escaliers 90 parce que nous allons faire des escaliers
à 90 degrés. En gros, nous allons
construire des escaliers qui vont de cette orientation à une
orientation parfaite , n'est-ce pas ? Cela signifie donc essentiellement
que nous montons et nous allons
ensuite nous
retrouver dans cette direction. Et je veux l'avoir
parce que vous pouvez alors combiner ces escaliers
avec un autre escalier et vous pouvez alors avoir 180 marches et
même 270 marches. Et même si 360 marches et
continuez à monter, en
théorie, si vous le souhaitez. Alors
dupliquons celui-ci. Et ce que tu veux faire, c'est
faire pivoter ça. Cependant, pour le moment,
par défaut, si nous devions le faire pivoter, nous le ferons pivoter
de 48, 25 degrés. Oui, 25,5 degrés
, c'est un
peu trop, non ? Vous pouvez donc voir si nous
devions déplacer cet espace comme c'était un
espace bien trop grand pour les escaliers, n'est-ce pas ? Vous voulez donc désactiver la rotation ici et vous voulez effectuer une rotation libre. Vous pouvez donc maintenant le faire pivoter d' aussi peu ou autant de degrés
que vous le souhaitez. Et c'est là
que tout dépend de vos préférences personnelles, de l'
endroit où vous voulez aller. va de même pour le déménagement À l'heure
actuelle, nous
allons désactiver le déménagement ici afin de
pouvoir les déplacer à Lake. Un nombre infime d'études. Et tu peux toujours
vérifier ça, non ? Vous pouvez toujours regarder ça
de face et vous demander :
« D'accord, est-ce que ça
ressemble à des escaliers, non ? J'aime vraiment un peu, d'accord , ce sommet me semble approprié. D'accord ? Peut-être voulons-nous l'
étendre
un peu plus, puis
nous pourrons dupliquer celui-ci. Et comme il y a
toujours des places au top, en fait, c'est
vraiment cool. Nous pouvons donc le faire pivoter un
peu plus, le déplacer à nouveau, le refaire et le
faire pivoter un peu plus. Et vous pouvez faire les escaliers soient aussi grands ou aussi petits que vous le souhaitez. Maintenant, dans notre cas, jetons un autre coup d'œil.
Jetons juste un coup d'œil. À des fins de débogage.
Ce que je recommande vivement, c'est de
dupliquer le début. C'est un peu bizarre, mais soyez
indulgent avec moi un moment. Vous prenez le
Stuart original et vous désactivez pour le
rendre activé faux, puis vous revenez à l'
autre et vous le déplacez
simplement vers l'étape que vous
souhaitez tester ici. Parce que sinon, vous
devez toujours jouer le RB en entier. Et c'est généralement
très bizarre, très étrange. Nous pouvons donc voir que cela fonctionnerait. Donc, les escaliers, leur
travail, c'est bien. Nous n'en avons pas besoin,
nous n'avons pas besoin y aller
et ensuite ils Nous pouvons simplement continuer et continuer
à alterner. Comme je l'ai dit, vous pouvez les rendre aussi grands ou aussi petits que vous le souhaitez. Vous pouvez ajouter autant d'
escaliers, n'est-ce pas ? Vous pouvez dire : Oh, vous savez quoi, je veux juste une petite
rotation à chaque fois ou peut-être un peu moins, peu plus,
quelque chose comme ça. Il suffit également de les
déplacer pour qu'ils n'aient pas toujours la même apparence ou pour
que vous puissiez les rendre très précis. C'est donc quelque chose vous voulez
parfois être très précis. Si vous voulez une image très précise, vous pouvez toujours passer
à la transformation ici et modifier l'orientation
manuellement à
l' aide
de chiffres plutôt que simplement à l'œil nu, n'est-ce pas ? Parce que pour l'instant, je le fais
juste en me disant : « Oui,
ça a l'air bien ».
Ça a l'air juste. C'est donc une
chose que vous pouvez également toujours garder à l'esprit. Et nous approchons
de la rotation que nous souhaitons
très, très rapidement. Vous pouvez donc voir que nous
allons simplement continuer sur
cette voie à peu près comme je l'ai dit. Et puis une autre. Et puis, à la fin
, nous
devons absolument utiliser les chiffres qui s'y
trouvent, mais ça
ira très bien. Parce qu'à la fin,
nous pouvons le faire. Alors faisons-en un autre
et un autre ici. Parfois, la vue est
un peu incroyable. Nous voudrions juste
revenir un peu en arrière. Et voilà, redimensionnez-le,
puis faites-le pivoter à nouveau. Cela pourrait en fait
reculer un tout petit peu. Nous pouvons donc simplement le
faire pivoter un
peu plus vers l'arrière pour
qu'il n'y ait pas d'espace, car en
gros, je ne veux
pas d'espace ici. Peut-être une rotation
un peu plus importante où nous
ajouterons à ce stade -98, c'est plutôt bien. Nous sommes donc presque à -90 degrés,
car dès que
nous sommes à 90 degrés,
nous savons que nous avons atteint
notre car dès que
nous sommes à 90 degrés, objectif,
mais nous n'y sommes pas encore tout à fait. Donc probablement un couple de plus. Où en sommes-nous maintenant ? -92. D'accord. Je pense que maintenant celui-ci
va être le -90. Maintenant, nous voulons passer à
la transformation vers l'orientation et nous voulons simplement
faire zéro moins 90. Et vous pouvez voir maintenant que c'est en fait parfaitement
dans cette direction. Donc, si nous devions l'agrandir,
vous pouvez voir que c'est maintenant un angle exact de 90 degrés,
ce qui est vraiment impressionnant. Nous pouvons donc simplement reprendre
le point de contrôle, le déplacer vers le haut, aller ici, et maintenant nous avons un point de contrôle
après les escaliers. Maintenant, peut-être que vous
voulez ajouter un autre saut ici avant d'y entrer. Cela pourrait également être
le cas, non ? Alors, il suffit de configurer ça. Et voilà. Allons-y un peu. Quelque chose comme ça
pourrait être très bien, et alors tout devrait bien se passer. Ce sont des escaliers. Assurons-nous de retirer
celui-ci, car
il ne fait pas partie
des escaliers et nous
avons maintenant un escalier à 90 degrés. Ce que je recommande ici, c'est également de
le dupliquer, n'est-ce pas ? Donc, il suffit de contrôler D et
vous pouvez simplement le déplacer. Et ce que tu peux faire
est vraiment génial. Parce que maintenant, en théorie, vous pouvez simplement le dupliquer à nouveau. Je prends tous ces escaliers, les
fais monter
et je les fais monter. Et voilà. Et vous pouvez faire pivoter
tous les escaliers ici. Mais il est important de faire pivoter de 90 degrés. Maintenant, faisons pivoter
cela de 90 degrés. Et tout d'un coup,
regardez ça, non ? Je peux juste les mettre un
an et les mettre ici. Et ils conviennent presque. C'est juste que nous
devons le faire un petit peu. Et voilà. Juste un peu plus haut, un
peu plus haut ou pas. Assurez-vous qu'il n'a pas
bougé individuellement. Vous voulez les déplacer
ensemble, puis ils s'en vont. Et maintenant, nous avons un escalier. Maintenant, ils ont l'air un
peu bizarres, mais voyons
moi, et voilà. En fait, c'est presque parfait. Tu ne le remarqueras même
pas. Maintenant, nous avons en fait 180 braqueurs, donc
des escaliers à 180 degrés, donc nous pouvons prendre toutes ces pièces, les
mettre dans l'
autre, laisser le dossier vide et
ensuite nous pouvons appeler cela, il suffit de renommer ces deux escaliers 180. Parce que maintenant, nous devons
vouloir AT Stairs et nous allons
encore une fois enregistrer cela ici,
au début, où nous
avons pratiquement tout enregistré. Ça va
bien se passer. Et voilà. Donc, c'est un taux de participation
vraiment impressionnant. En théorie, nous pouvons
également avoir 180 marches. C'est peut-être un
peu bizarre de les monter , mais encore une fois, les escaliers ou juste un endroit où vous
n'allez tout simplement pas essayer un tas de choses, n'est-ce pas ? Ces escaliers sont
peut-être un peu raides et un peu étranges, mais au final,
ils devraient fonctionner. Donc, si je vais ici, d'accord, et que je les emmène de
l'autre côté, vous y êtes. J'ai pu monter à pied. C'est donc plutôt génial.
Augmentons en fait, augmentons un
tout petit peu l'écart. Et reprenons une étude. Voilà, peut-être
quelque chose comme
ça , puis
quelque chose comme ça. Alors tu dois sauter par ici. Donc ça va être très
intéressant en effet. Et puis disparaître. Nous allons en fait voir
cela dans une conférence ultérieure. Parce que pour le moment,
nous voulions simplement créer d'autres choses
intéressantes. La prochaine étape, n'est-ce pas ? Donc c'est plutôt
génial, non ? Nous en avons, nous en
avons un peu, nous avons des
briques mortelles ici. Nous avons des escaliers
qui
disparaîtront lors de la prochaine conférence. Et maintenant, je veux continuer ici
, n'est-ce pas ? Alors maintenant, je veux continuer
et je veux juste
créer quelques formes de base. Jetons donc un coup d'
œil à sa taille. Sa taille est de
616, c'est ce que je veux. Et je pense
que c'est vraiment bien. En fait, je vais l'agrandir
un peu. Faites-en 818. Oui, c'est
parfait. C'est super. C'est exactement
ce que j'avais en tête. Et vous pouvez même
changer de position. Personnellement, j'aime
toujours avoir les positions maintenant avec toutes
ces virgules. Je vais donc changer
la position à 20. Je vais le changer à 14, et nous allons le
changer à 105. Je pense que ça
va aller. Ensuite, nous allons simplement
modifier cette position, également en
2105. Et ça va
rendre les choses un peu
tordues, mais ce n'est pas grave. Parce qu'alors,
vous pouvez simplement vous assurer que c'est le cas, vous pouvez simplement le cacher en
le rendant un
peu tordu, puis en l'agrandissant
et en
vous disant :
« Oui, c' est en fait
une passerelle tordue et personne ne devrait
s'en soucier ». Si les gens s'en soucient, ce n'est généralement
pas si grave. Et vous pouvez toujours le
modifier ultérieurement. Parce que c'
est une modélisation, comme vous pouvez le voir, non ? Donc, jusqu'à présent, je fais du mannequinat
depuis une bonne vingtaine de minutes et nous avons déjà
quelques étapes. Et la meilleure chose
à ce sujet, c'est que si vous avez fait des
cèdres, n'est-ce pas ? Donc, cet état, ici, vous pouvez copier cette
étape exacte et la réutiliser plus tard d'une
manière
un peu différente. Vous devez donc toujours garder à l' esprit que vous pouvez
toujours réutiliser les étapes. En fait, je ne
veux pas que cela soit alterné. En fait, je pense que le zéro moins zéro
est correct. On va juste
le faire comme ça. Nous allons juste l'
agrandir. Oui. Quelque chose comme ça. Peut-être juste une
grande plateforme. Et voilà. OK, c'est bien. Et maintenant, nous pouvons
passer à celui-ci. Alors, que va faire
celui-ci ? Eh bien, celui-ci va, celui-ci va
tuer des briques entre les deux. Sélectionnez une brique destructrice. OK, je ne sais pas
ce qui s'est passé, mais pour une raison ou une
autre, ces ports
sont en danger. Je ne sais pas comment c'
est arrivé, mais bon. Nous voulons, bien entendu, les intégrer la structure OB.
Et voilà. Et maintenant, nous pouvons
dupliquer ce Kubrick. Je ne sais pas comment
ça s'est passé. Si c'
était arrivé, je ne sais pas, mais si quelque chose
comme ça se produit, tu devrais le
découvrir assez rapidement. Ensuite, vous pouvez
toujours corriger le fait que nos plateformes
individuelles et entre ces plateformes, je veux avoir
la pierre angulaire ici. Et je veux qu'il en soit ainsi ou je ne veux pas
qu'ils s'étendent de cette façon. Je veux qu'ils
se déplacent un peu comme ça. Maintenant, nous n'allons pas
réimplémenter le mouvement dans cette conférence, pour
le moment, nous ne faisons que tout
modéliser. Parce que le plus important ce
sujet et à ce sujet, c'est aussi ,
je veux dire, j'en ai déjà
parlé, c'est que vous voulez simplement vous
assurer que lorsque vous
créez quelque chose comme ça,
en particulier, vous le faites étape par étape. Vous n'avez pas nécessairement besoin de tout
faire en même temps. Il suffit de modéliser d'
abord
le RB , puis toutes les fonctionnalités, le mouvement de certaines pièces, la disparition d'autres pièces, façon dont vous affichez quelque chose, droite
et dans le classement, et tout ça, vous pourrez toujours le faire
plus tard. Alors, que diriez-vous de ça ? Je pense que c'
est plutôt bien. Et je pense que nous
pouvons ensuite simplement copier le truc ici et nous allons
simplement remplacer celui-ci. Nous allons donc simplement
remplacer celui-ci par notre fidèle ancien point de contrôle, où nous devrons également changer
les choses à l'avenir. Mais encore une fois, rien de tout
cela n'a d'importance pour le moment,
nous voulons juste modéliser quelque chose et c'est déjà
assez bon. J'en suis donc plutôt content. Nous avons du mouvement ici, nous avons un autre
mouvement ici. Et puis la dernière chose que nous allons
faire, c'est tout d'abord de le recolorer parce que pour les étapes
vertes, cela fait en fait trois étapes vertes
à ce stade. Bien que cela ne puisse pas durer, recolorons
tout cela également. Allons-y et faisons-le, et
si nous n'en faisions pas un kaki rouge, peut-être une sorte de kaki rose
clair. Très bien. OK, c'est la
couleur du rivage en kaki. Ensuite, nous allons juste nous
assurer de
les prendre tous et nous saurons que je ne
veux pas les déplacer. Tu es fou ? Je voulais juste les sélectionner et ensuite les recolorer, peut-être en jaune,
ça ira. Le jaune et le rouge
fonctionnent en fait très bien ensemble. Ensuite, nous devons
vérifier
ce qui pourrait se passer ensuite . Alors, que diriez-vous de simplement
copier l'un d'entre eux ? Et ce que
je voulais faire, c'est avoir une forme un peu plus
intéressante ici. Donc, ce que nous allons faire,
c'est prendre ce rôle, je vais
y aller et
faire en sorte qu'il ne soit pas à collectionner. Maintenant, la raison en est que si je la duplique, je peux en fait déplacer la
même pièce à l'intérieur d'elle-même. Et je peux ensuite le
faire pivoter. Et vous pouvez voir
que si je fais réellement cette rotation de 45 degrés, je peux maintenant créer une
petite étoile. Cela semble donc beaucoup plus
intéressant que d'avoir une
plate-forme normale ici. Mais attends une seconde. En fait,
ils ne fonctionnent pas vraiment
parce que maintenant ils peuvent entrer en collision. Le joueur va donc tout simplement
les traverser. C'est vrai. Cependant, si je prends
maintenant ces deux parties, si je les sélectionne toutes les deux
et que je passe à un modèle comme celui-ci,
je peux faire une union. Et si je fais une union, cela créera un nouveau
type de pièce qui est une union et ils
sont maintenant ensemble. Donc, en gros
, toutes les parties du So sont fusionnées. Ils ne sont pas soudés, ils ne font
qu'une seule pièce maintenant. Et si je le savais, je pourrais simplement
réactiver la lumière des bougies. Et maintenant, le joueur peut
entrer en collision avec cette nouvelle partie. C'est donc une
chose vraiment cool que vous pouvez faire. Vous pouvez même aller
plus loin avec cela, ce qui est très intéressant. Vous pouvez donc le faire, par exemple nous allons simplement le
faire avec une autre partie. On peut faire une fausse chandelle. Nous allons créer un nouveau port. Et puis disons, par exemple , que je prends ça et je vais juste un
peu, non ? Comme quelque chose comme
ça et ce fils a une plus petite partie au-dessus
de la plus grande. Et ce que j'ai l'habitude de faire,
c'est de suggérer agrandir un peu
pour que ce soit
comme si vous pouviez voir qu'il parcourt
l'ensemble du réseau. Et si nous en faisons une partie
négative, n'est-ce pas ? Ensuite, nous les sélectionnons toutes
les deux et nous unissons cette couche, tout d'un coup, nous avons un gros trou dans cette partie et c'est
tout à fait correct, n'est-ce pas ? Vous pouvez donc entrer ici
et nous pouvons faire une collision et tout
le joueur tombera
à travers. Donc, en fait, cela rend les
choses beaucoup plus intéressantes
à regarder, n'est-ce pas ? Rangeons donc notre
stock ici et déplaçons-le en
haut, en haut. Parce que je veux vraiment, je
ne veux pas jouer à tout le reste
du niveau pour le moment. Je veux juste que tu te montres
le syndicat et les parties. Nous y voilà. Alors
allons-y et voyons voir. Nous y voilà donc. Et
si je continue ici, vous pouvez voir que c'est ce que nous faisons et que je peux m'en sortir, sans aucun souci, ce qui
est vraiment cool, non ? Ainsi, avec l'union
puis la négation, vous pouvez créer des pièces tellement
intéressantes qui sont complètement différentes des rectangles de lac normaux. Et bien sûr, vous pouvez
également y ajouter des cylindres, des
coins, des
sphères et des sphères. Vous pouvez également
les ajouter et simplement avec eux et un peu d'
union et de négation, vous pouvez créer des choses
assez intéressantes. Appelons donc celui-ci juste pour que nous puissions maintenant en
garder une trace. C'est juste le carré
troué, non ? Et voici la star. Que diriez-vous de ça ? Hein ? Maintenant, nous avons un magasin et une place ici. Donc
c'est plutôt cool. Passons à un autre
type ici. Alors, prenons juste un cylindre. Et nous allons simplement
prendre le cylindre et nous assurer
qu'il
se trouve à l'intérieur de la
structure de l'ego. Maintenant, nous
voulions en fait le faire pivoter de 90 degrés dans cette direction. Et nous pouvons l'
augmenter un peu. Vous pouvez donc voir maintenant que nous sommes arrivés à un cercle ou à un
cylindre ici. Et maintenant, nous pouvons également obtenir
une taille en forme de cercle. Alors voyons voir,
est-ce la même taille ? Ça l'est. Maintenant, nous avons également un cercle.
C'est plutôt cool. Nous y voilà. Nous pouvons maintenant également en
faire le jaune. C'était ce jaune, ce rouge, jaune
vif ? Oui, ça l'est. C'est le but. Tu dois stocker. Nous avons un carré qui tombe et nous avons obtenu un,
disons, un cercle, même si c'est un cylindre, mais tout le monde
sait
ce que c'est, n'est-ce pas ? Donc c'est vraiment comme si
c'était vraiment génial. Vous pouvez voir qu'avec
cela, vous pouvez créer d'autres formes intéressantes
qui ne feront
que donner au jeu un
aspect encore plus intéressant. Maintenant, par exemple, directement dans nos
formes ici, ce que nous pouvons faire, c'est simplement
les déplacer. Peut-être prendre le, prendre
le magasin ici, peut-être le faire pivoter un peu. Donc, bien sûr, si nous le
pivotions de 45 degrés, cela ne fonctionnera pas
vraiment, mais faisons-le pivoter de 22,5 degrés et mais faisons-le pivoter de 22,5
degrés et l'apparence
sera légèrement différente. Et voilà. Alors maintenant, ça va être
un peu différent. Nous pouvons également prendre celui-ci. Nous pouvons également faire pivoter le carré , car pourquoi ne pas écrire ? Alors, nous allons aussi
avoir l'air intéressant. Et voilà. D'ailleurs, vous pouvez aussi le redimensionner et
cela va faire des choses étranges, mais vous pouvez le redimensionner. C'est donc aussi plutôt cool, car
la mise à l'échelle ne fonctionne généralement que dans toutes les directions à la fois
au lieu d'une seule. Alors voilà. Maintenant, nous l'avons. Ensuite, nous pourrons obtenir
un autre cercle. Tracer le cercle autour l'axe Y ne va rien
faire pour nous, mais ça ira. Et puis voilà. Maintenant, nous avons des formes
délirantes ici et nous pouvons ajouter un nouveau
point de contrôle à la toute fin, juste pour
nous assurer d'avoir suffisamment d'espace. Et voilà. Et puis c'est tout. Maintenant, nous avons le
point de contrôle ici, et maintenant nous avons nos formes folles. Juste comme ça. Je pense que c'est
une démonstration suffisante pour vous le montrer. D'accord ? Vous pouvez essentiellement ajouter des pièces
individuelles, n'est-ce pas ? Et peut-être voudriez-vous
également
utiliser ces formes dans un niveau ultérieur, ce que vous pouvez, bien
sûr, utiliser immédiatement et peut-être que vous voulez
vraiment les
faire pivoter pour devoir marcher dessus. Et tout ça. , vous pouvez faire beaucoup de choses avec un objet
personnalisé. Maintenant, en faisant du mannequinat,
je pense que nous sommes
plutôt d'accord avec ça. Supprimons donc simplement
le début et l'autre étoile
veillera à le réactiver. Sinon, nous pourrions
avoir des problèmes. Sauvegardons cela et
passons au jeu. Et voyons si nous
pouvons réellement l'exécuter. C'est tout à fait correct. Nous l'avons
verrouillé, c'est génial. Et maintenant, voyons
si je peux
sauter par-dessus , c'est incroyable. Montons les escaliers. Oh, on a
un petit problème ici. C'est donc une question intéressante. Donc oui, c'est la méthode
qui fonctionne réellement. Mais sur cette scène, moment, ils ne bougent pas, donc il suffit
de sauter ici. Cependant, il est en fait
plus difficile que vous ne le pensez de trouver le bon
moment. Et maintenant,
nous les avons ici. Maintenant, vous pouvez voir que les
cylindres ont bel et bien disparu. C'est un
petit problème, mais nous pouvons réellement
faire ce saut. Mais si les cylindres
ont disparu, bien entendu, c'est parce qu'ils ne
sont pas ancrés. Nous pouvons donc voir
qu'ils ne sont pas ancrés pour le moment. Assurez-vous donc qu'ils sont bien ancrés. Chaque fois que vous ajoutez
une nouvelle pièce ici, vous voulez vous
assurer qu'elle est ancrée et le tour est joué. Et c'est à peu près
au RB de base que nous allons
conserver pour le moment. Ce que nous allons faire. Nous n'avons pas travaillé
avec les convoyeurs car ils utilisent la
vitesse ici, mais ils utilisent la propriété de
vitesse. Et en fait, cela n'existe plus
vraiment. Cela fonctionne toujours. Mais personnellement, je
dirais qu'il vaut probablement mieux ne pas l'utiliser
inutilement, mais c'est très bien. Tu peux t'en servir. Mais sachez
simplement que cela pourrait ne pas fonctionner comme
vous vous y attendez. Quoi qu'il en soit, j'en suis plutôt content lors des prochaines conférences.
Les choses spécifiques que nous
allons faire, c'est faire
alterner ces choses. Comme je l'ai déjà dit. Nous allons
les faire tourner. Et nous allons peut-être aussi
faire pivoter certaines de ces
formes ici. Je n'en suis pas
encore sûr , mais quelque chose comme ça. Nous allons également nous
assurer que les points de contrôle affichent
réellement à
quel stade vous vous trouvez. Et nous allons également
faire en sorte que vous ayez un classement avec les
différentes étapes à l'intérieur. Et c'est à peu près
ce que nous allons faire pour l'ensemble
du son, dans ce cas, sera vraiment très
intéressant. Le fichier fini de la
création est donc bien entendu à
votre disposition en téléchargement. Sinon, j'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose nouveau. Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
37. (Roblox) Ajouter des points de contrôle à Adding: Très bien,
continuons ici avec le cours RB pour le Roblox. Et dans cette conférence,
nous allons
fondamentalement changer la façon
dont les points de contrôle fonctionnent. Et pour cela, ce que nous
devons réellement faire, c'est jeter un œil au script de point de contrôle
actuel. Nous avons donc un script ici, et vous allez le voir
et vous allez vous demander : Oh mon Seigneur, qu'
est-ce que cette folie ? Ne t'inquiète pas du tout. Pour la première partie,
ralentissez un peu. C'est beaucoup à la fois. Tu dois le
prendre ligne par ligne. Je vous dis juste que vous pouvez zoomer et que vous
pouvez même faire en sorte que vous puissiez littéralement voir ligne par ligne, juste pour que
vous puissiez le comprendre. Parce que dans l'ensemble, ce n'est pas
aussi fou que vous le pensez. Tu vas être
bouleversée dès le premier moment où tu verras ça, mais ensuite tu vas te dire
: « OK, attends une seconde ». Vous savez, tout cela, vous savez, quand c'est une déclaration, vous savez, et vous savez ce que cela signifie. D'accord ? S'il est touché, c'est
un événement touché, d'accord ? Donc tu y
connectes cette fonction, d'accord ? Nous l'avons déjà vu. Ensuite, nous disons que si
quelque chose a touché ce point et qu'il y a
un parent, et que le parent a un
humanoïde qui dit en gros, si le joueur a atteint ce point d'apparition
en particulier, n'est-ce pas ? Si, si le joueur a
atteint le point de contrôle, alors nous sommes dedans, d' accord, alors nous
faisons tout cela. OK, c'est bien. partie suivante, nous allons également
récupérer le joueur que nous avons déjà vu
auparavant, puis nous obtenons les données des
points de contrôle. Maintenant, si ces
données de point de contrôle n'existent pas, nous sommes en train de
créer de nouvelles données de
point de contrôle, comme vous pouvez le voir. Donc, si les données de point de contrôle, sinon les données de point de contrôle,
signifient qu'elles n'existent pas, alors nous en créons simplement
une nouvelle instance et nous la plaçons
dans le stockage de ces serveurs. Eh bien, en nommant
également les données des points de contrôle et c'est tout dans le point de contrôle
local, alors ce sera Nous vérifierons essentiellement
si les données du point de contrôle contiennent déjà un point de contrôle enregistré. Et si ce n'est pas le cas,
nous allons à nouveau simplement créer une nouvelle
valeur d'objet avec ce lecteur. Ensuite, nous connectons
une nouvelle
fonction qui
attend notre réponse, puis
nous répondrons à l'emplacement du
nouveau point de contrôle. Et c'est à peu près
tout ce que nous faisons. Maintenant. Encore une fois, certaines parties
peuvent prêter à confusion, en particulier le
cadre C ici. En gros, le cadre C est
simplement la façon dont vous pouvez définir la position d'une pièce. C'est à peu près
tout ce que vous
devez savoir pour le moment. Et la première chose que je
veux faire ici est d'en
faire un script modèle
parce que c'est le même
script à chaque point de contrôle, nous avons juste besoin de le
modifier un peu comme s'il s'agissait d'une seule chose,
et puis c'est tout. Alors pourquoi ne l'aurions-nous pas
réellement ? Donc, ce que nous voulons faire,
c'est accéder à notre fidèle ancien service de
script serveur et créer
un nouveau modèle de script. Je vais appeler cela
le script du point de contrôle. J'aime ça, c'est bien. Et ce que nous allons faire, c'est tout prendre ici, tout ça. Et nous allons juste
le mettre ici. Nous allons donc dire que c'est
le module Dot Add Player, Check Point, bien sûr,
égal à la fonction. Et nous avons besoin du hit et nous avons également
besoin du lieu d'apparition. Je vais vous le montrer dans un instant,
puis c'est parti. Maintenant, c'est la fonction. Et en fait,
juste pour nous assurer que
tout va bien,
nous voulons également juste pour nous assurer que
tout va bien, copier l'instruction
if ici,
parce que j'ai trouvé que cela
fonctionne un peu mieux. Si nous le faisons comme ça, alors
nous pouvons simplement l'appeler ainsi. Nous pouvons simplement prendre ce
module et l'exiger dans le script
ici, et c'est tout. C'est tout ce que nous devons faire. Donc, point de contrôle local, module de
point de contrôle
est égal à require ,
puis nous aurons juste besoin du script point de contrôle point du
service de script
game point server . Vous y voilà. Ensuite, nous pouvons appeler une
fonction ici, à droite, protéger la couche d'
application et la localisation est simplement générée. Et puis c'est tout. C'est tout ce que nous devons faire dans ce cas pour que cela fonctionne. Et nous pouvons voir que
cela fonctionne toujours si j' entre ici et que je les
change tous. C'est vrai. Nous faisons donc en sorte que le
premier soit celui qui change et tous les autres que
nous allons simplement supprimer. Nous allons simplement les
sélectionner tous. Si vous sélectionnez quelque chose,
maintenez le contrôle, vous pouvez simplement en
sélectionner plusieurs. Ensuite, nous
allons simplement le
dupliquer plusieurs
fois et déplacer tous
les nouveaux scripts vers les
autres points de contrôle. Et ce que nous trouverons,
c'est qu'une fois que nous aurons commencé le jeu
, nous atteindrons le prochain
point de contrôle, n'est-ce pas ? La chose
ne
devrait vraiment se produire que lorsque
nous la touchons,
mais vous pouvez voir que nous
obtenons en fait une propriété non attribuée. C'est donc en fait une chose
très intéressante. Maintenant, la raison pour laquelle nous obtenons
cela, comme vous pouvez le voir, c'est que nous l'obtenons dans la
valeur ici en ce moment. La raison en est que c'
est le spawn juste ici. Parce que, bien sûr, nous
devons utiliser l'emplacement de la cuillère. Arrêtons donc cela et autres choses géniales qui se sont produites auparavant .
Si nous avions une table comme celle-ci, nous devrons la modifier
dans chacun de nos scripts. Mais maintenant, je peux simplement entrer dans le script de
notre module et dire,
eh bien, au lieu d'une cuillère,
nous voulons en fait le petit emplacement ici. Sauvegardez-le, jouez. Et maintenant, cela va fonctionner pour tous nos différents
points de contrôle. C'est ce que sont les scripts du
module, incroyablement puissants. Alors jetons un coup d'œil et c'est parti, plus de problèmes. Et si je devais
me rendre ici, je répondrai à
cet endroit précis. Et vous pouvez voir,
vous y êtes. Je réponds ici. Et il en sera
de même si je continue ici, je vais ici et
que je saute encore une fois. Ensuite, vous pourrez voir
qui apparaissent juste là. Donc, tous les points de contrôle fonctionnent
maintenant parfaitement, comme vous pouvez le constater, ce qui est
vraiment génial. Et bien, c'est à
peu près tout ce que nous devons faire pour
les rendre plus robustes. Et maintenant, ce qui est génial si nous
ajoutions un nouveau point de contrôle, que
si nous
ajoutions un nouveau point de contrôle, comme il possède désormais le
même script de
point de contrôle, il continuerait en quelque sorte facilement. Donc, une fois que nous aurons configuré cela, chaque nouveau point de contrôle que nous ajouterons utilisera le script du module. Et si nous voulons changer
quelque chose ici, par exemple lors de la prochaine conférence,
alors ce qui va se
passer, c'
est que cela va simplement fonctionner. Et c'est en fait avec tout ce que nous avons
appris jusqu'à présent. L'événement Touched,
nous l'avons déjà vu, nécessite un script de module alors cela a
déjà été vu dans
le script d'autres
modules lui-même, la fonction ici
est un peu plus compliquée, je
vais vous l'expliquer. Mais dans l'ensemble, si vous le
prenez vraiment ligne par ligne, cela devrait être compréhensible. Et avec ça,
c'est en fait tout
pour cette conférence. J'espère que vous avez trouvé cela utile et
que vous avez appris quelque chose de nouveau. Je te verrai lors
de la prochaine conférence. Donc, oui.
38. (Roblox) Ajouter un tableau de bord avec Leaderstats: Très bien,
continuons avec l'ABA ici pour le cours Roblox. Dans cette conférence,
nous allons
créer non seulement un classement, mais également le
système de numérotation de nos points de contrôle. Cela va donc être
très intéressant en fait. Donc, la première partie
consistera, en gros,
à ajouter des
chiffres à nos points de contrôle. Maintenant, je vais le faire d'une manière un
peu effrontée. En fait, je vais créer un nouveau script à la place de nos
points de contrôle ici. Et nous
allons simplement l'appeler ainsi. Tout d'abord, il
va y avoir un script, n'est-ce pas ? Et voilà. Et nous allons en
fait renommer cela en numérotation des points de contrôle. Parce que curieusement,
si nous entrons ici, si nous nous assurons que
nos points de contrôle sont configurés dans le
bon ordre, n'est-ce pas ? Vous pouvez donc voir ce
point de contrôle 123, celui-ci est quatre et celui-ci est cinq. S'ils sont placés dans le
bon ordre ici, nous pouvons simplement
les numéroter de haut en bas et tout
devrait bien se passer. C'est donc en fait ce que je vais faire avec ce script. C'est donc ce dont ce
script a essentiellement besoin. S'ils sont dans un ordre aléatoire, cela ne fonctionnera pas. Mais généralement, si vous les
dupliquez, ils devraient être dans un
ordre défini et c'est très bien. Donc, pour cela, ce que
nous
voulons faire, c'est d'abord
trouver le dossier. Il s'agit donc bien sûr d'un script dont parent doit être assez
explicite. Nous avons alors un décompte, n'est-ce pas ? Ça va en être un. Nous
allons commencer par un, puis nous utiliserons une boucle for. Et la boucle que nous allons
utiliser , c'est que nous allons sevrer les enfants de ce dossier
en particulier, nous allons obtenir tout cela. Donc, ce que nous allons faire, c'est
dire point de contrôle. Donc, moi et Check Point. Et la raison pour laquelle j'
ai deux choses,
c'est parce que si je fais deux points dans les dossiers , si je trouve des enfants, nous
obtiendrons toutes les instances, qui est ce point de contrôle. Mais la première chose
sera en fait une valeur int, ou dans ce cas, simplement l'index. Alors prends des enfants. Et ensuite, ce que nous voulons
faire, c'est faire ça. Nous voulons tout d'abord
appeler ce numéro et celui-ci est égal à une nouvelle instance point new. Et nous allons
appeler cela une valeur int. Je vais dire que le nom du
point numérique est égal au point de
contrôle, le numéro du point de contrôle, je vais dire que la valeur du
point numérique est égale au nombre parce que nous voulons le régler sur un au début, ils veulent dire que
le parent du point est égal au point de contrôle. Et puis, pour terminer
, nous voulons dire que le nombre plus est égal à un. Parce que, bien sûr, à
chaque nouveau point de contrôle, nous voulons augmenter
le nombre et c'est à peu près tout
ce que nous devons faire, n'est-ce pas ? Jouons donc à cela et jetons
un coup d'œil aux points de contrôle ici. Maintenant, qu'est-ce qu'il est important de noter si nous ouvrons réellement les
points de contrôle, n'est-ce pas ? Vous pouvez voir que tout d'abord, nous avons tous les points de contrôle. Passons simplement
au serveur pour
pouvoir nous déplacer. Ce point de contrôle, juste ici. Vous pouvez voir que c'est maintenant
la valeur un, ce point de contrôle car il a effectivement changé
de position ici, mais ce n'est pas un problème car
il a toujours de la valeur. Parfois, vous changez de
position, mais elles ne devraient pas changer. Ils ne devraient changer qu'
après le chargement du jeu. C'est donc la seule chose que
ce script peut gâcher. S'ils changent pour une raison
quelconque avant
tous ces grognements, alors oui, vous pourriez
avoir des problèmes et vous pouvez simplement les ajouter
manuellement. Mais j'aime ajouter ceci
avec un script personnellement, ce mode, c'est une de mes
préférences personnelles. Je ne vais pas mentir. Ils l'ont maintenant. Et ce que nous pourrions faire, par exemple, juste pour les besoins de la
discussion, c'est simplement dire : « Hé,
imprimez simplement mon truc ». Donc, dans le script du module que
nous avons créé la dernière fois, nous
allons simplement
imprimer le point de localisation du point d'apparition. Et ça devrait avoir un
truc appelé numéro de point de contrôle. C'est donc le numéro de point de
contrôle du point de localisation, cette valeur. Ainsi, chaque fois que
le joueur touche le lieu d'apparition, nous devons imprimer la
valeur. Alors voyons, d'accord, nous devrions pouvoir
déménager ici, et ensuite peut-être
devrions-nous déménager ici. Et si on touche ça,
tu peux en voir un. Il va donc en imprimer
un. OK, intéressant. Continuons et voyons si nous atteignons le
prochain. Nous en avons maintenant deux. Et si nous continuons ici, nous en avons maintenant trois. Et cela va
continuer jusqu'à ce
que, en gros , je n'aie plus
de points de contrôle. Donc, si nous
atteignons celui-ci, nous en avons quatre, et si nous continuons ici, nous en avons cinq. C'est donc vraiment génial. Nous pouvons donc maintenant obtenir la valeur
ou quelle que soit l'étape dans laquelle nous nous trouvons. Nous pouvons en fait l'obtenir
grâce à la valeur ici. Et nous allons faire deux choses. La première chose que nous
allons faire est de
créer une petite interface graphique. Ce
sera donc une interface graphique de démarrage, et nous allons simplement l'
appeler l'interface graphique d'écran. Nous allons ajouter
une étiquette de texte. Et nous allons juste
l'agrandir un peu,
quelque chose comme ça. C'est donc bien sûr à des fins de
démonstration, n'est-ce pas ? Je veux dire, en réalité, vous voulez probablement le rendre un peu plus beau, mais plus beau. Tu peux toujours changer ça. C'est le plus important. qui est intéressant à ce sujet c'est la fonctionnalité
pour moi en ce moment. Alors nous allons juste
appeler ça, je veux dire, peut-être quelque chose comme zéro,
ça ira. Nous allons l'agrandir de
cette façon. Donc ça devrait être
quelque chose comme ça. Disons que c'est un 69. Agréable. Oui, c'est bien. Et puis c'est à
peu près tout, non ? Et nous pouvons changer
cela en un instant. Donc, ce que
nous allons faire, c'est revenir au script de
notre module et ajouter quelque chose de nouveau. Et ce sera une fonction
locale qui ne sera même pas appelée
de l'extérieur. Il va en fait
être appelé par cette fonction ici même. Ce sera
l'interface graphique pour ajouter un joueur. Et ce ne sera
que la fonction. Il va nous falloir un code
et un numéro, d'accord ? Ensuite, nous allons faire
venir le joueur ici. Nous pouvons améliorer le
joueur en faisant la même chose qu'ici. Nous avons donc maintenant le
lecteur dans cette fonction. On peut alors dire
joueur, joueur gy, Gy. Il s'agit en fait de notre interface graphique d'écran. Nous voulons donc le
renommer en GUI. Oui, d'accord, donc ce nom
doit correspondre au même numéro de point de contrôle. Nous allons également
le renommer. Voici donc le numéro du
point de contrôle. Donc, l'étiquette de texte,
nous allons la renommer point de contrôle point txt égal à, puis nous allons la rendre
égale à stage, puis
plus quels que soient les chiffres
et ce sera, et ce sera notre texte. Nous avons toujours écrit leur scène, puis
tout ce que nous avons écrit. Donc, en fait,
changeons cela également. Disons que c'
est maintenant la phase zéro. Je pense que c'
est logique, non ? Étape zéro. Et voilà. Et chaque fois, chaque fois
que nous voulons y arriver, nous
voulons changer cela. Donc, au lieu de l'imprimer, nous pouvons littéralement
simplement dire « ajouter un lecteur à l'interface graphique ultérieure en passant le hit. Et puis le nombre, qui est exactement la valeur du
point de contrôle
du lieu d'apparition . Et c'est tout ce que nous devons
faire pour l'ajouter déjà. Et c'est vraiment génial. Parce que maintenant, si nous y allons, vous pouvez voir que nous sommes au stade zéro. Encore une fois, comme je l'ai dit, ce n'est pas très beau. Vous pouvez bien sûr changer
son apparence, n'est-ce pas ? Nous avons déjà parlé des interfaces graphiques
, si nous continuons
et je vais ici, bien
sûr, attendez une seconde. J'ai fait un OOP, tu vois,
j'ai fait un plus ici. Ça, ça devrait être point, point. Et voilà. C'est en fait
ce que tu dois faire. Parfois, Lower fait les choses
un peu
différemment des autres
langages de programmation, mais c'est très bien. Et puis voilà.
Maintenant, nous avons atteint la première étape et nous pouvons
continuer ici. Et vous trouverez l'étape deux et la troisième étape et ainsi de suite. Absolument génial. Maintenant, vous avez un
écran dans la salle de sport, mais ce n'est pas
tout ce que nous voulons. Bien entendu, nous
voulons également un classement pour comparer nos propres
statistiques avec celles des autres joueurs. maintenant aux statistiques des leaders, c'est vrai, nous pouvons
presque copier le même script que celui que
nous avons créé précédemment. Donc, dans les serveurs de scripts des serveurs, nous voulions simplement créer un nouveau script et
nous allons l'appeler les statistiques des leaders, les
statistiques des litres. Et voilà. Et je vais en fait
copier les scripts précédents. Voici donc le script
de la 16e partie
des bases de Roblox, où
nous avons ajouté la position de leader. Maintenant, nous ne voulons pas d'une valeur réelle et nous ne
voulons certainement pas d'une valeur d'or. Mais ce que nous voulons, c'est que
nous voulons une valeur int ici. Nous allons donc le
renommer en, appelons cette étape, et c'est la valeur
zéro, c'est bon. Et puis c'est
littéralement ça, c' est tout ce que nous
devons faire ici. Bien sûr, nous
devons encore changer cela,
mais ce n'est pas grave, nous pouvons le faire. Donc, dans le
script du point de contrôle, lorsque nous ajoutons l'interface utilisateur des joueurs, nous pouvons
créer une nouvelle méthode et appeler cette modification des statistiques
ultérieures, n'est-ce pas ? En faire à nouveau une nouvelle
fonction grâce à la chaleur et au chiffre.
Et puis voilà. Ce que nous pouvons alors faire, c'est récupérer le joueur, car nous aurons toujours
besoin de ce joueur. Et que pouvons-nous faire maintenant ? Maintenant, en théorie, nous pouvons
simplement entrer dans le cadre de la collecte de
buts que nous avons faite une fois de plus dans
les événements précédents. Et nous pouvons y participer. Nous pouvons donc, tout d'abord, obtenir les statistiques
des leaders, n'est-ce pas ? litres sont donc égaux aux sets Player Dot Leader, car ce sera
toujours le même nom. On peut alors parler de scène locale. Le stade est égal aux litres et les litres indiquent le côlon,
trouvez le premier enfant. Je vais appeler cela la scène parce que c'est ainsi que nous l'
appelons ici, n'est-ce pas ? C'est le même nom
que celui-ci, scène. Et puis, si la scène
est réellement présente, oh, non, ce sont des scènes présentes. Ensuite, nous allons faire en sorte que la valeur du point d'
étape soit égale au nombre que nous
obtenons grâce à l'appel de la fonction Change
Leader Stats. Et nous pouvons simplement
appeler cela ici. Et on peut dire que
le changement des statistiques du leader se
transmet au coup sûr. Et puis la même chose
ici, le lieu d'apparition, numéro du point de contrôle,
cette valeur, et c'est tout. C'est littéralement
tout ce que nous devons faire. Et maintenant, nous avons également
un classement personnalisé. Donc, si nous devions recommencer, vous constaterez que nous avons
maintenant les
leaders. Ainsi, non seulement je peux voir
mon niveau actuel, mais tout le monde dans l'instance
peut également voir mon niveau. Et vous pouvez voir qu'ils ont tous deux été mis à jour
à peu près en même temps. Et nous pouvons continuer
ce numéro deux, et ainsi de suite. Absolument génial. C'est donc à peu près
un
Abi qui fonctionne presque à ce stade. Maintenant, il s'agit simplement d'ajouter de
plus en plus d'étapes et de
plus en plus de choses. Et vous pouvez voir à quel point
chaque pièce individuelle semble très petite et ressemble
en quelque sorte à un contenant. Mais maintenant, vous pouvez
voir que si vous
combinez certaines choses, vous pouvez créer
vraiment, vraiment cool. Eh bien, les
effets de jeu concernent essentiellement cela. C'est pour cette
conférence ici ? J'espère que vous avez trouvé cela
utile et que vous
apprendrez quelque chose de nouveau. Je
vous verrai tous lors de la prochaine
conférence. Donc, oui.
39. (Roblox) ajouter des escaliers disparus à Adding: Ou continuons
avec le RB,
suivons un cours de robotique
et dans cette conférence, nous
allons faire disparaître nos
escaliers. Oui. J'ai donc déjà mentionné que lorsque vous
montez les escaliers, il devrait
peut-être arriver que chaque escalier
disparaisse lorsque le
joueur le touche. Nous pouvons maintenant
procéder de deux manières différentes. Nous allons simplement ajouter
un script à notre rôle. Ensuite, nous allons ajouter
ces scripts particuliers à toutes nos
différentes parties principales. En gros, pour cela,
nous allons
simplement ajouter un script et nous allons
appeler ce script les escaliers qui disparaissent. Maintenant, ce script, tout
d'abord, contiendra
bien sûr la partie
elle-même et c'est
juste que le parent point du script devrait être assez
explicite, n'est-ce pas ? Nous allons prendre le
parent du script. Et puis nous avons également voulu créer un local qui disparaît
équivaut à faux. Il s'agit d'un booléen. Cela va simplement nous assurer que notre événement Touched que
nous allons implémenter dans un
instant ne sera pas appelé plusieurs fois par
seconde. Nous voulons maintenant utiliser
quelque chose que nous n'avons jamais utilisé auparavant, savoir le service d'interpolation. C'est donc en fait
un très bon moment où nous pouvons essentiellement
tester cela. Et l'idée du
service d'interpolation est simplement de passer en douceur d'
une valeur à une autre. Nous modifions donc essentiellement
une propriété particulière. Dans notre cas, nous
allons faire passer la transparence de
zéro à un. Et une fois que c'est fait, nous allons revenir à un, 1-0. Alors, à quoi cela
va-t-il ressembler si je joue au jeu pendant un moment et que nous allons
passer au serveur ici ? Nous allons sélectionner cette partie. Ensuite, l'idée
serait que la transparence,
le droit, passe de zéro à un
en douceur. Et puis une fois que c'est un,
on va attendre 6 s, puis ça va revenir
à zéro. Maintenant, cela peut être fait, comme
nous l'avons vu précédemment, avec un appel à quatre boucles et un petit appel
de fonction de pondération, puis vous
le modifiez simplement par, je ne sais pas, 0,1 ou 0,01
ou quelle que soit la mesure que vous voulez
, cela fonctionne. Cependant, ce n'est pas
la solution optimale. Le meilleur moyen serait d'utiliser le service d'interpolation ici. Et la façon dont
cela fonctionne est que vous avez une double variable de service. Cela équivaut à Game
Colon Get Service. Et à l'intérieur, nous
devons spécifier les serveurs. Vous pouvez maintenant voir qu'il existe
de nombreux services. Nous n'
en avons pas vraiment parlé en détail et nous n'allons examiner
que quelques services. Mais maintenant, je veux utiliser
Between Surface ici. C'est entre le service et nous voulons aussi une inflammation. Il s'agit donc d'informations sur les préadolescents. C'est en fait assez
simple. Je vais également expliquer cela. Donc ça va
être entre deux informations. Allons-y. Appelle-le comme ça. Je vais l'
appeler avec un petit t, pas un grand, sinon nous allons utiliser
le cours ici. Nous voulons en
faire un t minuscule. Et il y aura des informations intercalaires
entre les informations cette fois avec un point T
majuscule et un nœud. Et puis ici, nous pouvons
spécifier l'heure. Le temps est donc le
temps qu'il vous
faudra pour obtenir, à partir de la valeur que vous êtes actuellement en train d'
ajouter, les propriétés Kronecker à la valeur
que vous souhaitez atteindre. Nous allons juste dire 1 s. Et puis le style d'assouplissement, nous pouvons simplement dire que
ce sera
le
style d' assouplissement par points enum, comme vous pouvez le voir, puis par points et puis vous pouvez voir qu'il y en a un tas
de différents. Le linéaire est donc le plus
facile à comprendre. C'est juste un graphique
dessiné linéairement, non ? Donc, d'un point à l'autre, il y a aussi un
équilibre, qui
rebondit un peu. Cela ne s'applique pas vraiment
dans notre cas, car vous ne pouvez pas dépasser un
ou zéro en termes de transparence. Et puis il y a
d'autres choses, non ? Vous pouvez donc voir qu'il y a un cube. Donc, en gros, cela commence à
une vitesse et à une qualité inférieures. Vous pouvez voir que cela
est déterminé par une interpolation quadratique. Il existe donc un tas
de façons de faciliter
l'entrée et la sortie. Ce que je recommande ici,
c'est que vous pouvez simplement essayer un tas
et voir ce qu'ils font. Encore une fois, dans cet exemple
précis, ce n'est en fait pas la meilleure
façon de l'examiner. L'interpolation de la
transparence ici
ne va pas vraiment
faire quelque chose de fou, mais tout le reste pourrait
être intéressant en fait. Nous allons donc simplement choisir le
linéaire pour le moment. Nous n'avons pas besoin de
compliquer les choses. Comme je l'ai dit, vous pouvez
simplement en essayer plusieurs et voir ce qu'ils font. Et maintenant, nous voulons vraiment
créer un nouvel préadolescent, non ? Nous allons donc
simplement appeler cette partie. Cela va activer
la pièce et faire passer
la transparence de toutes les valeurs réelles à zéro. transparence nulle
signifie simplement qu'il est
complètement solide. Et nous pouvons voir que cela
se
fera en faisant un service d'interpolation. Donc, notre variable ici, deux-points create, puis nous
voulons dire de quelle instance. Donc, quel rôle
va être entraîné et quel rôle va faire
partie devrait avoir du sens, n'est-ce pas ? Nous voulons donc modifier la pièce. Maintenant. Nous voulons le fournir
entre les informations. Maintenant, nous l'avons déjà fait,
c'est parfait. Ensuite, nous voulons
faire une table ici. Le tableau, bien sûr,
ne sera composé que de crochets. Et à l'intérieur d'ici,
nous
voulons savoir ce que nous
allons changer. Nous voulons changer
la transparence, en nous assurant de l'écrire
correctement, n'est-ce pas ? Alors transparence et deuxièmement, que voulons-nous changer ? Dans ce
cas, nous voulons le remplacer par zéro. Donc, assurez-vous que le mot ici est exactement le
même que le nom indiqué dans
les propriétés, n'est-ce pas ? Celui-ci doit donc correspondre
exactement à celui-ci. Alors, s'il vous plaît,
faites attention à cela. S'il y a même un minuscule cyberespace
comme celui-ci, ça ne marchera pas. Si vous vous assurez
que c'est bien, nous pouvons simplement copier cette ligne. Il suffit donc de le sélectionner, d'
appuyer sur les touches Ctrl C
et
Ctrl V pour le recoller. Et nous allons annuler l'
autre partie ici. Et dans ce cas, nous voulons que
la transparence soit une. Donc, si nous jouons un rôle dans ce qui
va se passer, c'
est que cela se produira moins d'une seconde,
modifiez la transparence. Quelle que soit la valeur
réelle, zéro. Et si nous jouons un rôle la valeur de
transparence sera
remplacée par une valeur de transparence différente
de la valeur de transparence
qu'elle possède actuellement. Nous allons donc dire
partie touchée. Nous allons donc utiliser l'événement Touched. Nous allons associer
cela à une fonction. Bien sûr, nous voulons savoir quel titre et ce que nous allons
simplement faire, c'est accéder à notre fidèle ancien service de
script de serveur et nous
allons simplement suivre l'
instruction if, celle-ci, car elle permet de vérifier
si un joueur a touché ou si un personnage a touché
cette partie en particulier. Et nous allons également ajouter une autre chose
qui est en train de disparaître. Mais nous voulons dire qu'il
ne disparaîtra pas, n'est-ce pas ? Donc, l'idée est que
cela va
devenir réalité
immédiatement, n'est-ce pas ? Nous allons donc régler
cela sur vrai immédiatement car en gros,
nous ne voulons pas appeler ainsi si le service Twin est déjà
opérationnel. Vous pouvez maintenant le faire
de différentes manières. Vous pouvez également vérifier si
l'interpolation fonctionne. Je pense que le booléen
est tout à fait correct. L'idée est
donc d'attendre, disons un
quart de seconde. Ensuite, nous allons
parler de jeu de deux points. Et cela va maintenant jouer
le rôle entre le service rendant la transparence
de tout ce qu'il s' agit du rôle à un. Et cela fonctionnera
immédiatement. Donc, si nous entrons ici et
que nous passons aux parties, voyons quels sont les
partenaires de cette partie, de cette partie. OK, reprenons
notre entrepôt. Dupliquons cela
et mettons-le ici, juste nous y rendre un peu pour nous y rendre un peu
plus facilement Désactivons la partie de départ, puis nous devrions pouvoir apparaître juste à
côté des escaliers. Nous sommes donc petits à côté des escaliers. Et si je touche l'escalier, tu
verras
que c'est là que ça s'en va. En fait, c'est
plutôt cool. Maintenant, vous y êtes. Il y a donc toujours une collision. Donc, comme vous pouvez le voir, je suis
quasiment debout ou rien parce que, eh bien, nous changeons simplement
la transparence. Mais nous avons changé
la transparence, ce qui est déjà vraiment génial. Vous avez donc vu que
dès que nous avons touché les escaliers, vrai, The Twin
Service Gut a commencé. Donc, celui-ci est là, cette
partie supprimée et cela a changé la transparence 0-1 de manière
linéaire en 1 s. Maintenant, qu'allons-nous faire, comment allons-nous
faire pour la faire disparaître ? Nous pouvons peut-être dire
ici une partie qui peut entrer en collision et ensuite nous
pourrions simplement dire faux. Ce n'est pas tout à fait exact. Parce que si nous le faisons, alors dès que
nous commencerons à jouer ,
le truc va se terminer en un
quart de seconde,
ce qui est terminer un
quart de seconde, peut-être un
peu trop rapide. Nous pouvons donc
simplement jeter un œil à cela et voir ce que
cela fait réellement. Donc, si nous entrons ici et que nous essayons d'aborder cette partie avec prudence
, vous pouvez voir maintenant que c'est déjà
comme s'il n'y avait plus de collision. Cela a donc été
très, très rapide. Je dirais donc que ce n'est probablement pas
la meilleure façon de procéder. Ce que tu veux faire, c'est
dire, hé, si l'interpolation
est terminée, n'est-ce pas ? Donc, une fois cela fait, nous
voulons éteindre la pièce. Donc, en gros, lorsque la
pièce aura complètement disparu et que
nous pourrions simplement dire une partie. Voici donc l'interpolation que nous avons
créée, complétez-la. En gros, vous pouvez voir
l'événement terminé d'un préadolescent se déclencher lorsque le
jumeau a fini de jouer. C'est donc exactement
ce que nous voulons, non ? Et nous voulons connecter cela
à une nouvelle fonction ici. Maintenant, nous pouvons également obtenir l'
État. Nous n'avons pas vraiment
besoin de l'État dans ce cas, car tout ira bien. Et puis nous pouvons simplement
dire que, dans ce cas, une partie peut entrer en collision est égale à fausse. Donc ça va bien se passer. Ensuite, nous allons
attendre encore, disons 0,25 s. Ensuite,
nous allons dire qu'il y a un rôle à jouer
à deux points lorsqu'ils disent que
disparaître est égal à faux. Et puis nous pouvons
dire que l'une ou l'autre partie peut entrer en collision ici
même. Maintenant, je ne
mettrais pas le vrai calcul à l'intérieur
, car le même problème se produit qu'auparavant. Où, dès que cela
devient visible, vous pouvez à nouveau entrer en collision
avec lui. Maintenant,
c'est peut-être ce que tu veux. Il pourrait y avoir un cas, non ? Donc, si vous voulez qu'elle entre
immédiatement en collision avec Hubble, après avoir à peine vu la
pièce, vous pouvez le faire. Ou si vous
ne vouliez un objet de collection qu' une fois que la pièce est complètement
là, vous pouvez dire port
on deux-points, fonction de connexion
deux-points terminée une
fois de plus avec un état ici. Et puis une fois que
c'est fait, vous pouvez dire que le trésor peut entrer en collision. La logique devrait
être assez solide, n'est-ce pas ? Nous avons juste un service
ou un préadolescent, non ? Dans ce cas, s'
il change une valeur de l'une
à l'autre, il a atteint sa valeur cible. L'événement terminé est appelé et nous ne faisons que connecter
une autre fonction à celui-ci. C'est littéralement tout
ce que nous faisons ici. C'est donc en fait une
chose
vraiment, vraiment cool et géniale que nous pouvons faire. Et si nous l'avons maintenant, ce que nous pouvons faire, c'est
entrer ici et voir si j'ai touché le
premier escalier. Vous pouvez le voir maintenant que je
suis tombée à l'eau et
qu'il faut y retourner. Passons à la première série,
puis continuons à monter. Alors allons-y. Et voilà. Et maintenant, vous pouvez le
voir rebondir
et le
redevenir , je peux me tenir debout
dessus
, puis je peux poursuivre à nouveau. Donc c'est vraiment, vraiment cool. Nous avons maintenant ce script d'escalier
qui disparaît sur l'un des escaliers. Comment l'ajouter à
tous nos escaliers ? Je ne sais pas s'il existe
un moyen facile de le faire. Je n'ai fait que les
dupliquer toutes. Donc, en gros, il suffit de sélectionner l'
une d'entre elles, de
comparer Control D ,
puis les déplacer
vers les autres parties. Maintenant, s'il existe un moyen
plus simple de le faire, je suis heureuse
de m'éclairer. Je n'ai pas encore trouvé de moyen
plus simple de dupliquer des pièces et de les attribuer facilement à
différents parents. Mais regardez-nous, en gros, nous avons déjà terminé. Cela n'a donc pas pris si longtemps. Donc ça devrait aller. Ensuite, fermons simplement les ports si vous voulez le
pérenniser Vous pouvez également créer un script de
module avec cette modification à
propos et l'utiliser à la
place, puis demander aux
ports de se connecter au script
du module, ce qui
est bien sûr faisable. Mais dans notre cas, je pense
que tout ira bien. Et voyons à quoi
ça va ressembler, parce que ça va
vraiment avoir l'air vraiment génial. Donc, si nous montons maintenant les
escaliers et que vous pouvez voir tout cela disparaître
et réapparaître. C'est absolument génial. Et l'autre méthode fonctionne également. C'est vraiment cool. Encore une fois, escaliers ne sont peut-être pas
la meilleure solution en termes
de modélisation, n'est-ce pas ? Peut-être que les escaliers pourraient
être un peu plus grands, un peu plus larges,
des choses comme ça. Vous pouvez toujours le modifier car la fonctionnalité
est
désormais disponible. Hein ? Vous avez maintenant l'une
des parties contenant le script. Et si vous voulez refaire les
escaliers, absolument pas de mots. Vous pouvez supprimer tous
les autres escaliers. Vous pouvez modifier la
modélisation, la façon dont elle fonctionne. Et voilà. Une dernière chose, je l'ai déjà
montrée,
mais en ce qui concerne le service d'interpolation,
je
vous recommande vivement d'y jeter un coup d'œil, car
c'est
un élément
très important pour faire beaucoup de
choses sur je
vous recommande vivement d'y jeter un coup d'œil, car
c'est un élément
très important pour faire beaucoup de des barrages routiers qui ont
l'air cool en gros. Et nous l'utiliserons également dans
la prochaine conférence. Je
recommande donc vivement de consulter la documentation ici. Vous pouvez également le
faire en vous
rendant simplement sur la
surface intermédiaire, je crois, puis en affichant. Cela pourrait tout de même être une chose
très intéressante à regarder. Ce sera donc tout pour
cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
40. (Roblox) ajouter des pièces mobiles à Adding: Continuons avec le RB,
suivons un cours de robotique
et dans cette conférence, nous allons commencer à déplacer
nos briques mortes, n'est-ce pas ? donc un moment que je taquine et
parle du déplacement des
Kill Bricks. Et l'idée, c'est
de créer un script qui modifie la
rotation des kill bricks,
quelque chose comme ça, n'est-ce pas ? Et nous l'avons déjà vu
lors de la conférence précédente, nous avons vu le
service d'interpolation pour les escaliers, n'est-ce pas ? Cela a donc fait passer la transparence des escaliers à 0-1 ou 1-0. Maintenant, nous voulons faire la même chose pour nos briques
détruites ici, juste en ce qui concerne la rotation. Donc, pour cela, dans les
Kill Bricks, d'accord, nous pouvons simplement laisser
le script de mise à mort. En gros, nous pouvons simplement le
garder là. Et ce que nous voulons faire, c'est simplement ajouter un autre
script et ce sera notre script
rotatif ici. C'est parfait. Et maintenant, ça va devenir
le numéro un, un rôle, non ? Ce sera notre
rôle, Script Dot Parent. Ensuite, nous
passerons à nouveau entre deux services. Donc, c'est entre le
service égal à, nous avons déjà vu ce deux-points du
jeu obtenir le service ,
puis mettre la chaîne de
service d'interpolation ici. Maintenant, nous voulons également des informations. Cela pourrait donc être quelque chose comme les informations rotatives, les informations
rotatives. Vous y voilà. Et ça équivaudra
à ce que Tween et Foot soient neufs. Et puis là, nous
voulons retrouver le temps. Disons donc juste un
pour le moment. Enum, ce style d'assouplissement, mais aussi linéaire pour le
moment. Je le recommande vivement, vous pouvez certainement découvrir différents styles
d'assouplissement et nous le ferons dans un instant. Une fois que tout fonctionne, la question qui se pose est la suivante : d'accord, comment pouvons-nous faire en sorte que cela fonctionne ? Maintenant, c'est un peu plus compliqué que ce que
vous avez vu précédemment, car cela implique un
peu plus de mathématiques. Mais disons simplement que nous
allons le transformer, non ? Ce ne
sera donc pas notre préadolescent. Il va donc y avoir création de deux points de
service d'interpolation. Et cela
fonctionnera, bien sûr, comme il se doit, ce qui devrait avoir du sens. Nous allons ajouter
les informations de rotation. Ensuite, nous
voulons ajouter ce qui est changer sous forme de tableau. Maintenant, ce qui va
changer pour
The Kill Brick, c'est le cadre C, n'est-ce pas ? Et ce qui va
changer pour le cadre C, c'est précisément
l'orientation. Maintenant, comment puis-je changer l'orientation du cadre
C avec cela ? Eh bien, tout d'abord, nous allons
juste dire cadre C. Et puis ce sera
égal aux images C réelles. Ce sera le cadre de la partie C. Nous le réglons donc sur le
même port, puis nous le
multiplions par les angles de points de l'
image C. Et l'idée ici est
que cela est égal à partir des angles d'Euler XYZ. Donc Angles vous renvoie essentiellement une nouvelle image C à partir de nombres
radiants. Alors c'est peut-être
un peu, oh, c'est fou. En général Les rotations dans l'espace 3D sont
en fait assez compliquées. Vous pourriez dire, eh bien, je veux dire, qu'il y a juste trois
chiffres ici. Eh bien, ce n'est pas si simple. Trois chiffres peuvent en fait
ne pas suffire à l'orientation et à la rotation. C'est pourquoi parfois, lorsque
vous modifiez ces chiffres, ils font des choses étranges, n'est-ce pas ? Alors peut-être que vous avez
changé ce select -90 et que tout d'un coup, ce passage à -90,
comme la valeur y, fait passer
à 70 et vous vous demandez, eh bien, comment est-ce arrivé ? Eh bien, dans l'ensemble, ce que
nous voulons faire ici, en ce qui concerne
les angles, c'est
dire des points radians mathématiques. Nous voulons donc mettre le
radiateur ici, 45. Et puis nous voulons dire parenthèses
fermantes zéro virgule zéro. Je vais juste faire un
zoom arrière et vous pouvez voir l'image C. La valeur réelle doit être la valeur actuelle multipliée par quel que soit
l'angle mathématique en radians 45s. Qu'est-ce que cela signifie ? Eh bien, nous allons voir cela
dans un instant. Ce que nous allons juste faire,
c'est jouer à Spin Colon. Et c'est tout ce que nous
allons faire pour le moment. Donc on va juste le
garder comme ça, non ? Donc nous allons juste
dire : « Hé, demi-tour et ensuite
nous verrons, nous allons
commencer ici et nous
allons juste le déplacer ici. Nous devrions être en mesure de voir notre premier Kill Brick
Wall faire quelque chose. Et tu vas voir
ce que ça fait, non ? Nous allons donc le faire
ici et vous pouvez voir qu'il tourne réellement, mais qu'il tourne autour du mauvais axe ou qu'il a
pivoté autour de son propre axe. Donc, le
faire tourner autour de cet axe, qui n'est pas correct dans ce cas
. Nous voulons donc modifier
les calculs sur ce point. Nous voulions donc tourner autour de l'axe bleu,
qui est en fait z. Nous voulons
donc modifier ces deux ici, cela
ne pose aucun problème. Donc, en gros, vous pouvez
vérifier, si vous êtes du genre, attendez, comment savez-vous que nous voulons tourner autour de cet axe ? Tout à coup, vous pouvez voir que si je change
le bleu ici, accord, cela
nous permettra d'obtenir le résultat souhaité. Et
le bleu en haut à droite représente z. Cela signifie
que
nous devons modifier le dernier parce que
cela devient x, y, z. J'espère que c'est un peu
compréhensible. Maintenant que nous avons changé cela, et que nous entrons ici, nous devrions maintenant être en mesure de le voir tourner lentement et le
tour est joué. Donc, en fait, nous ne l'avons
même pas compris, mais cela l'a écrit
dans cette direction. Et si nous allons sur le serveur
et que nous sélectionnons cette option, nous pouvons voir dans
l'orientation que cela change la valeur ici, 245. C'est donc littéralement à
peu près tout ce que cela fait, non ? Donc, en gros, ça dit simplement : « Hé, nous voulons changer ce truc
en particulier en 45 ». Et si nous devions
passer à cinq, par exemple 5 s, cela prendra
un peu plus de temps et
nous pourrons également le
voir bouger. Vous pouvez donc le voir
maintenant qu'il bouge. Et maintenant, nous avons atteint
l'angle de 45 degrés, et c'est tout ce que cela fait. Donc, l'idée ici est
que cela change
littéralement l'angle par rapport à
ce que vous mettez ici. La plupart de ces informations sont
en quelque sorte une
sorte de calcul. Maintenant, il est intéressant
d'y jeter un coup d'œil. Et si cela vous
intéresse vraiment, je vous recommande vivement de
consulter les références de
l'API C Frame. Ils le font, ils sont très importants,
très intéressants. Cependant, cela demande beaucoup
de mathématiques. C'est ce que
vous pouvez garder à l'esprit. Alors maintenant, il va
tourner de 0 à 45. Et si nous voulions maintenant le faire
pivoter à nouveau ? Eh bien,
pas de soucis du tout. Nous allons juste
faire un second tour. Donc, nous allons juste
dire que c'est un
spin,
ça ira. Et celui-ci passe à -45. Nous allons donc d'abord à 45, puis nous
reviendrons à -45. Alors maintenant, Spin One devrait jouer, et maintenant c'est le
truc le plus génial. Maintenant, ce que nous voulons faire,
c'est qu'une fois que c'est fait, nous voulons dire terminé. Nous utilisons donc à nouveau
l'événement terminé. Nous voulons connecter
une nouvelle fonction et nous allons simplement
dire fonction. Et dans la même ligne,
nous allons juste dire « spin to colon play », puis nous allons
terminer sur la même ligne. L'espacement jusqu'à cela n'est pas tout
à fait correct non plus.
Voilà, c'est vrai. Maintenant, ce qui est encore plus fou, c'est que nous
allons simplement le copier également. Je vais dire que le premier
tour est terminé, nous allons juste
placer le premier tour maintenant. Cela va maintenant faire en sorte
qu'il passe de quatre, 0-45 à -45 et des allers-retours indéfiniment. Si nous jouons simplement à ceci, vous
pourrez le voir. Tout d'abord, il passe à 45
et une fois qu'il a atteint ce bam, il recule et maintenant il
passe à -45, moins 45. Et une fois qu'il atteint ce
chiffre, il remonte à 45. Absolument spectaculaire. Et j'adore
ça et être là, ou ça entre, c'est le style d'assouplissement
différent. Alors, peut-être, changeons l'
heure à trois heures. Et maintenant, si nous obtenons quelque chose comme une
exponentielle, n'est-ce pas ? Cela réduit donc la résistance très rapidement lorsque vous vous
approchez d'une cible. Cela pourrait être intéressant. Jetons donc un coup d'
œil à celui-ci. Ça va avoir l'
air fou, non ? Donc, si nous y regardons, tout d'un coup, cela semble
complètement différent. Cependant,
comme vous pouvez le constater, c'est aussi un effet vraiment cool. Et c'est ce que je suis en train de dire. Soyez ouvert à des expériences sur des sujets tels que le style d'assouplissement, car cela a
vraiment l'air vraiment cool et cela peut
ajouter de l'imprévisibilité à vos éléments sur deux ans
, n'est-ce pas ? Nous pouvons donc le faire. Nous
pouvons aussi dire que nous voulons peut-être dire « voir une onde sinusoïdale ». Bien sûr, pourquoi pas ? Jetons un coup d'œil au panneau. À quoi cela va-t-il ressembler ? Eh bien, voyons voir, d'accord. Donc, ça va
ressembler à ça. C'est donc différent. Encore une fois, ce n'est pas linéaire. C'est une onde sinusoïdale, non ? Donc ça ralentit, ça
accélère un peu. Nous pouvons également en regarder
un autre qui est
assez intéressant. Est-ce, est-ce que c'est le dos ? Oui, celui-ci est
également assez cool car il
dépasse un peu. Nous allons donc
voir qu'il fait
un peu plus de
45 degrés en fait. Et puis il a en quelque sorte
rebondi, comme vous pouvez le voir. Donc, ça dépasse un
peu, puis ça recule et ça
continue de revenir. C'est vraiment génial. Je ne saurais trop insister sur ce point. Il suffit de jouer avec le style d'
assouplissement ici
pendant un petit moment et vous serez
étonné de voir
ce que vous pouvez faire. Maintenant que le script
rotatif est terminé. Eh bien, nous pouvons simplement jeter un œil à toutes nos briques
détruites ici. Assurons-nous simplement que nous
avons toutes les bonnes. Ce sont donc tous
ceux qui se trouvent au-dessus. Très bien, puis nous allons
simplement prendre le script rotatif et ajouter à
chacun d'entre eux. Vous y voilà. Script de notation,
script rotatif, script rotatif N. Le plus en fait, et il nous en faut un de
plus. Vous y voilà. Vous y voilà. Encore une fois. Tout va tourner. Maintenant. Pour être honnête, ils vont
tous tourner à
la même vitesse et bien,
essentiellement à l'unisson. Maintenant, vous
pouvez modifier la rotation initiale
de certains d'entre eux, n'est-ce pas ? Pour que la rotation
soit
désynchronisée ou que cela fonctionne. On peut donc se débrouiller avec
quelqu'un comme ça. Et alors peut-être que nous
allons changer ce type pour quelque chose comme ça. Et je vais
continuer ici. Peut-être que ce type a quelque chose de
complètement fou. Peut-être que ce type est
vraiment au sommet et
qu'il a déjà 45 ans. Alors voyons
ce que tout cela fait quand ils se déplacent tous les deux
simultanément, n'est-ce pas ? Jetons donc un coup d'œil à cela. Et vous pouvez maintenant les voir tous bouger, mais ils
se déplacent tous en même temps. Ça a l'air très cool, non ? Je dois vous dire qu'ils ont air plutôt cool et
vous pouvez voir que ce qui fait 45 degrés change en fait
pour chacun d'eux, n'est-ce pas ? Parce que le cadre C est, dans ce cas, une sorte de droits locaux. Nous sommes donc simplement en train de le
changer à 45 degrés. Mais ce que sont les 45 degrés change, ce qui a en fait
un effet très, très cool. Maintenant, il y a une petite
chose que je voudrais ajouter et qui sera la suivante. Ouvrons donc simplement l'Écriture qui tourne en
haut pour avoir la bonne. Et nous allons juste en
faire une
heure d'adolescence locale ici. Ce sera, disons,
égal à un et nous allons
simplement le modifier ici afin de pouvoir modifier l' heure d'interpolation pendant laquelle chacune de nos briques tuées fait tourner
des briques de destruction ici. Et l'idée ici est que nous allons
en fait le faire via de nouvelles valeurs int. Nous allons donc simplement
ajouter une valeur int ici à la brique de destruction. Et ce sera
la double fois, non ? Ensuite, nous allons
dire port point, temps
double, valeur du point. Vous y voilà. Et maintenant, nous avons le
temps. Alors appelons-les deux. Ensuite, nous pouvons simplement supprimer les anciens scripts
rotatifs. C'est donc encore une fois
l'une de ces choses où un script de module
serait peut-être une bonne chose, mais ce n'est pas
absolument nécessaire. Et je vais juste le
dupliquer et
l'ajouter à toutes nos briques
détruites rotatives. Et puis il est également utile de les renommer
en briques de destruction rotatives,
juste pour briques de destruction rotatives que nous sachions de
quoi il s'agit, n'est-ce pas ? Donc, ce
seront des
briques rotatives ou, disons, tuées par des émeutes, ça ira. J'espère que cela devrait nous
suffire pour nous dire, d'accord,
ce seront ceux qui tourneront. Vous y voilà.
C'en est une aussi. Et puis celui-ci aussi. Et nous y voilà. Et maintenant, nous pouvons
réellement changer cela. Supposons donc que nous voulions le changer
à six, que nous voulions le
changer à un, et que nous voulions le changer
à trois. Et cela devrait aussi
être trois, disons. Maintenant, ils vont tous
être complètement
désynchronisés parce que certains d'entre eux
vont être plus rapides, d'
autres
vont être plus lents. Et ici, vous pouvez également, bien sûr modifier les styles d'assouplissement et constater qu'il existe
désormais toutes sortes de méthodes qui font ce qu'elles
veulent. En gros. Ils s'en fichent même. Et ça va être bien plus intéressant de contourner ça, je veux dire, celui-ci
va être intéressant. Voilà, mais je l'ai fait. C'est tout simplement génial, non ? Vous pouvez donc faire tellement de
choses dès maintenant, en modifiant la
cellule d'accélération de certaines d'entre elles. En théorie, vous pouvez également modifier
la cellule d'accélération à un moment donné pendant
que cela se produit, vous changez entre les temps. Il y a un tas de choses que
tu pourrais faire. Ces idées. J'espère que je vous ai en
quelque sorte inspiré à jouer avec ça, parce que c'est le plus important. Parce que ce que
vous apprendrez le plus, c'est de vous
demander, attendez, comment puis-je faire
ceci, cela ou cela ? Et oui, d'habitude, vous pouvez le faire. Cela revient simplement à l'
essayer et à voir ce que vous pouvez faire. Mais c'est essentiellement
le mouvement pour nos briques tuées ici. Et cela résume assez bien la chose générale que je
voulais faire avec le RB. Nous allons avoir une
autre conférence au cours de laquelle j'ai
parlé de quelques points que
vous pourriez peut-être ajouter. Mais quoi qu'il en soit,
pour le moment, ce sera tout pour
cette conférence ici même. Je serai honnête, utile et
tu apprendras quelque chose de nouveau. Et je vous verrai tous lors
de la prochaine conférence. Donc, oui.
41. (Roblox) Idées supplémentaires pour the: Très bien, bon
retour au RB pour le cours Rowbox. Et dans cette conférence, je veux
juste
parler brièvement de quelques éléments que vous pourriez être en mesure d'ajouter à votre OB lorsque vous continuerez
à le développer. Donc, bien sûr, dans notre
exemple, nous n'
avons que cinq
niveaux et le jeu se joue alors que vous pouvez le jouer
très, très rapidement, n'est-ce pas ? Mais l'idée de
l'armée était
d' illustrer ce que
vous êtes capable de faire. Certaines choses que vous
pourriez développer seraient quelque chose comme prendre la racine carrée du
trou au milieu, n'est-ce pas ? Peut-être en les
agrandissant un peu. Et puis tu peux les
mettre comme ça, d'accord. Vous pouvez donc les mettre en place pour acheter une cigarette, un couloir. Le couloir se déplace
grâce à un service d'interpolation. Donc ça pourrait avoir l'air vraiment,
vraiment cool, non ? Et peut-être que ça pourrait même
être un arc-en-ciel. Ce ne serait peut-être pas
une étape difficile, mais il ne s'agit pas toujours d'avoir difficultés avec le statut. Il s'agit aussi d' avoir des niveaux amusants et de
les rendre cool, n'est-ce pas ? Parce qu'honnêtement, tu sais, le look d'un RB se
situe,
je dirais, entre 30 60 % de ce qui est
cool, non ? Et s'il y a beaucoup d'étapes, suffit de continuer
à suivre et ajouter différentes étapes
qui sont toujours similaires. Vous pouvez donc ajouter d'autres
formes. En théorie, vous pouvez ajouter
les
formes et les
incliner différemment. Je l'ai écrit différemment. Vous pouvez ajouter d'autres escaliers, non ? Vous pouvez ajouter des escaliers
qui se
séparent peut-être de droite à gauche
ou quelque chose comme ça. Vous pouvez ajouter certaines parties où vous devez choisir la
droite ou la gauche, la droite, donc comme celle-ci,
mais en fait, l'une d'entre elles consiste calculer ses défauts. Vous allez donc échouer dans celui-ci, avec des choses comme ça. Il existe de nombreuses façons de s'
y et de le rendre vraiment génial. Et je veux juste que vous fassiez des
expériences si cela vous intéresse
vraiment de
continuer .
Je pense vraiment
que si vous expérimentez avec les idées
que vous pourriez avoir, vous pouvez aussi, bien sûr,
regarder d'autres Abby, voir ce qu'elles ont
et peut-être vous demander : «
OK, comment puis-je mettre cela en œuvre ? C'est un excellent
moyen de continuer à apprendre de plus en plus sur les
obstacles à la création de scripts. À part cela,
nous en avons fini avec cela. Nous
allons maintenant revenir avec ce RB en particulier, car
dans le reste du cours, nous allons aborder des sujets plus intermédiaires. Et la plupart d'entre eux, je veux
essentiellement
vous montrer l'intérieur de ce
RB dans ce cas. Et j'espère
que cela vous aidera également à créer votre propre jeu
Roblox personnalisé. Il y a également quelques idées
d'ajouts futurs, manière dont nous pouvons améliorer cela, manière dont vous pouvez continuer à améliorer
votre passe-temps dans ce cas. Et ce
que je veux dire, ce serait tout
pour cette conférence de cette section du cours. J'espère que cela vous a été utile. Et si vous le faisiez jusqu'à présent, j'apprécierais vraiment
une critique de votre part. Sinon, je vous verrai lors
de la prochaine conférence. Donc, oui.
42. (Roblox) Publication de votre jeu: Très bien, bon retour pour
les sujets intermédiaires ici, suivez le cours Roblox
et dans cette courte conférence, je vais vous montrer comment
publier votre RB ou n'importe quel jeu sur le Roblox lui-même. Donc, pour ce faire, nous
voulons simplement aller dans Fichier
, puis vous verrez
que vous en avez
publié un sur Roblox ici. Nous allons maintenant choisir
la publication sur Roblox car cela
ouvrira une nouvelle fenêtre ici. Voici quelques-unes des choses
qui ont déjà été publiées. Ils ne sont pas tous
privés dans ce cas, mais je peux créer un nouveau jeu, et cela
créera essentiellement un tout nouveau jeu. Maintenant, nous allons simplement appeler
cela notre exemple, OBE, par exemple quelqu'un comme ça,
rien de trop fou. Je suis l'auteur ici. Vous pouvez même changer de
genre dans ce cas. Maintenant, vous pouvez tout à fait le garder. Ou vous pouvez dire, c'est une sorte de thème médiéval
ou B, quelque chose comme ça. C'est bon. Nous allons simplement le
garder. Maintenant, en général, les appareils, nous ne l'avons vraiment testé
que pour l'ordinateur. Donc, si vous voulez être
complètement sauvé, vous pouvez éteindre le téléphone
et la tablette car, eh bien, nous
savons parfaitement que cela fonctionnera sur l'ordinateur. Cependant, vous pouvez
également les conserver, mais assurez-vous également de tester
votre jeu
s' ils fonctionnent correctement sur
le téléphone et sur le dessus Si vous le souhaitez, vous pouvez
ajouter une description ici. Sinon, vous pouvez simplement
appuyer sur Créer et cela
téléchargera le RBA
sur Roadblock. Vous pouvez donc voir que nous sommes déjà en train
de charger notre maison. Sois juste patient pour cela. Et puis voilà. Nous avons maintenant le fichier dans un
petit nuage, ce qui signifie que nous
sommes maintenant sur le serveur. Alors maintenant, naviguez simplement
pour créer que les
obstacles soient des créations de com
slash. Et je vais juste le
recharger et vous trouverez notre exemple, quoique juste en bas de page, en tant
que nouvelle expérience créée. C'est vraiment cool. Et vous pouvez voir que ce n'est pas le problème. Si je fais du montage dans Studio, cela va en fait
ouvrir Roblox Studio pour nous. Cela
ouvrirait donc en fait une nouvelle fenêtre. Donc, en ce moment, vous pouvez voir que Roblox
Studio ouvre à nouveau. Dans notre cas, cela est
déjà ouvert. Donc ce sera comme si, oh mon
Dieu, nous étions déjà ouverts. Alors voilà. On va juste
fermer ça. Et maintenant, nous l'avons également ouvert ici. C'est donc
vraiment génial, mais ce n'est pas tout. Vous pouvez donc bien sûr entrer
ici. Allons-y. Nous pouvons également modifier ces informations pour que vous puissiez
voir que nous pouvons les rendre publiques, que nous pouvons tout désactiver. Nous pouvons créer des badges. Il existe différentes
statistiques que vous pouvez consulter. Vous pouvez même configurer
la fin des localisations. Donc, tout d'abord, nous pouvons l'
ouvrir dans un nouvel onglet. Ce sera donc notre
création ici. Comme vous pouvez le constater, il ne s'
agit que d'un aperçu. Il existe d'autres
paramètres de base pour que vous puissiez modifier le nom si vous le
souhaitez, vous pouvez le rendre privé. C'est également une
chose très importante. Permet donc d'accéder
aux services d'API. C'est sur ce point que nous
reviendrons dans un instant. Je
vous recommande vivement de l'activer déjà et de simplement
enregistrer les modifications. Cependant, nous reviendrons sur
cette question une fois de plus. Cela est nécessaire pour certaines API, telles que l'API de stockage de données que
nous
examinerons très bientôt. Il y a des places. Donc, pour l' instant, il n'y a qu'
un seul endroit, non ? C'est donc juste ce
RB dans ce cas. Et généralement, pour une abbaye, vous n'avez qu'un seul lieu, mais vous avez plusieurs
lieux connectés via certaines plateformes de téléportation certaines passerelles ou tout ce que
vous voulez. Et nous allons également
voir cela dans les
étapes intermédiaires ici. Il existe d'autres éléments
qui
vous permettent de créer des badges, de créer des passes et même de créer
un développeur. Les produits ne
seront pas
abordés dans ce cours. Mais il y a quand même une chose
intéressante. Il existe différents types d'accès. Les types d'accès ici
seraient donc de savoir s'il faut ou non payer
pour créer un serveur privé. On peut donc dire qu'il faut une
robotique X, des choses comme ça. Il y a donc quelque chose de très
cool que vous pouvez faire. Il existe un questionnaire
qui
n'était pas éligible pour le moment. Il y a de la localisation,
donc
cela traduirait certaines choses. C'est complètement fou. Nous n'avons pas examiné la
localisation du service, mais c'est vraiment cool
que cela existe. Nous pouvons également ajouter
des liens sociaux. Il ne s'agirait donc que de plateformes
sociales ici. Nous pouvons obtenir des mises à jour. C'est donc un excellent moyen
d'informer l'utilisateur. En gros, tu sais, il s'est passé
quelque chose. Il y a des notifications. Nous pouvons donc créer des
chaînes de notification, puis la publicité et
le sponsoring
sont dirigés vers une fenêtre différente. Et puis, à la fin,
il y a les statistiques des développeurs essentiellement combien de personnes jouent
sur quelle plateforme ? Quelles sont les données historiques ? Il y a beaucoup de choses ici, ce qui est vraiment génial. Mais si nous revenons à l'
expérience ici, ce que vous pouvez faire, c'est accéder à Roblox. Et ce qui va
se passer, c'est que vous verrez probablement,
comme vous l' avez vu plusieurs fois,
cette fenêtre particulière. Et ce qui est vraiment
cool, c'est que vous pouvez à
nouveau accéder à Modifier ,
puis l'ouvrir à
nouveau dans Roblox Studio. Maintenant, nous
n'en voudrons plus, n'est-ce pas ? Il y a donc un tas
de choses, d'accord, configurées ici pour
que nous puissions réellement configurer qu'il s'agit de
l'ancienne version. Si nous revenons à
la nouvelle version, vous pouvez voir ici que nous pouvons désormais également modifier l'icône et d'autres choses. Il y avait
donc une chose importante que je voulais examiner, à la façon dont on
l'intègre
à travers les
créations, n'est-ce pas ? Donc, si nous sommes sur cet
écran de création, vous accédez à votre Abby, puis vous accédez à des lieux, puis vous cliquez sur
le lieu et vous pouvez modifier les
détails, n'est-ce pas ? Vous pouvez donc modifier
l'icône ici. Vous pouvez soit créer
l'image automatique soit même la modifier. Vous pouvez modifier la miniature. Donc, la miniature
serait bien sûr cette chose ici, n'est-ce pas ? Vous pouvez en fait
voir sur les barrages routiers. Donc, si vous utilisez des robots, ce gros truc est ici, et puis il y a accès. Combien de visiteurs sont disponibles ? Habituellement, vous voulez qu'ils ressemblent tous aux paramètres du service. Vous voulez tous un historique des versions
optimisé pour Roblox. Quelles sont donc les versions
qui ont été mises en œuvre ? Et enfin,
quelques autorisations. À l'heure actuelle, la plupart d'
entre eux ne sont pas importants. Je vous suggère de conserver la majeure partie
de ce taux par défaut. Donc, si nous cliquons maintenant sur Play, c'est
vrai, cela ne s'ouvrira pas
réellement. Roblox Studio
va en fait ouvrir Roblox lui-même. Alors voilà,
notre exemple d'OB en comptant Joel et nous
rejoignons maintenant, et nous y voilà. Maintenant, nous sommes dans le jeu et ce sont en fait des obstacles. Ce n'est pas Roblox Studio. Et si on continue ici
et qu'on y va, bam, première étape, ça marche. On peut toujours mourir ici. Et c'est à peu près
tout ce qu'il y a à dire. Je veux dire, c'est vraiment bien. Donc ça marche vraiment. Je recommande vivement
des tests fréquents. Regardons les escaliers. Ils disparaissaient également
et tombaient également. Ce n'est pas tout à fait
ce que j'avais en tête. Veuillez excuser le fait
qu'il n'y avait pas de volume. Je l'ai éteint,
mais voilà. Maintenant, vous avez des
scies qui tournent,
n'est-ce pas ? Voilà. Oh, celui-ci est dingue. Celui-ci est fou celui-ci. Celui-là est vraiment bon. J'aime ça. Ensuite, nous avons trouvé nos
formes, et c'est parti. Maintenant, nous avons vraiment
le jeu ici. Bien sûr, c'est encore
un peu rudimentaire,
mais c'est le début
de la création d'un jeu et
maintenant il est publié, n'
est pas encore public, mais vous pouvez bien sûr
choisir de le rendre public ou non. Une fois que nous en aurons terminé,
nous pourrons y retourner. Encore une fois. Le plus important, ce sont les créations. Et là, vous pouvez
accéder à toutes vos créations. Vous pouvez donc passer à
votre exemple ou à votre B, et vous pouvez modifier tout ce
que vous souhaitez. Maintenant,
si c'est si important que nous l'ayons publié, c'est parce que
nous avons besoin que notre site soit publié
avant de pouvoir l'utiliser. Eh bien, toutes les choses
dont nous allons
parler dans les prochaines conférences. Mais ce sera essentiellement
tout pour cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous avez appris que c'est le Nouveau, et je vous verrai tous lors de la
prochaine conférence. Alors oui.
43. (Roblox) Ajouter des photos à votre interface graphique: Très bien, revenons
aux sujets intermédiaires ici, au cours sur les obstacles supplémentaires. Et dans cette courte conférence, nous verrons
comment ajouter une image à votre interface graphique. La raison pour laquelle
nous n'avons pas été en mesure de le
faire lorsque nous avons examiné les interfaces graphiques pour la
première fois, c'est parce que
les images
doivent correspondre à ce dont elles ont besoin
pour être publiées, n'est-ce pas ? Donc, si j'ajoute une image
ici,
c'est vrai, nous ajoutons une étiquette d'image, comme vous pouvez le voir maintenant, nous
avons une image ici. Ajoutons simplement ceci
à l'intérieur de la taille ici. Ça va très bien se passer. Cela va changer. Maintenant. Pour changer ce
droit, cliquez sur l'image, puis vous descendez à l'
image juste ici. Et comme vous pouvez le voir, nous
pouvons maintenant ajouter une image. Maintenant, pour ajouter une image, nous allons
simplement choisir un fichier. J'ai préparé un bouton
pour le pouce levé ici. Je pense que ça va très bien
se passer. Nous allons appeler cela un pouce
levé et nous allons créer, cela
téléchargera le bouton du pouce
levé sur Roblox lui-même. Vous pouvez donc voir que net
possède désormais un identifiant Roadblocks, et cet identifiant est
vraiment important et sera désormais disponible. Rendons ça un
peu plus beau. Peut-être allons-nous en
faire un
peu plus petit, un
nombre pair comme ça. Ensuite, nous allons le faire. Et voilà. Alors
maintenant, nous l'avons. Supprimons également la bordure car en fait, je
ne veux pas de bordure. Non, je n'aimerais pas
avoir de frontière ici. Et voilà. Maintenant,
nous avons un coup de pouce à côté de votre scène. instant, nous ne faisons
rien avec ça, mais c'est plutôt cool, non ? C'est donc à peu près ainsi
que vous pouvez ajouter l'image. Si nous enregistrons maintenant, vous
pouvez voir que nous changeons Nous avons maintenant enregistré ces
modifications dans Roblox, n'est-ce pas ? Donc, si nous revenons
à
nos créations et que nous
reprenions notre exemple,
je m'arrêterais aux endroits et
non à un endroit dans
l'historique des versions Vous pouvez voir que nous avons simplement la dernière version
parce que c'est une solution sûre. Et si nous devions le
publier maintenant, nous le publierons à nouveau Roblox, puis il le
publiera également. Nous publions donc maintenant
les modifications. Il y a deux
opérations différentes, non ? Mais si vous revenez à l'historique des
versions, vous pouvez maintenant voir qu'
il s'agit d'une version publiée. Il y a donc une différence entre enregistrer vos modifications et les
publier. C'est une
chose très importante à garder à l'esprit. D'accord ? Donc, quand je l'ajoute et
que je l'ai enregistré, non ? Donc, j'ai appuyé sur Control S
ou vous allez dans Fichier et Enregistrer. Cela signifie qu'il est
enregistré sur le Roblox Cloud. Vous pouvez restaurer les versions antérieures
et les versions enregistrées en
tant que version antérieure. Il s'agit d'un instantané de toutes
les modifications que vous avez apportées. Cependant,
ce n'est pas parce que vous avez enregistré que
les joueurs votre jeu bénéficieront de
ces modifications. Pour apporter les modifications aux votre
jeu, vous devez publier
la version qui est très,
très importante et c'est une différence très importante pour vous savoir quand vous
essayez réellement de le faire. Encore une petite
chose , vous
allez probablement vous demander, eh bien, comment puis-je modifier cette image
si quelque chose devait arriver ? Eh bien, juste pour les besoins de
l'argumentation,
téléchargeons une autre image, non ? Et ce
sera le pouce vers le bas. Et voilà. Ce
sera aussi un pouce vers le bas. Créons cela également. Ça va être
téléchargé et il va y avoir un nouvel identifiant ici. Maintenant, nous avons le pouce vers le bas et disons simplement que pour
les besoins de la discussion, nous allons simplement ajouter un script
local ici. Les services locaux
vont changer l'image, zoomer un peu et nous voulions
juste obtenir l'image. L'image est donc,
bien entendu, le script point parent doit être assez
explicite. Et puis nous allons
dire ImageView.image. Gardez à l'esprit
que la variable
s'appelle image avec un I minuscule.
Et l'image I majuscule est
en fait la propriété qui
pointe vers l'image
à laquelle nous
avons juste la même image. Et
c'est très important. Nous voulons essentiellement obtenir l'URL du
ribulose afin que l'image soit égale à HTTP : deux-points,
barre oblique, www point. Les obstacles sont des éléments de barre oblique, tels que l'identifiant du point d'interrogation
est égal, puis vous pouvez faire un point et ensuite
vous allez simplement
obtenir l'identifiant de l'image pour
obtenir l'identifiant de l'image. Mais je sélectionne simplement
l'étiquette de l'image ,
puis je sélectionne l'image
que vous voulez, n'est-ce pas ? Vous pouvez, vous pouvez simplement
le sélectionner, puis copier l'identifiant à partir d'ici. Ensuite,
assurons-nous que l'image par défaut est bien
le pouce vers le bas. Ensuite, nous
voulons essentiellement le changer. Nous allons donc y retourner. Nous allons simplement l'
ajouter ici. Et ça devrait aller. Ensuite, nous pouvons enregistrer cela. Et vous pouvez voir que je suis en train d'appliquer les modifications ici. Et cela
évite une fois de plus deux obstacles
au cloud et nous devrions
commencer par un pouce vers le bas. Cependant,
cela
changera en fait d'un pouce levé une
fois le jeu lancé, car l'image change, votre script s'exécute. Et nous y voilà. Maintenant, nous avons reçu un
coup de pouce parce que, bien
sûr, cela a changé
l'imagerie ici même. Vous pouvez modifier l'
image ici, n'est-ce pas ? Quand, quand quelque chose arrive
vraiment, si vous êtes un joueur qui
meurt, qui peut le changer en
pouce vers le bas, n'est-ce pas ? Et lorsqu'ils atteignent
le prochain point de contrôle, vous pouvez le
remplacer par un pouce levé. Maintenant, sachez qu'il s'agit d'un script local et que
l'interface graphique standard est locale. Donc, si vous essayez de le faire via un script normal ici, il peut être un peu
plus difficile de le faire fonctionner correctement
pour le moment Mais
c'est ainsi que vous
modifiez une image, n'est-ce pas ? Et ce
sera en fait tout pour cette conférence ici même. J'espère que vous avez trouvé
cela utile et que vous apprendrez quelque chose de nouveau
. Je vous verrai tous lors de la prochaine
conférence. Donc, oui.
44. (Roblox) Stocker des données de joueurs avec DataStoreService: Très bien, passons
aux sujets intermédiaires pour
les scores des robots. Et dans cette conférence,
nous allons examiner le service de
stockage de données. Le service de stockage de données est donc un service incroyablement
puissant qui vous
permet de stocker les
données des joueurs sur le Roblox Cloud. Maintenant, non
seulement c'est vraiment cool, mais
cela vous permet également de
faire des choses comme, disons, que votre
joueur ait joué votre ABI avant d'
atteindre la deuxième étape. Maintenant, ce qui va se passer,
c'est que s'ils devaient quitter le jeu et le rejoindre à nouveau, ils réapparaîtront
au début, n'est-ce pas ? Ils ont donc perdu toute leur progression parce que leur progression
n'a pas été enregistrée. Mais avec le service
de stockage de données, nous pouvons
enregistrer la progression dans et dans un fichier en ligne, dans un tableau, puis la récupérer lorsque
le joueur rejoint et encore une fois, et c'est exactement
ce que nous allons faire. Jetons donc un coup d'œil
à la manière dont nous pouvons procéder. La surface elle-même n'
est donc pas compliquée sur ces
serveurs, serveurs Web Nous allons simplement créer un nouveau script et
nous allons l'appeler le script de point de contrôle de chargement. Et comme
cela fonctionne bien, nous avons tout d'abord
besoin, bien sûr, d' un service de
stockage de données complet. Il va donc y avoir un service de stockage de
données local. Cela équivaut à Game
Colon Get Service. Et nous voulons le service
de stockage de données ici même. C'est incroyable. C'est
la première chose à faire. La deuxième chose est que
nous voulons un magasin spécifique. L'idée est donc que dans
le service de stockage de données, vous avez un tas de poubelles
différentes, disons. Et dans ces corbeilles, vous
enregistrez toutes les données. Donc, nous aurons besoin
d'un local et nous allons simplement l'appeler le
point de contrôle, le magasin du point de contrôle. Et cela équivaut au colon du service de stockage de
données get Datastore. Et puis nous avons voulu le nommer. Maintenant, c'est
extrêmement important. Nous allons l'appeler
le magasin Checkpoint. Chaque fois que nous voulons accéder
à la boutique, nous avons besoin de cette chaîne spécifique. Il s'agit de notre clé unique pour identifier le magasin de données auquel
nous voulons accéder. Et c'est extrêmement important
de bien faire les choses, mais nous avons un
service de stockage de données et nous avons le magasin
Checkpoint qui stocke toutes les
informations. Donc, la prochaine chose que nous
voulons faire est de faire la même chose que dans le classement. Et c'est l'idée du
joueur ajoutée ici. Nous allons donc simplement
recruter les joueurs également. C'est généralement
ce que vous voulez. Ensuite, ce que nous voulons
faire, c'est
copier l'
événement ajouté par le joueur ici. Je veux dire, nous pouvons aussi
simplement le taper, mais parfois
vous pouvez simplement le copier aussi bien. Et ce sera
une fonction. Et la fonction ici est d'
obtenir les données des points de contrôle, n'est-ce pas ? Nous allons le faire et nous allons le
mettre dans
le connecteur ici. Nous allons donc obtenir un
point de contrôle des données et nous pouvons également
trouver le joueur pour cela. Bien sûr, voilà. Maintenant, nous avons également le joueur ici. Et c'est en fait
très important parce que nous avons besoin de l'identifiant du joueur, n'est-ce pas ? Nous avons donc besoin d'une clé sous
laquelle nous pouvons enregistrer tout cela. L'idée est donc
de créer une clé. Ce sera donc la clé
du point de contrôle. Et cela revient
à dire, en général, ce que vous voulez
faire, c'est dire point du
joueur, identifiant du joueur, et cela fera point, point, puis nous ferons un tiret. Et puis vous pouvez, par exemple,
répéter point point. Ensuite, vous pouvez
dire point de contrôle, par exemple et
cela fera en sorte que la clé soit spécifique à chaque joueur, car l'identifiant du joueur est unique
pour chaque joueur, donc cela ne
devrait pas poser de problème. Encore une fois, cette clé doit
toujours être la même. Sinon, vous ne
pourrez pas récupérer les données ou les obtenir. Ça va être très intéressant. Nous allons donc
faire en sorte que les données locales soient égales à zéro dès maintenant, puis nous allons
le faire avec le lait suivant, un message de réussite ou
d'erreur local équivalent à un appel P. Je vais expliquer
cela dans un instant. Au lieu du P, l'appel
créera une nouvelle fonction. Et ce sera Data
Equals Checkpoint Store. Maintenant, nous allons entrer, entrer dans le magasin, deux-points, passer à l'asynchrone. Nous allons donc
récupérer toutes les données qui s'y trouvent de manière asynchrone. Nous n'allons donc pas
attendre que ça charge. Nous allons juste vous dire de le
récupérer chaque fois que vous le pouvez. Et nous allons
obtenir les données pour la clé de contrôle du joueur qui
vient de nous rejoindre. C'est l'idée générale. Maintenant, une fois que c'est fait, c'est très important. Nous voulons vérifier si tout a fonctionné ou
non. Nous allons donc
dire qu'en cas de succès, nous pouvons rendre
quelque chose ou nous pouvons,
nous pouvons faire, c'est ce que nous
voulons dire d'autre, n'est-ce pas ? Mais cela signifierait que
cela ne fonctionne pas, alors nous
voulions en fait faire une erreur. Et nous voulons parler d'
une erreur de banque de données. Il n'est pas nécessaire de l'
appeler exactement comme ça, mais juste au cas où. Ensuite, nous voulons afficher le message
d'erreur ici, n'est-ce pas ? Et si cela réussit, nous
pouvons essentiellement continuer. Nous allons juste l'
appeler tout de suite. Procédez à la
modification,
changez de magasin , modifiez, changez de point de contrôle, cela
se fera en un instant. Mais l'idée ici est
de lire cette clé ici et de dire : « Hé,
il
suffit de déplacer la
fonction get async ici avec
cette clé particulière, qui
nous permet d'obtenir tout ce qui est stocké sous cette clé dans notre magasin
de données. La raison pour laquelle nous utilisons Peek Hole que vous pouvez voir, fait la fonction fournisseur
et détecte les erreurs. L'idée générale est donc
que c'est la raison pour laquelle nous
avons ce succès et
cette erreur.
Le code P garantit
simplement que s'
il y a une
erreur lors du get acing, si
vous n'êtes Le code P garantit
simplement que s'
il y a une
erreur lors du get acing, si vous n' pas correctement
connecté à Internet , en cas de panne, de panne des serveurs ou
quoi que ce soit d'autre, il le verrouillera
sous le message d'erreur. Et si tout était
couronné de succès et que nous
allions simplement réussir. C'est Leary, tout ce que nous faisons. Donc, pour le moment. Je voulais juste
publier un succès ici. Si cela réussit une flèche blanche
ici, si ce n'est pas le cas. Gardons-le donc
pour les besoins de l'argumentation. Passons simplement à l'intérieur
du jeu et vous
verrez à quel point il va se passer quelque chose d'intéressant si nous jouons à ce jeu maintenant.
Tout d'abord, vous
pouvez voir
que l'identifiant du
joueur n'est
même pas un membre du compte d'
un joueur
et c'est très bien, identifiant du
joueur n'est
même pas un membre du compte d' un joueur
et c'est très bien car il
s'appelait en fait identifiant utilisateur. J'ai fait une boucle, j'ai vu leur
leader qui devrait être un identifiant utilisateur. C'est ce que nous voulions utiliser. Et puis c'est la même
idée que l'identifiant du joueur. Et si on le faisait maintenant ? Maintenant, nous avons
encore cette erreur et nous obtenons
réellement un succès. Maintenant c'est vraiment cool, non ? Nous y avons donc chargé quelques données
. C'est intéressant. Maintenant, la vraie question est qu'avons-nous chargé
, n'est-ce pas ? Donc, si nous ne parlons que de données de
réussite, nous allons obtenir quelque chose d'
intéressant, n'est-ce pas ? Alors, quelles données a-t-il réellement
chargées depuis le get async ? Eh bien, jetons un coup d'œil. Et c'est arrivé, parce que vous pouvez
voir qu'il a obtenu un zéro, n'est-ce pas ? Donc, à
la vue des données présentées ici, nous avons écrit moulin,
ce n'est pas tout à fait exact. Ce n'est pas exactement
ce que nous voulons. Nous ne voulons pas que ce soit nul. Donc, ce que nous pouvons faire, c'est
dire n données en disant, en gros,
qu' il devrait y avoir quelque chose écrit à la place des données. Sinon, nous n'y arriverons pas
vraiment. Comme si ce n'était pas un succès. Si les données sont nulles,
ce n'est pas correct, nous le voulons, alors
allons-y, n'est-ce pas ? Donc, ce n'est que si le succès
et les
données sont présents que nous voulons
imprimer avec succès. Sinon, nous voulons
imprimer le message d'erreur. Et si nous devions le
charger maintenant, vous pouvez voir que nous obtenons
toujours un zéro, mais maintenant nous
obtenons le nœud du message d'erreur
parce que, curieusement, il n' y a pas de
message d'erreur, n'est-ce pas ? OK, donc c'est intéressant. Nous voulons arrêter et changer cela en une autre,
si ce n'est pas un succès, alors nous le faisons et nous
repartons maintenant que nous l'avons fait. Je l'ai fait spécifiquement
comme ça pour que vous puissiez comprendre pourquoi vous avez besoin de chaque
étape individuelle, n'est-ce pas ? Vous ne voulez pas
vraiment réussir si les données sont nulles, n'est-ce pas ? Ce n'est pas bien,
ce n'est pas correct. Vous ne voulez afficher
le message d'erreur que s' il échoue,
car nous savons alors, d'accord, tout va bien. Donc, si les choses se compliquent un
peu, c'est exactement la nature des
étapes intermédiaires actuelles, car nous utilisons beaucoup plus de choses et nous
connectons beaucoup plus de choses. Mais pour le moment,
nous allons continuer comme ça. Passons maintenant à la
modification du point de contrôle. Maintenant, comment ferions-nous cela, n'est-ce pas ? Le point de contrôle est donc effectué dans le
script de point de contrôle ici. Et c'est
vraiment cool parce que le script de point de contrôle crée
en fait, comme vous pouvez le voir, un point
de contrôle de données ici. Maintenant, nous pouvons littéralement prendre cela et
le changer. Nous pouvons donc simplement le faire,
nous pouvons le prendre, et nous allons juste
faire la même chose, n'est-ce pas ? Donc, si nous réussissons à
lire quelque chose, nous allons créer
une nouvelle instance. Maintenant, dans ce cas, c'est un, voici les données du
point de contrôle ici. Donc, ce que nous allons faire,
c'est faire exactement la même
chose ici. Alors je vais aller jusqu'
au bout, non ? Donc celui-ci, ici. Maintenant, ce que nous allons faire, c'est intégrer cela à une autre fonction parce que je pense qu'il
est un peu mieux de garder l'écran. Ce sera le système de
création de points de contrôle. Peut-être que système
n'est pas le bon mot ici, mais ça ira. Nous pouvons en changer
le nom dans un instant. Données des points de contrôle.
Bien sûr, c'est bon. Données des points de contrôle des taux. Nous allons donc l'
appeler ici. Et l'idée est
que cela ne
sera appelé qu'une seule fois, non ? Parce que si les
données du point de contrôle sont déjà créées par la première personne
ajoutée au serveur. Nous ne voulons pas le
créer à nouveau, mais si ce n'est pas le cas, nous allons
simplement le créer. Et si c'est ce qu'il faut,
après l'avoir créé, nous voulons maintenant le faire
exactement au printemps, n'est-ce pas ? Nous voulons donc changer cela. Nous voulons obtenir l'enfant
du nom d'utilisateur ici. Et encore une fois, ce que
nous pouvons réellement faire, c'est obtenir tout cela, à l'exception du
joueur ajouté ici. Nous ne voulons pas cela,
nous voulons juste cela. Et puis ce sera
une autre fonction. Et cette fonction sera un point de contrôle ou un joueur pour obtenir ou
créer. Et ça va
ressembler à ça
, puis il suffit d'ajouter une fin ici. Et c'est très
important. Vous y voilà. Maintenant, nous n'avons pas
les données des points de contrôle. C'est très bien. Nous
pouvons transmettre cela. Nous n'avons pas le joueur. Nous pouvons, nous pouvons certainement
transmettre le joueur. Cela ne posera
absolument aucun problème. Donc, si nous devions l'appeler, obtenir ou créer le
nom long, mais c'est très bien. Nous pouvons donc faire passer le
joueur ici. Vous y voilà. C'est très bien. Et puis les
données des points de contrôle que nous n'avons pas transmises. Réfléchissons donc à la façon dont
nous pouvons essentiellement y parvenir. Nous pourrions donc faire quelque chose de très
intéressant et cela pourrait être le
retour à tout cela, n'est-ce pas ? Nous pouvons donc renvoyer les données du
point de contrôle ici. Et nous pouvons revenir aux données du
point de contrôle ici. Et nous pouvons créer des données
ponctuelles locales, n'est-ce pas ? Ensuite, nous pouvons simplement transmettre
cela. Vous y voilà. Ensuite, nous allons simplement
parler de données ponctuelles ici. Donc, par exemple, cela peut être un moyen
très simple de le faire. Peut-être que vous n'y avez pas
pensé comme ça, mais ils pourraient,
bien sûr , ce serait très bien
, n'est-ce pas ? Soit nous avons créé les données du
point de contrôle ici, soit nous les avons lues à partir des données
du stockage du serveur. Et si c'est le cas,
nous le rendons simplement. Et comme c'est nécessaire
dans cette fonction, nous pouvons simplement le transmettre
ici. C'est tout ce qu'il y a à dire. Cependant, la seule chose
que nous devons
également faire, bien sûr, est de nous
assurer que la valeur du point de contrôle est égale aux
données que nous venons de lire. Ce sera le point de contrôle
enregistré. Je pense que ce nom est
bon. Ça va être une bonne chose. Et nous allons juste
régler cette valeur égale à celle du point de contrôle
du magasin. Et nous allons simplement
le transmettre ici également. Ce seront des données. Dans ce cas, nous n'avons
en fait pas besoin de vérifier si une donnée est nulle ou
non. Parce que nous avons dit qu'en
cas de succès et de données, nous sommes déjà en train de vérifier si les données sont nulles, n'est-ce pas ? Parce que si N données
signifient essentiellement qu'elles ne sont pas nulles,
c'est l'idée générale. Donc, pour cela, nous
obtenons essentiellement tout ce dont nous avons
besoin. Dans ce cas. Donc, si nous lisons
quelque chose, nous obtenons
les données correctes via les serveurs des points de contrôle. Si nous avons réussi et que
les données ont probablement été lues, nous obtiendrons un
succès imprimé. Ensuite, créez les
nouvelles données de point de contrôle sur le stockage du serveur. Il s'agit des magasins du serveur local. agit donc du serveur lui-même sur lequel nous
jouons actuellement, et non du même magasin de données. Ce sont deux choses complètement
différentes. Maintenant, ils ont un nom très
similaire, non ? Dans ce cas, ils
ont en fait le même nom, non ? Nous avons les données, les données des
points de contrôle ici, la boutique Check Point ici. Et nous avons le point de contrôle avec les données du magasin. Je comprends qu'il y a
quelques niveaux d' abstraction que vous
devez être capable de garder à l'esprit. archive. C'est En même temps,
le stockage des données ressemble à une grande l'archive
qui se trouve
quelque part sur le serveur, très, très
loin, et vous ne
savez même pas où elle se trouve, n'est-ce pas ? Ce sont les archives. Vous pouvez accéder aux
archives en accédant
au service, puis
en accédant à un magasin spécifique. C'est comme obtenir un classeur
spécifique. Supposons que vous
sortiez
un fichier spécifique de ce classeur en
vérifiant l'identifiant utilisateur l'
aide du point de contrôle
ci-dessous, c'est la clé. Ensuite, vous extrayez ces données directement à
partir de ces données, par exemple s'il s'agit de trois pour les besoins de l'
argumentation, si c'est trois, alors vous créez sur le serveur auquel vous
jouez en ce moment, toute cette folie
ici,
puis vous dites, d' accord, notre valeur de point de contrôle selon laquelle
le joueur doit être petit, soit trois, et c'est à peu près
ce
que nous sommes faire ici. Cependant, il y a une chose importante, et c'est celle
qui n'est pas faite. Nous n'économisons rien. Nous y sommes en ce moment, nous sommes
juste en train de le lire, d'accord, donc nous pouvons également
lire quelque chose. Créons donc une autre
fonction ici, et nous allons l'appeler
les données de point de contrôle définies. Allons-y réellement. voilà, une fois de plus, le joueur
spécifique à la forêt, et ce sera la couche noire du joueur qui
supprimera la couche noire. Il se déclenche lorsqu'un joueur
est sur le point de quitter la partie. Très important,
supprimer Colon Connect. Et ce sera l'ensemble des données des points de contrôle ici. Et sans les parenthèses, bien
sûr, voilà. Alors, comment définir les données des
points de contrôle ? Eh bien, tout d'abord, nous avons besoin
du même point ici. C'est donc
ce dont nous avons besoin. Maintenant, nous avons déjà besoin du nom du
point de contrôle. Disons que c'est
le point de contrôle pour
le joueur : obtenir ou créer . Maintenant, cela définit réellement
la valeur pour nous, ce qui n'est pas tout à fait ce que nous voulons. Donc, ce que nous pouvons faire, c'est placer cette partie en particulier ici. Nous devrions donc en faire
le véritable point de contrôle. Maintenant, nous n'avons pas
les données pour le moment. C'est très bien. Nous pouvons créer les
données des points de contrôle maintenant. En fait, je
veux les renommer pour obtenir ou créer des données de point de contrôle car c'est beaucoup
plus précis. Et nous allons simplement
changer cela ici. Et encore une fois, nous pouvons simplement
obtenir les données des points de contrôle. En faisant cela, nous pouvons simplement dire obtenir ou créer des données de
point de contrôle, trouver le premier enfant
du nom d'utilisateur ici. Maintenant, nous avons le point de contrôle et la valeur sera ce
seront les données qui sont censées être enregistrées. La
valeur du point de contrôle et l'ego. Maintenant, comment pouvons-nous enregistrer cela ? Pendant que nous faisons la
même chose, nous émettons un
message d'erreur de réussite local égal à P call, créant ainsi une nouvelle fonction ici. Et puis nous allons
dire magasin Check Point. Il s'agit de notre ensemble de
deux-points de banque de données asynchrone. Nous allons transmettre la clé
du point de contrôle, puis nous transmettrons les données. Et voilà. Et cela devrait être tout ce
dont nous avons besoin. Maintenant, bien sûr, vous devriez
également le faire, sinon réussir. Ensuite, nous voulons afficher une
erreur et nous allons dire qu' impossible d'enregistrer correctement les données ,
puis afficher le message
d'erreur ici Juste pour y parvenir, il est toujours très important de
verrouiller vos erreurs. Et maintenant, lorsqu'un
joueur est retiré, vrai, lorsqu'il quitte
la partie, en théorie, il devrait enregistrer le point de contrôle et, lorsqu'il rejoint la partie, il devrait obtenir le point de contrôle
qui a été enregistré, d'accord, les données qui ont été enregistrées, et cela devrait être à
peu près tout ce dont nous avons besoin ici. Maintenant, cela peut sembler assez compliqué
pour le moment. Maintenant ça l'est, non ? Nous avons comme une
multitude de fonctions. Nous faisons plein de choses
différentes. Nous avons ici une certaine logique
de branchement. Je comprends que
c'est beaucoup à assimiler en
même temps. C'est pourquoi il s'agit des sujets
intermédiaires. Cela devient de plus en plus
compliqué au fur et à mesure que nous avançons. Mais j'espère que la logique
générale est bonne. Alors,
sauvegardons cela et voyons
si tout fonctionne. Il y a peut-être une
flèche ici ou là, mais je pense que dans l'ensemble,
cela devrait aller. Ensuite, je vais
expliquer une autre chose qui est très importante ici. Alors, joignons-nous à nous. En théorie, nous devrions
participer à l'étape zéro, tout devrait bien se passer
et aucune erreur ne devrait être présente, et c'est absolument incroyable. Donc, si nous devions
maintenant continuer ici et y aller, sommes à la première étape. Si nous arrêtons cela pour le
moment, sauvegardez les données. Maintenant, nous
obtenons cela et c' est en quelque sorte enregistrer les données, ne pouvons pas stocker l'instance
dans le stockage de données. Ils ont recours à n'accepter
que des caractères UTF-8 valides. OK, c'est bon. La question qui
se pose est donc la suivante : quelle est la valeur réelle
que l'on essaie d'économiser ? C'est donc la prochaine étape. Oh, oui, c'est vrai, je sais quel est le problème. Bien entendu, si nous
revenons à la logique du script de
point de contrôle, la valeur du point de contrôle ne correspond qu'aux emplacements d'
apparition. Nous voulons en fait la valeur du
numéro de point de contrôle ici, car ce n'est pas une chose
qui est réellement enregistrée. Donc, si nous procédons comme suit, si nous entrons ici et que nous
enregistrons la valeur du point de contrôle, nous
le faisons correctement. Et il en
va de même dans l'autre sens. Maintenant, nous
rencontrons juste un problème. Épargner n'est absolument pas un souci. Nous pouvons donc le faire en économisant, sans aucun problème, mais le
chargement est maintenant un
peu plus difficile. Tout simplement parce que nous avons
maintenant le
numéro du point de contrôle. D'accord. C'est très bien. Mais comment accéder à
ce point de contrôle ? Comment obtenir le bon
point de contrôle pour le numéro ? Maintenant, ce que vous pouvez faire, c'est que nous avons ce
script de numérotation des
points de contrôle très pratique ici, n'est-ce pas ? Et celui-ci pourrait
s'avérer bien plus utile que vous ne le pensez, car ici,
nous faisons participer les enfants de tous
les points de contrôle. Cela devrait donc être
tout ce dont nous avons réellement besoin. Je pense à
l'idée de faire une table ici, non ? Ce seraient donc
nos points de contrôle, ce qui équivaut à une table
vide pour le moment. Ensuite, vous pouvez effectuer des points de contrôle pour insérer des points dans un tableau
. Ensuite, la valeur
sera, il y aura un
décompte et la valeur sera le
point de contrôle lui-même. Donc ça va être le jackpot. Je pense que la façon la plus intelligente de le faire est probablement d'
accéder au service de
script du serveur ici et de créer un script de
module, n'est-ce pas ? Nous allons en créer un nouveau, ce sera
notre tableau de points de contrôle. Disons que nous
allons également
renommer cela en
points de contrôle, n'est-ce pas ? Ne pas tourner les
points de contrôle ici. Et maintenant, ce que nous devrions
être en mesure de faire, c'est de
remplacer la
numérotation correcte des points de contrôle, lorsque cela est possible. Ce sera donc notre table. Appelons ce
poste de contrôle « plage de table ». Cela est obligatoire. Ce sera le tableau à
points de contrôle du service de scripts
du serveur de jeu . Et avec le tableau des points de contrôle, nous devrions être en mesure de
faire ce qui suit. Maintenant, insérez le point de contrôle
du compteur de points de contrôle. Nous insérons donc maintenant
des éléments dans la table, c'
est-à-dire le
script du module, n'est-ce pas ? Et ce que nous pouvons faire,
c'est de garder ça un instant. Et à l'intérieur du point de contrôle
de
chargement , nous pouvons également l'obtenir. Il y a les points de
picotement locaux égaux à la table de points de contrôle à points du
service de script du serveur de jeu
requise. Et ce
seraient alors des points de contrôle, des
crochets, des points de contrôle des magasins. Vous y voilà. Et je pense
que c'est probablement la manière la plus propre
de le faire. Donc, Success One est
chargé, c'est bon. Juste pour le
plaisir de la discussion, sommes là, et
allons-y. Maintenant que nous en avons un chargé,
nous allons nous arrêter. C'est un coffre, c'est bon. Jouons à nouveau et nous sommes toujours en train d'apparaître au début,
ce qui est très intéressant. Cependant, nous ne
recevons aucune erreur, ce qui est plutôt bien. Des imprévus se produisent. Il se peut que nous
devions intégrer le caractère
blanc ajouté ici dans
notre script de chargement. Et je mettrais cela
juste après avoir défini la valeur ici. Je pense que ce serait l'idée et
que cela devrait suffire car le personnage
ajouté ici devrait être appelé après l'ajout du
joueur. Essayons donc de l'ajouter la
valeur indiquant
que vous avez déjà modifié le
lieu d'apparition, car c'est la seule chose que
nous devons vraiment faire, n'est-ce pas ? Nous n'avons qu'à dépenser pour
changer le lieu d'apparition. Nous y voilà. Cela fonctionne
immédiatement. C'est absolument incroyable. Vous pouvez donc voir qu'il y a
parfois un peu de
***** ici. Donc, si tu passes à deux, je peux me lancer et je vais
répondre à deux pendant que
je suis dans le jeu, n'est-ce pas ? Nous allons donc
répondre à la deuxième étape. Vous y voilà. Et si j'arrête ça correctement, nous sauverons à nouveau les deux. Encore une fois, aucune erreur. Absolument incroyable. Et si je devais rejouer, non seulement nous
verrons le succès apparaître, commencerons également immédiatement
à la deuxième étape. Absolument génial. Donc, ce qui est très important
ici, c'est que vous puissiez voir qu'il
y a parfois des liens. Il existe de nombreuses
connexions qui sont parfois difficiles à démêler. Vous pouvez voir la façon dont nous l'avons
fait, n'est-ce pas ? Nous avions un, nous avons maintenant une table de points de contrôle
ici sous forme de script de module. Et nous enregistrons les points de contrôle via le
script de numérotation des points de contrôle situé ici. Et puis il y a aussi le script
Load Checkpoint qui fait plein de choses, n'est-ce pas ? Je vais donc
essayer de résumer cela en 2 minutes pour que
ce soit compréhensible. Nous disposons donc d'un service
de stockage de données. Il s'agit d'une archive, et l'archive contient de très
nombreux classeurs différents. Maintenant, l'hébergement final, vous pouvez le considérer
comme un magasin de données. Le magasin de données est
un classeur. Cela peut contenir
de nombreux fichiers différents. Maintenant, une fois que nous avons notre banque de données, nous pouvons accéder à certains
fichiers via une clé, n'est-ce pas ? Nous pouvons donc obtenir cette clé. Dans notre cas, nous
créons une clé en utilisant le nom d'utilisateur, puis nous
tirons simplement un point de contrôle ici,
juste pour que vous l'ayez. Ensuite, nous obtenons les données de ce classeur en particulier en disant que les points de contrôle stockent, c'est le magasin de
données, les deux points deviennent asynchrones, puis en
transmettant la clé lorsque cela renvoie les
données spécifiques stockées avec cette clé. Maintenant, dans notre cas,
ce sera
le numéro associé à notre point de contrôle, n'est-ce pas ? Ce sera donc
soit le premier point de contrôle, le
deuxième point de contrôle,
etc. C'est vrai, non ? Et si nous avons réussi à
récupérer ces données, nous créons
les données du point de contrôle, puis nous créons le point de contrôle pour
le joueur lui-même. Maintenant, ces deux fonctions
sont très similaires
à celles du point
de contrôle réel. Si nous examinons le
script du point de contrôle, nous
arrivons au
module de point de contrôle ici. Ce sera
celui-ci juste ici, là où il
suffira de créer
le même modèle,
n' est-ce pas ? Ensuite, appelez les données d'un
point de contrôle et recrutez la même
valeur d'objet. Et l'idée de la valeur de l'objet est qu'elle enregistre le port réel, lit la partie du point de contrôle, le port
physique intégré au jeu. Donc, si nous y allons, cela
enregistre cette partie en tant que point de contrôle auquel
le joueur doit répondre. Et nous voulons maintenant l'obtenir
avec le numéro. Maintenant, le problème est le numéro et le port réel du chéquier ou un port complètement distinct l'un
de l'autre. Ils n'ont rien
à voir l'un avec l'autre, ce qui est un problème. La façon de résoudre
ce problème est la suivante : pendant que nous numérotons les
points de contrôle, n'est-ce pas ? Pendant que nous numérotons
les points de contrôle leur
ajoutons la valeur int, nous les ajoutons également à un
tableau contenant le nombre. Et si nous avons le
décompte, nous pouvons obtenir la partie point de contrôle. Ce faisant,
nous pouvons alors avoir besoin des
points de contrôle ici, le script du
module Checkpoint Table. Nous pouvons utiliser des points de contrôle, stocker des points de contrôle pour en obtenir la partie
réelle
ici, c' est-à-dire l'objet du jeu,
l'objet réel. Et puis nous
disons simplement, une fois le personnage est ajouté, il suffit de changer le
cadre du personnage, qui est essentiellement la
position du personnage par rapport
au point de contrôle lui-même
et plus haut. Donc, en gros, nous
allons apparaître un peu
plus haut que le point de contrôle, tomber dessus. Nous y sommes. Lorsque nous quittons le jeu, lorsque le joueur
est retiré, nous prenons la même clé, en gros, nous déverrouillons
le classeur. Encore une fois, c'est comme déverrouiller
le classeur, récupérer le début
du fichier et dire « hé,
maintenant, réglez ce fichier avec les données
que j'ai spécifiées ici ». Et l'idée est que nous
allons obtenir le nouvel objet, l'objet qui est
actuellement notre point de contrôle. Nous allons obtenir la valeur à partir du nombre et
hop, c'est parti. Nous allons obtenir le numéro
à partir de là, puis le sauvegarder à nouveau sous notre clé, encore une note importante. Nous
parlons maintenant de la sauvegarde des données. Et il est extrêmement
important que vous fassiez très attention à la manière dont vous enregistrez les données et que vous ajoutiez
probablement des coffres-forts, des points de contrôle, des erreurs
et tout cela. Parce que lorsque les données disparaissent à
cause de votre négligence, les gens peuvent ne pas être contents, surtout s'il est certain que
des robots sont impliqués. heure actuelle,
aucun robot n'est impliqué, donc ça ne devrait pas être trop mal. Mais je dis juste qu'il faut être prudent et très
prudent avec ça. Je recommande également vivement vous renseigner sur le service de stockage de
données, sur les références d'API
sur Roblox lui-même. C'est une lecture
hautement recommandée pour cela. Mais à part
ça, ce sera tout pour cette conférence. J'espère que vous avez trouvé cela utile et que vous
apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
45. (Roblox) plusieurs endroits dans un seul jeu: Très bien, je vous souhaite de nouveau
la bienvenue dans la
section intermédiaire du cours de robotique. Dans cette conférence, nous allons voir
comment vous pouvez ajouter plusieurs lieux à
une seule expérience. Donc, pour cela, l'
idée générale est que lorsque nous
revenons à notre tableau de
bord Creator,
ici , à nos créations, nous
avons notre exemple ici. Juste à titre d'exemple, nous allons
simplement utiliser ceci. Nous pouvons aborder cette expérience
particulière,
cette création, et nous pouvons ajouter différents lieux. Maintenant, si nous allons dans des lieux, nous pouvons littéralement en ajouter
un nouveau ici. Cela va me donner
quelques endroits que j'
ai déjà publiés. Vous pouvez en voir certains que vous
pouvez ajouter car ce sont des lieux
stockés et
d'autres peuvent être ajoutés. Alors, comment s'
y prendre en gros ? Eh bien, ce que vous pouvez faire se trouve
dans Roblox Studio. Donc, si nous
y retournons, ce que nous pouvons faire, par exemple
, trouver un terrain plat,
pour qu' il ait l'air un
peu différent, qu'ils n'aient pas quelque chose d'un pour
qu'ils n'aient pas quelque chose d'un
peu différent avec
celui-ci, comme sur la pelouse, dans ce cas, vous allez dire, eh bien, d'accord, qu'allons-nous en faire ? Nous allons donc simplement
enregistrer ça. Et ce que vous pouvez faire, c'est que nous
pouvons soit créer un nouveau jeu, sauvegarder en tant que nouveau
jeu si j'appuie sur Control S, soit je peux mettre à jour un jeu
existant et je peux entrer ici et je peux dire les
ajouter
en tant que nouvel endroit. Donc je vais le dire,
je vais créer. Maintenant, le nom va être
littéralement « jeu sans titre », mais c'est très bien,
car nous pouvons tous le changer en un petit moment. Il n'y a pas de quoi s'inquiéter. Maintenant, nous pouvons revenir à notre tableau de bord si je le recharge
réellement. Allez voir les charpentiers,
s'il vous plaît, numéro dix. Bien sûr, ce
n'est pas un bon nom. Ce que nous allons faire, c'est
cliquer sur le bouton Modifier dans Studio et
Roblox Studio devrait à nouveau s'ouvrir. Maintenant, c'est une théorie, cela devrait être un cas différent de celui-ci. Ils ne devraient pas
réellement entrer en collision. Vous pouvez voir maintenant que nous sommes en train
de charger le lieu et qu'il s'agit du lieu réel, l'expérience RB ou de
la création du RB, n'est-ce pas ? Maintenant, vous pouvez voir que cela s'
appelle Count Minerals Play
Number Ten. Ce n'est pas tout à fait le
nom que j'avais en tête. Nous pouvons donc accéder aux paramètres
du jeu et vous pouvez voir maintenant que nous pouvons également
modifier cela par
endroits. Vous pouvez donc voir qu'il y a
un joueur différent, des joueurs également. Et ici, nous pouvons
configurer le jeu. Disons que nous n'avons que 16 ans, et
ce sera l'herbe plus verte. Vous y voilà. Et vous pouvez voir
qu'il y a un tas de choses
différentes que
vous pouvez également faire. Nous allons juste enregistrer ça.
Et si nous sauvegardons cela, rien ne changera,
d'accord, c'est bon. Mais nous pouvons ensuite publier ceci et il sera
réellement publié, n'est-ce pas ? Vous pouvez donc voir que nous publions
les modifications, mais maintenant, si nous revenons aux corrélations ci-dessous
, notre exemple sera
le si nous le rechargeons, vous pouvez voir maintenant que le
nom réel est une herbe est plus verte et nous modifions également certaines de ces choses
ici, maintenant. Il ne se passe rien
ici pour le moment, bien sûr, car rien n'est ajouté ici, mais c'est un endroit différent au
sein du même jeu. Donc, comme toujours, une chose à
garder à l'esprit est que vous pouvez avoir plusieurs emplacements
à l'intérieur d'une même porte. prochaine conférence, nous
verrons comment vous pouvez
distinguer les deux endroits
différents. Sinon, j'espère que
vous avez trouvé cela utile et que vous apprendrez quelque chose nouveau. Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
46. (Roblox) Teleport entre différents endroits: Très bien, bon retour dans
la section
intermédiaire pour le cours intensif. Et dans cette conférence, nous
allons voir comment nous téléporter
d'un endroit à l'
autre en
utilisant le service de
téléportation. Donc, pour cela,
je vais simplement copier
mon cercle ici,
juste pour que nous ayons quelque chose à faire. Et lorsque vous atteindrez ce cercle, nous nous téléporterons
vers l'endroit que nous avons essentiellement ajouté
à notre expérience, à notre RB ici la dernière fois Cela s'est produit lors de
la dernière conférence, ce sera le cercle de
téléportation et nous
allons cliquer sur le petit
plus ici pour ajouter un script. Et le script
sera le script de téléportation. Et ça va
nous téléporter. Pour la téléportation, nous avons
besoin du service de téléportation. Cela sera égal
à Game Colon Get Service. C'est donc bien sûr la
façon d'obtenir un service, et c'est le service de
téléportation. Nous voulons aussi avoir des joueurs, ce ne
seront que des joueurs. Et puis nous voulons un téléporteur. Les téléporteurs sont donc le
véritable objet du jeu, n'est-ce pas ? Dans ce cas, ils tournent en rond. Donc, ce sera
l'ordre du caissier et ce sera égal
à Script Dot Parent. Ensuite, nous voulons le numéro d'identification du lieu. C'est donc la chose la
plus importante, n'est-ce pas ? L'identifiant de lieu est un
identifiant unique pour votre lieu. Et tu devrais
pouvoir l'obtenir
en allant ici, n'est-ce pas ? C'est donc l'endroit où
nous voulons aller. Et vous pouvez voir, eh bien,
comment y parvenir ? Eh bien, entrez simplement ici. Vous pouvez également changer
le nom ici, la description ici concerne les genres, tout ça, et c'est très bien. Cependant, nous avions besoin de l'
identifiant du lieu. Comment l'obtenir ? Eh bien, vous pouvez regarder l'
URL ici et vous pouvez voir que c'est l'expérience
et l'endroit. Ce serait donc notre identifiant de lieu. Nous allons juste le copier
et ensuite nous
retrouverons face à
des obstacles ici. Et vous verrez que nous
pouvons simplement en faire une chaîne, nous ne voulons pas en
faire une chaîne. Nous voulons en faire un
chiffre vraiment très important. Ensuite, nous allons
simplement créer une fonction locale
à la fois partiellement tactile. Nous allons donc faire un événement tactile
ici, dans ce cas, autre partie et cela
va faire l'affaire, cela va d'
abord nous amener au personnage. C'est juste un autre point
parent, c'est notre caractère. Ensuite, nous allons simplement
dire que le joueur est égal aux deux joueur, en
passant le
personnage ici. Et puis s'il y a un joueur, ce que nous allons faire,
c'est dire téléportation par deux points par service de téléportation. Lorsque vous vous téléportez vers l'identifiant du
lieu, vous pouvez voir qu'il s'agit de l'
identifiant du lieu et que nous allons
téléporter, bien sûr, le joueur devenu joueur, mais le joueur singulier qui
vient de toucher cette partie
en particulier. Et nous allons
dire téléportez-vous ou touchez la Pologne et connectez-vous. Ensuite, nous
allons simplement ajouter la partie touchée sans les parenthèses. Et ce sera
le script de téléportation. Alors, sauvegardons ça. Et c'est à peu près tout ce que nous devons faire dans ce cas. Mais si nous jouons maintenant, je devrais apparaître
lors deuxième
étape parce que c'
est la dernière fois, eh bien, la dernière chose qui a été sauvegardée, et vous pouvez voir que j'en
suis à la deuxième étape, donc c'
est ce qui est cool avec le taux d'épargne. Cela permet d'économiser toutes
les différentes données, même
après plusieurs jours. C'est donc ce qui est
génial maintenant.
Bien sûr, je
dois terminer le niveau ici, mais je pense que tout ira
bien ici. Et voilà. Et une heure à la cinquième étape. Et maintenant, quand je touche ça, je devrais me téléporter. Alors voyons voir. Nous avons donc une
erreur ici. C'est très bien car, et vous pouvez voir la téléportation échouer parce que vous ne pouvez pas vous
téléporter dans Roblox Studio. C'est la première chose très
intéressante à laquelle réfléchir, mais cela ne pose aucun problème,
car ce que nous pouvons faire,
c'est simplement arrêter
cela et ensuite le publier
sur car ce que nous pouvons faire,
c'est simplement arrêter Roblox Rates, nous allons le publier
pour le moment. Toutes nos modifications sont
publiées sur Roblox. Et si vous revenez maintenant à
nos créations ici, nous pouvons revenir à
l'expérience, au RB, juste ici. Et nous allons simplement
dire « vue sur les barrages routiers ». Et le mode
va fonctionner dès maintenant, Roblox va l'ouvrir. Ce n'est plus Roblox
Studio, mais des obstacles. Vous devrez également
le tester dans Roblox. C'est donc une chose très
importante à noter, n'est-ce pas ? Si c'est le cas, plus votre jeu est
complexe, gros, plus
vous devrez
également en faire au lieu de vous heurter à des obstacles. Et en dehors de Roblox Studio, je veux dire, bien sûr, c'est
logique, non ? Vous voulez, vous voulez également
tester en permanence votre jeu pour détecter tout
bogue ou autre chose de ce genre. Donc, ce que vous pouvez voir, c'est que j'en suis
toujours à la cinquième étape parce que, eh bien, j'en suis toujours à la
cinquième étape, c'est vraiment cool. Et maintenant, si j'entre ici, boop, d'accord, ça va
prendre un moment. Et vous pouvez voir que
l'herbe est plus verte. Boum. Cela a pris du temps. Le chargement prend
parfois un peu
de temps. Mais nous y voilà. Nous sommes maintenant dans une situation différente. Bien sûr, il n'y a
rien ici, mais c'est vraiment
génial car c' est ainsi que
vous pouvez connecter plusieurs endroits
différents. Vous pouvez créer
plusieurs niveaux ou plusieurs instances
différentes. Il y a tellement de façons de l'utiliser, mais vous pouvez créer plusieurs Abby
qui s' interconnectent les unes
aux autres. Vous pouvez dire qu'il y a des
tonnes de choses que vous pouvez essentiellement faire avec cela en ajoutant plusieurs endroits
différents. C'est vraiment cool. Et c'est essentiellement
l'idée d'une téléportation vers différents endroits
de votre expérience. Très cool. En effet, ce sera tout pour cette
conférence ici même. J'espère que vous avez trouvé cela utile et
que vous apprendrez quelque chose de nouveau Je vous verrai tous
lors de la prochaine conférence. Donc, oui.
47. (Roblox) Où aller d'ici: Très bien, bienvenue dans
la section intermédiaire ici, plus loin dans le cours Roblox. Et dans cette conférence,
nous allons simplement parler de la prochaine étape, car il s'agit essentiellement la dernière
conférence de ce cours. Et l'idée est :
où voulez-vous aller ensuite ? Donc, une chose en particulier que je ne saurais trop
recommander, et j'ai déjà
parlé des références à l'API Roblox Engine
ici, qui contiennent toutes
les classes. À
titre de référence, vous avez
tous les types de données. En gros, tout ce
que vous pourriez souhaiter se trouve ici. Il existe également des guides
qui peuvent être très utiles. Cela vous aidera essentiellement à établir une
base encore meilleure que celle que vous avez
déjà après avoir suivi toutes les
conférences précédentes. De plus, bien sûr, ce qui
est important, c'est que vous apprendrez
le plus par la pratique. Donc. Cela signifie essentiellement qu'il faut continuer à essayer
différentes choses. Ou je veux ajouter ceci, je
veux faire en sorte que le joueur soit
projeté dans le ciel. Et puis XYZ se produira en faisant des pas en avant
continus, vous pourrez en apprendre
encore plus à l'avenir. Je souhaite également suivre un cours
intermédiaire à avancé. Cependant, cela n'est pas encore
disponible dans l'immédiat. Vous serez averti, bien sûr, et la meilleure chose que vous puissiez
avoir pour apprendre
quelque chose comme ça est
de vous aider à persévérer dans cette voie apprendre
quelque chose comme ça est
de vous aider . Parce qu'en fin de compte, l' scripts et
la programmation par
Roblox en soi peuvent être assez
difficiles et peuvent être assez
difficiles et
compliquées, mais vous êtes
nul. Je suis donc très fière de
toi et j'ai
hâte de voir quel jeu Roadblocks tu vas créer.
À part ça, merci beaucoup de m'avoir regardé. Encore une fois, si cela vous
était utile, j'apprécierais
beaucoup votre avis. Sinon, j'
espère vous voir
au prochain cours. Alors oui.