Modéliser par Kaupenjoe : Modéliser les tissus pour Minecraft 1-18-1 | Kaupenjoe (Nico) | Skillshare

Vitesse de lecture


1.0x


  • 0.5x
  • 0.75x
  • 1 x (normale)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Modéliser par Kaupenjoe : Modéliser les tissus pour Minecraft 1-18-1

teacher avatar Kaupenjoe (Nico), CS Student, Nerd and Educator

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Leçons de ce cours

    • 1.

      Introduction à ma classe de modélisation minecraft

      1:00

    • 2.

      Installation et téléchargement (Java)

      5:52

    • 3.

      (Java) Datatypes

      8:11

    • 4.

      (Java) Syntaxe Java

      5:42

    • 5.

      (Java) Sortie et entrée

      7:28

    • 6.

      (Java) Les erreurs et comment les gérer

      6:41

    • 7.

      (Java) Les intrigants, les méthodes arithmétiques et les méthodes de mathématiques

      6:23

    • 8.

      (Java) Les exploitants de missions

      4:40

    • 9.

      (Java) Les booléens et les opérateurs de comparaison

      7:02

    • 10.

      (Java) Les booléens et les opérateurs logiques

      3:30

    • 11.

      (Java) Déclarations si et autres

      6:52

    • 12.

      Déclaration de changement (Java)

      4:08

    • 13.

      ATTRIBUTION 1 : Jeu Trivia

      2:59

    • 14.

      SOLUTION 1 : Jeu Trivia

      2:32

    • 15.

      (Java) les cordes et les méthodes de chaîne

      9:41

    • 16.

      (Java) Casting

      3:49

    • 17.

      (Java) Opérateur ternaire

      4:13

    • 18.

      (Java) Les tableaux expliqués

      9:09

    • 19.

      (Java) Pour et pendant les boucles

      8:55

    • 20.

      (Java) Méthodes Java

      10:14

    • 21.

      ATTRIBUTION 2 : Jeu trivia avec des méthodes

      2:30

    • 22.

      SOLUTION 2 : Jeu Trivia avec des méthodes

      5:13

    • 23.

      (Java) Collections Java

      16:43

    • 24.

      (Java) La programmation axée sur les objets Java expliquée

      7:37

    • 25.

      (Java) Cours et objets Java

      9:20

    • 26.

      (Java) Modificateurs d'accès

      7:42

    • 27.

      (Java) Héritage et polymorphisme

      10:50

    • 28.

      (Java) Interfaces et cours abstraits

      5:52

    • 29.

      ATTRIBUTION 3 : Mettre à jour le jeu Trivia

      1:15

    • 30.

      SOLUTION 3 : Mettre à jour le jeu Trivia

      3:08

    • 31.

      ATTRIBUTION 4 : Système de gestion des banques

      1:20

    • 32.

      SOLUTION 4 : Système de gestion des banques

      2:17

    • 33.

      (Java) Cours anonymes

      2:44

    • 34.

      (Java) Enums et les Enums avancés

      3:00

    • 35.

      (Java) Exceptions et essaie de capturer

      5:14

    • 36.

      (Java) Les expressions de Java Lambda

      3:24

    • 37.

      (Java) Les génériques Java

      3:37

    • 38.

      (Les principes de base) Installation, installation et installation de GitHub

      23:27

    • 39.

      (Les bases de la loi) créer un article personnalisé

      14:35

    • 40.

      (Les bases de la loi) créer un bloc personnalisé

      12:55

    • 41.

      (Les bases de la présente loi) Ajouter un groupe d'articles personnalisés

      3:20

    • 42.

      ÉVALUATION 5 : Blocs et éléments personnalisés

      1:04

    • 43.

      SOLUTION 5 : Blocs et éléments personnalisés

      1:10

    • 44.

      (Les basiques) Ajouter des recettes personnalisées

      9:39

    • 45.

      (Les basiques) les gouttes à blocs avec des tables de butin

      9:11

    • 46.

      ÉVALUATION 6 : Recettes personnalisées et tables de butin

      1:23

    • 47.

      SOLUTION 6 : Recettes et tables de butin

      1:37

    • 48.

      Réaliser un article avancé

      16:46

    • 49.

      Réaliser un bloc avancé

      7:46

    • 50.

      Réaliser un article alimentaire sur mesure

      4:02

    • 51.

      Réaliser un article de carburant sur mesure

      3:50

    • 52.

      (Les bases de la loi) Ajouter des conseils personnalisés

      3:17

    • 53.

      (Les basiques) Tout sur les étiquettes

      9:52

    • 54.

      (Les bases) ajouter des escaliers et des dalles

      9:13

    • 55.

      (Les basiques) Ajouter des boutons et des plaques de pression

      7:16

    • 56.

      (Les bases de la loi) Ajouter des clôtures, des portes et des murs

      6:06

    • 57.

      (Les basiques) Ajouter des portes et des portes de piège

      6:47

    • 58.

      Créer un nouvel ensemble d'outils

      11:25

    • 59.

      (Outils) Créer un multi-outil personnalisé (Paxel)

      4:54

    • 60.

      (Outils) fabriquer des armes qui appliquent les effets

      2:30

    • 61.

      Créer un nouvel ensemble d'armures

      8:53

    • 62.

      (L'armure) faire un effet complet sur les blindages

      8:23

    • 63.

      (L'armure) Créer une blindée de cheval personnalisée

      3:04

    • 64.

      (Armor) Ajouter une Enchantment personnalisée

      7:20

    • 65.

      (intermédiaire) Propriétés de l'état de bloc

      13:24

    • 66.

      (Intermédiaire) Comment les données NBT does ?

      10:11

    • 67.

      (intermédiaire) Les prédicats du modèle d'article

      6:18

    • 68.

      ATTRIBUTION 7 : Blockstate et NBT

      1:05

    • 69.

      (intermédiaire) Ajouter une récolte personnalisée

      11:17

    • 70.

      (Intermédiaire) Comment ajouter des éléments à un composteur

      1:51

    • 71.

      (intermédiaire) les mélanges expliqués

      9:26

    • 72.

      (intermédiaire) Créer des commandes personnalisées

      9:12

    • 73.

      (intermédiaire) Ajouter des fleurs personnalisées

      2:55

    • 74.

      (intermédiaire) les fleurs en pot

      3:03

    • 75.

      (intermédiaire) Ajouter des sons personnalisés

      5:51

    • 76.

      (intermédiaire) groupe de son de bloc personnalisé

      5:55

    • 77.

      (intermédiaire) Ajouter des disques musicaux personnalisés

      4:09

    • 78.

      (intermédiaire) Ajouter des modèles de blocs personnalisés dans Minecraft avec Blockbench

      16:18

    • 79.

      (intermédiaire) Ajouter des modèles d'articles personnalisés avec Blockbench

      3:34

    • 80.

      (intermédiaire) Ajouter un arc personnalisé

      3:19

    • 81.

      (intermédiaire) des fluides personnalisés

      10:59

    • 82.

      (Intermédiaire) Modifier les tableaux du butin à la vanille

      5:36

    • 83.

      (intermédiaire) les progrès

      4:33

    • 84.

      (Intermédiaire) Comment faire frayer les particules

      2:59

    • 85.

      (intermédiaire) peintures sur mesure

      4:25

    • 86.

      (Avancé) Entité de bloc personnalisé

      25:23

    • 87.

      (Avancé) Types de recettes personnalisés

      23:45

    • 88.

      (Avancé) Bois sur mesure

      8:18

    • 89.

      (Avancé) Les signes personnalisés

      6:39

    • 90.

      (Avancé) Mettre à jour le minecraft et le tissu

      4:09

    • 91.

      (Gène du monde) les arbres personnalisés

      8:12

    • 92.

      Génération d'arbres (Gène du monde)

      12:51

    • 93.

      Génération de fleurs (Gène du monde)

      5:17

    • 94.

      (Gène du monde) Génération du minerai

      7:18

    • 95.

      Comment faire un fichier JAR à partir de votre mod

      1:56

    • 96.

      (Sujets supplémentaires) Tissu de mise à jour (1.18.1)

      3:05

    • 97.

      (Sujets supplémentaires) XP Gouttes pour les blocs

      3:24

    • 98.

      (Sujets supplémentaires) Ajouter des blocs transparents

      3:49

    • 99.

      (Sujets supplémentaires) Ajouter des éléments animés

      3:44

    • 100.

      (sujets supplémentaires) écran de menu personnalisé

      7:24

    • 101.

      (Sujets supplémentaires) Ajouter des configues simples et simples

      7:23

    • 102.

      (Sujets supplémentaires) Ajouter des effets personnalisés

      4:34

    • 103.

      (Sujets supplémentaires) Ajouter des potions personnalisées

      6:38

    • 104.

      (Sujets supplémentaires) Ajouter des entités personnalisées avec Geckolib

      19:54

    • 105.

      (Sujets supplémentaires) Ajouter des animations aux entités avec Geckolib et BlockBench

      7:11

    • 106.

      (Sujets supplémentaires) Ajouter des variantes d'entité

      9:00

    • 107.

      (Sujets supplémentaires) Ajouter des entités amables

      7:41

    • 108.

      (Sujets supplémentaires) Ajouter des entités idéales

      12:20

    • 109.

      (Sujets supplémentaires) Ajouter la génération mondiale d'entités

      3:27

    • 110.

      (Sujets supplémentaires) Ajouter des métiers personnalisés aux villageois

      5:17

    • 111.

      (1.18.2) Mise à jour du tissu à 1.18.2

      13:55

    • 112.

      (1.18.2) Structures personnalisées (Tutorial d'exemple de tutoriel)

      32:10

    • 113.

      (1.18.2) Structures personnalisées (pièce unique)

      8:15

    • 114.

      (1.18.2) Structures personnalisées (structures de sciages)

      14:22

    • 115.

      (1.18.2) Modèles d'armure 3D personnalisés

      12:02

    • 116.

      (1.18.2) Les villageois personnalisés

      6:33

    • 117.

      (1.18.2) Les entités pour bébés

      4:22

    • 118.

      (1.18.2) Géodes personnalisés

      5:54

    • 119.

      (1.18.2) Bloc qui interagit avec Redstone

      4:28

    • 120.

      (1.18.2) Rendu d'entité à bloc personnalisé

      9:44

    • 121.

      (1.18.2) Les coffres au pillage dans les structures personnalisées

      3:09

    • 122.

      (1.18.2) MISE À JOUR vers 1.19

      22:15

  • --
  • Niveau débutant
  • Niveau intermédiaire
  • Niveau avancé
  • Tous niveaux

Généré par la communauté

Le niveau est déterminé par l'opinion majoritaire des apprenants qui ont évalué ce cours. La recommandation de l'enseignant est affichée jusqu'à ce qu'au moins 5 réponses d'apprenants soient collectées.

358

apprenants

1

projets

À propos de ce cours

Minecraft ! C'est le jeu le plus populaire de tous les temps et Minecraft Modding est de retour dans la bouche de tout le monde ! Certains mods Minecraft sont devenus si populaires que chacun les connaît. La communauté modéliser Minecraft continue de grandir tous les jours et c'est une excellente et créative vaillante sortie !

Ce cours vous apprendra à fabriquer votre propre mod Minecraft ! Non seulement apprenez le langage de programmation Java mais aussi comment utiliser efficacement le tissu de l'API Modélisation Minecraft.

Pour les débutants, j'ai ajouté une introduction Java pour vous, donc même sans aucune expérience dans la programmation, vous pouvez commencer à fabriquer des modes Minecraft en passant d'abord par l'introduction Java !

Dans la partie des concepts simples du cours, vous apprendrez à ajouter des éléments, des blocs, des recettes personnalisées, un outil pour Minecraft ! Les concepts intermédiaires vous permettront de récupérer quelques compétences étonnantes nécessaires pour la modélisation minecraft avec du tissu ! Nous allons parler de BlockStates et de données NBT, ajouter des cultures personnalisées et voir comment vous pouvez ajouter des modèles de blocs personnalisés à Minecraft !

Mais ce n'est pas tout ! Vers la fin du cours, nous abordons des sujets avancés tels que les entités de blocs, les types de recettes personnalisées et même la production de minerais, entre autres.

Avec un peu de créativité et l'application des leçons que vous obtenez de ce cours, vous pourriez simplement faire frayer le prochain Mod Minecraft !

Ce cours est accessible pour compléter les débutants. Même si vous n'avez jamais programmé votre vie ! La seule condition est que vous possédiez Minecraft et que vous êtes très familier avec le jeu et quelques mods Minecraft populaires ou même les mods Minecraft modpacks.

Exercer les fichiers et l'ensemble du code source seront disponibles pour que vous puissiez suivre tout ce que je fais dans les vidéos.

Si vous avez des questions ou des suggestions, n'hésitez pas à me contacter ici. Je suis heureux de vous aider à apprendre à coder en Java et à créer votre propre mod Minecraft avec du tissu.

EXCLUSION : PAS UN PRODUIT MINECRAFT OFFICIEL. N'APPROUVEZ PAS LE MOJANG, OU QUI EST ASSOCIÉ À CELUI-CI.

Rencontrez votre enseignant·e

Teacher Profile Image

Kaupenjoe (Nico)

CS Student, Nerd and Educator

Enseignant·e

I am Nico - also known as Kaupenjoe - I have a Master's Degree in Computer Science and teach Game Development through many different classes. Mid-2020, when I became a bit disillusioned with my job, I set my sights to something different. Multiple people have previously told me I was good at teaching things.

With some of my prior YouTube Video making knowledge I was able to make my first courses. The Minecraft Courses in particular made a huge impact on students and myself and allowed me to teach full-time with courses and other supplementary methods.

I hope you will also join me and allow me to help you learn Programming, Modding or Game Development. As a hobby, side-hustle or as a promising career, it is an amazing and fulfilling field and I'm so happy to have y... Voir le profil complet

Level: Beginner

Notes attribuées au cours

Les attentes sont-elles satisfaites ?
    Dépassées !
  • 0%
  • Oui
  • 0%
  • En partie
  • 0%
  • Pas vraiment
  • 0%

Pourquoi s'inscrire à Skillshare ?

Suivez des cours Skillshare Original primés

Chaque cours comprend de courtes leçons et des travaux pratiques

Votre abonnement soutient les enseignants Skillshare

Apprenez, où que vous soyez

Suivez des cours où que vous soyez avec l'application Skillshare. Suivez-les en streaming ou téléchargez-les pour les regarder dans l'avion, dans le métro ou tout autre endroit où vous aimez apprendre.

Transcription

1. Introduction à mon cours de modération Minecraft: Bonjour, je suis la société Nico ou étudiante à la maîtrise en informatique et un joueur passionné de Minecraft. Vous me connaissez peut-être grâce aux tutoriels de ma chaîne YouTube de Cotton Joe, où je réalise des tutoriels de modélisation Minecraft. Mais maintenant, nous allons aller encore plus loin. Il s'agit de la modélisation micro-ondes 118, une classe avec tissu. Ici, vous apprendrez tout ce que vous devez savoir pour créer un super et incroyable MOD Minecraft, même les débutants absolus peuvent commencer par passer par l'introduction du fournisseur Java, qui va vraiment à vous aide à apprendre certains des principes fondamentaux. Ensuite, nous apprendrons certains concepts simples tels que comment ajouter un article, un bloc, des recettes et même des outils à mon métier. Après cela, nous continuerons à examiner les modèles de blocs personnalisés, les cultures personnalisées et tant d'autres fonctionnalités intéressantes et intéressantes. En fin de compte, nous aborderons même certains sujets avancés tels que les entités de blocs et la génération mondiale. Alors, qu'attendez-vous ? Inscrivez-vous à ce cours maintenant, et qui sait, peut-être que votre modèle sera le prochain grand succès. Je vous verrai dans la première leçon. 2. (Java) Installation et téléchargement: Bienvenue dans le cours fabric 118 et voici l'introduction de Java. Nous commençons donc un petit peu d'introduction à Java. Soit si vous n'avez pas du tout utilisé Java, cela vous sera très utile. Sinon, si vous avez déjà travaillé avec un autre langage de programmation ou avec Java lui-même, c'est une idée très intelligente d'avoir cela comme un bon rafraîchissement ici au début. Je recommande donc vivement passer en revue l'intégralité de l'introduction de Java. Il y aura également quelques tâches en cours de route, que vous pourrez faire pour consolider davantage les concepts dont nous allons discuter dans cette introduction ici. Et il va y avoir quelques conditions préalables dont nous aurons besoin. Le premier sera un JDK. Jdk est un kit de développement Java, et il existe des saveurs différentes, pour ainsi dire. Mais ce qu'on va utiliser, c'est celui de l'adopter ici, et on va devoir utiliser 16. Donc JDK 16 dans ce cas, est ce que l'on appelle le tamarin 16. Et j'ai lié cela dans les ressources que vous pouvez télécharger. Cela garantit que vous sélectionnez votre système d'exploitation et votre architecture. Donc pour moi, ce serait Windows et l'architecture 64 bits. Je recommande fortement de télécharger le MSI ici car il s'agit essentiellement d'un installateur, qui installe ensuite le JDK sur votre machine comme tout autre programme, vraiment. Eh bien, installez cela normalement comme vous le feriez n'importe quel autre programme, et ensuite nous pouvons continuer. Une fois que vous aurez installé le JDK, nous aurons également besoin d'un IDE. Et IDE est un environnement de développement intégré qui, dans notre cas, nous allons utiliser IntelliJ Idea. C'est que j'ai trouvé un excellent outil à utiliser pour cela, nous pouvons utiliser la version communautaire qui est gratuite et basée sur l'open source, qui inclut à peu près tout ce que nous aurait jamais voulu ou besoin. Assurez-vous donc de choisir la version communautaire ici. Une fois de plus, téléchargez simplement l'EXE si vous êtes sous Windows, et comme vous l'avez peut-être vu ici, vous pouvez également vérifier Trick ici si vous êtes sur Mac ou Linux, basculez et installez-les également. Et il suffit également d'installer ceci comme vous le feriez avec n'importe quel autre programme. Et puis une fois que cela est installé , nous pourrons continuer. Lorsque vous ouvrez Intelligence pour la première fois, une fenêtre semblable à celle-ci apparaît également pour vous. Maintenant, ça va paraître un peu différent, mais il y aura ces trois boutons, le bouton Le Nouveau projet avec le bouton Ouvrir et le bouton Obtenir de VCS. En cliquant sur le bouton Nouveau projet, une nouvelle fenêtre s'affiche. L'important, c'est que nous voulions sélectionner le nouveau projet ici. Ici, nous pouvons simplement le nommer comme nous voulons. Par exemple, l'introduction de Java, vous pouvez choisir un emplacement ici en utilisant le langage Java Build System Intelligence et le JDK étant 16 pour nos besoins ici pour l'introduction de Java, l'exemple de code doit être vérifié par eux. fois cela fait, nous pouvons cliquer sur le bouton Créer, puis une nouvelle fenêtre apparaîtra. Tout d'abord, ce que nous devons faire dans les nouvelles versions pour l'intelligence, c' dans les nouvelles versions pour l'intelligence, qu'ils ont changé certaines choses. Je ne sais pas pourquoi c'est le cas, parce qu' ils ont tendance à changer beaucoup de choses, ce qui est plutôt ennuyeux. Mais notre classe principale ici, pour que vous puissiez voir ce principal, si je double-clique dessus , il s'ouvrira. Vous avez peut-être déjà ouvert pour vous. C'est très bien aussi. Maintenant, pour aller de l'avant, ce sera en fait dans certains paquets. Donc, nous devons le faire manuellement pour notre cas ici, mais ça va aller. Mais il suffit de cliquer avec le bouton droit sur le dossier source pour que vous puissiez voir la source cliquer avec le bouton droit sur le nouveau package. Et puis on va, je vais appeler ce filet. Et puis sur ce net, je vais cliquer avec le bouton droit sur un nouveau paquet et je vais appeler cela de l'aide. Et Joe, maintenant tu vas juste appeler ça quel que soit ton nom. Fondamentalement, vous allez avoir filet et ensuite votre nom, par exemple, je vais faire glisser la classe principale dedans, disons Refactor, et tout ira bien. Ensuite, vous avez ce paquet ici aussi. C'est très important car il y a des conférences à venir. Nous allons l' avoir aussi. Maintenant, si cela s'affiche différemment pour vous, il se peut que ressemble à ceci. Je vais vous montrer juste une seconde que ça se compacte ici, le nombre de points nets Joe, le tout en une seule ligne. Si c'est le cas, vous pouvez passer à cet équipement ici. Pour l'apparence de l'arborescence, la hauteur, le MT, les paquets du milieu, vous pouvez le désélectionner ainsi que paquets aplatis également désélectionnés. Et ensuite, vous allez avoir exactement la même chose que nous avons là aussi. Nous allons maintenant continuer avec Pascal et Joe pour le reste des conférences. Donc, dans ce cas, ce que nous allons avoir, c'est que nous allons avoir quelque chose appelé principal ici et un autre principal ici. Et puis c'est courant où il dit écrire votre code ici. Maintenant, nous n'allons pas écrire de code dans cette première conférence ici. Nous allons commencer immédiatement lors de la prochaine conférence. Ce n'est vraiment que la configuration. Dans l'ensemble, c'est à peu près tout ce que nous devons faire. ensemble du code sera toujours disponible à chaque cours. Ainsi, dans chaque conférence, vous allez trouver un lien de ressources ou vous allez trouver ce lien essentiellement endroit où vous pouvez avoir soit le référentiel GitHub. Tout cela va donc être enregistré dans un référentiel GitHub. Et chaque conférence sera individuelle, essentiellement une branche individuelle. Ou vous avez également des juristes individuels où chacun des différents codes, chaque code, tout le code de cette conférence y est également lié. Donc, pas de soucis là-bas. Tout est accessible avant même de pouvoir y jeter un coup d'œil car, bien sûr , certaines personnes préfèrent avoir le code devant elles et ensuite le changer un peu. Certaines personnes veulent juste le coder, comme pendant que je le codais. Et c'est tout à fait très bien. Les deux approches sont absolument valables dans ce cas. Mais pour le moment, c'est essentiellement ça. Donc, tout le code sera disponible et j'espère que vous y êtes arrivé. Et puis voyez si une fois que la prochaine conférence commence, vous pouvez voir si tout a fonctionné là-bas ou non. Mais ce serait mieux pour cette conférence ici. Et je vous verrai lors de la prochaine conférence. Donc, oui. 3. Datatypes de Java: Bienvenue dans l'introduction de Java pour une modélisation Minecraft. Et dans cette conférence, nous allons parler de types de données. Nous commençons donc très, très lentement. L'idée est qu'en programmation, nous pouvons enregistrer des choses dans des variables. Maintenant, quelles sont ces choses, n'est-ce pas ? Il existe différents types de données. En gros, dans cette conférence, nous allons passer en revue les types de données qu'il s'agit, c'est-à-dire essentiellement les types de données. Il existe donc quelques types de données différents , comme même aller plus loin. Et le premier serait les types numériques, essentiellement comment enregistrer des nombres. Il y a un tas de types de données différents ici. Il y a donc un entier, un float et le double. Ce sont donc ceux qui sont principalement utilisés. Je vais en parler un peu. Vous pouvez donc tout d'abord voir que lorsque vous créez une sorte de nouvelle variable, c' est-à-dire que vous pouvez considérer cela comme un conteneur contenant une certaine valeur. Et le type de valeur est déterminé par, dans ce cas ici, le premier mot, vous pouvez voir qu'il est même marqué en orange. Ce ne sera pas toujours le cas. Cela ne sera le cas que pour les types de données primitifs. Mais qu'est-ce que nous allons voir un peu plus tard dans une conférence plus tard. Et vous pouvez voir que c'est ce qu'on appelle un numéro. Il s'agit du nom de la variable , puis la valeur est 42. Maintenant, un entier, comme je l'ai dit, est un type particulier de type de données, un type de données numérique, qui est un nombre entier. Cela ne peut donc enregistrer que des nombres entiers ou des nombres entiers. Et la fourchette réelle qu'il peut économiser, elle passe de 2 milliards à plus 2 milliards comme vous pouvez le constater. Il s'agit donc essentiellement des nombres que vous pouvez enregistrer et qui peuvent être stockés dans un entier. C'est ça l'idée. Et puis il y a float, ou quand vous avez besoin d'une virgule. Maintenant, ce qui est très intéressant avec les flotteurs et doubles qui sont presque la même chose, pas tout à fait, mais presque la même chose. Ce sont tous les deux des nombres flottants. Et l'idée est que cela n'est pas stocké comme ça, est en fait stocké comme une notation scientifique. Vous l'avez peut-être déjà vu quelque part. Et c'est quelque chose comme 1,412 fois dix contre quatre alors 14 120. Et essentiellement dans cette notation ici, les nombres à virgule flottante sont stockés. Et ce qui est important avec un flotteur lorsque vous les utilisez, qu'ils ont une précision de sept virgules, ce qui signifie que vous pouvez avoir sept nombres. Peu importe qu'ils soient ou non à gauche ou à droite de la virgule, mais sept chiffres et ensuite ils seront précis, puis ils seront arrondis. C'est aussi pourquoi vous ne voulez généralement pas sauvegarder des choses très, très, très précises dans des flotteurs. Par exemple, si vous avez dix milliers ou 100 milliers de Bitcoin, quelque chose comme ça. Cela ne devrait certainement pas être enregistré dans un flotteur car cela pourrait être très facile d'obtenir une erreur d'arrondi. Il s'agit donc d'erreurs d' arrondi à virgule flottante. Ceux-ci sont très courants. Maintenant, un double est un peu meilleur en ce sens qu'il a une précision de 15 virgules. Cependant, ils pourraient l'être, cela pourrait encore entraîner des problèmes d'arrondi. C'est donc quelque chose dont il faut être conscient. Habituellement, dans la plupart des cas, par exemple, dans notre cas, cela n'a vraiment pas d'importance. Donc, si vous avez un flotteur, généralement qui peut représenter, par exemple, vous avez certaines positions de blocs dans le monde écrit ceci entre ces positions parce que bien sûr un bloc n' est pas comme un seul point dans l'espace comme un peu de dégradé. Et puis il y a un peu d' arrondi qui va tout à fait bien se passer. Et c'est probablement l'une des raisons pour lesquelles, si vous allez comme des millions de millions de blocs dans une direction à un moment donné, le monde est vraiment foiré parce que les erreurs à virgule flottante et autres choses comme que. C'est probablement aussi l' une des raisons. Maintenant, il y a d'autres types numériques qui ne sont pas utilisés aussi souvent, du moins personnellement, je ne l'ai pas vu aussi souvent. Beaucoup de gens pourraient dire : Eh bien, je veux dire que ce n'est pas tout à fait juste. Bien sûr, il faut en être conscient, mais généralement je n'ai plus vu ceux utilisés aussi souvent. Un octet est de huit bits et il peut stocker des nombres de 128 à 127. Donc, j'appellerais cela un petit nombre parce qu'il ne peut stocker qu'une certaine quantité de valeurs. En gros ici, dans ce cas, un court est un petit nombre qui peut stocker entre 32000 et 32000 négatifs. Et puis, d'un autre côté, c'est un long qui, comme vous pouvez le constater, peut le stocker de neuf quadrillions négatifs à un quadrillion de neuf quadrillion positif , c' est-à-dire Bree, c'est assez stupéfiant. C'est un très grand nombre, généralement très rarement utilisé. Comme je l'ai dit, d'après ce que je peux dire, un entier est le nombre le plus courant pour un nombre entier. Et puis les flotteurs ou doubles sont utilisés pour, gros, des nombres décimaux ou quelque chose comme ça, n'est-ce pas ? Le type de crochets de données suivant sera celui des booléens. C'est en quelque sorte la logique. quoi vous pouvez penser, c'est que nous avons un booléen, un booléen et soit vrai, soit faux. Il peut donc être un ou 0. Cela peut être représenté en un seul bit car un peu, si vous le savez ou non, peut être soit 0, soit un, ce sont les deux seules valeurs possibles qu'il peut prendre. C'est donc à peu près la même chose. Il peut être vrai ou faux. Il en va de même pour ces superbes vidéos, je l'espère. C'est donc vrai. Et c'est ce code HTML. Eh bien, j'espère que vous ne pensiez pas cela parce que c'est faux en fait. C'est donc une sorte de truc booléen. Et la logique est en fait incroyablement puissante, comme l'ensemble du champ logique. Parce que l'ensemble de nos ordinateurs et de nos systèmes d'exploitation et tout cela repose sur du code binaire. Et en théorie, les booléens ne sont rien d'autre que du code binaire, non ? Parce qu'un vrai est un et qu'une force est 0. Par conséquent, les mêmes lois s'appliquent en ce sens. Vous pouvez le considérer comme cela, mais dans l'ensemble, les Booléens , de même que pour les entiers, nous allons examiner ces éléments un peu plus en détail à l'avenir. Mais je voulais vraiment vous en présenter. Dans la troisième et dernière sorte de gros crochets ici, nos personnages et nos cordes à un personnage, comme vous pouvez le voir, marquent un omble. Et il s'agit d'un seul caractère, donc il est marqué par ces guillemets simples ici. Et cela peut stocker un seul personnage et des caractères spéciaux régulent le commerce. Je peux donc mettre une virgule ici, c'est très bien. Je peux mettre un tiret ici, comme un hashtag, l'étoile du symbole plus, tout va bien. Eh bien, je peux même mettre dans un espace et ça marche. Cependant, ce que je ne peux pas faire, c'est que je peux mettre deux caractères ici, puis cela ne fonctionnera pas car deux caractères ou plusieurs caractères l'un à côté de l' autre s'appellent une chaîne. Pour une chaîne, comme je l'ai dit, n' est qu'une séquence de caractères. Et cela est marqué par des guillemets normaux. Donc, deux guillemets ici et deux guillemets ici. Et comme vous l'avez probablement vu, la fin de chaque ligne comporte toujours les points-virgules. Ceux-ci sont également très importants ici. Et c'est en quelque sorte l'idée. Vous avez donc des caractères singuliers singuliers et un, a, une chaîne de caractères est une chaîne. C'est en quelque sorte l'idée ici. Et puis, à la toute fin, j'ai voulu mentionner quelque chose que nous verrons définitivement à l'avenir, qui est null, le mot-clé null. Vous pouvez donc voir que ce test de chaîne est égal à la valeur null. Maintenant, ce qui est très important, c'est que null n'est pas 0. Il est littéralement vide, comme s'il n'avait aucune valeur. Cependant. C'est parfois au début, surtout un peu difficile de faire la distinction entre ce que je ne comprends pas, pas de valeur. Qu'est-ce que cela signifie ? Eh bien, il n'a pas de valeur indéfinie, pour ainsi dire. Il est inexistant. Écrivez ce test comme s' il était défini ici, il n'est pas, il n'a pas de valeur, il est nul. Et nous allons certainement examiner cela et le voir dans une conférence ultérieure également. Ne vous inquiétez donc pas si c' est un peu déroutant, pas de soucis. Le reste devrait être au moins assez compréhensible dans la mesure où, d'accord, nous avons quelques seaux, nous pouvons y penser, certains conteneurs dans lesquels nous pouvons économiser certaines valeurs. Et selon le type de valeur qu'ils sont, nous devons écrire différentes choses devant. C'est donc en quelque sorte l'idée générale que je voulais faire connaître ici sont les types de données. Sinon, j'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau et je vous verrai lors de la prochaine conférence. Donc, oui. 4. (Java) Syntaxe Java Java: Bon, bienvenue dans l' introduction Java de Minecraft Martin. Et dans cette conférence, nous allons jeter un coup d'œil à la lecture du code. Ou je vais aussi appeler cela peut-être la syntaxe Java. Donc, l'idée est d'abord, et cela pourrait être que certains d'entre vous ont peut-être déjà voulu attendre une seconde. Il a ignoré tout cela ici. Qu'est-ce que c'est ? Tout d'abord, nous allons nous calmer car nous allons devoir commencer à construire d' autres fondamentaux avant parler de tout ce qui se passe ici. Pour l'instant, ce que je recommande, c'est que vous ignorez tout cela. La seule chose qui nous préoccupe vraiment c'est que cette tranche précoce ici. Et puis, si je mets mon curseur là, vous pouvez voir que celui-ci illumine tout. Tout d'abord, bien, il faut maintenant se produire entre ces deux crochets bouclés. C'est tout ce qui nous préoccupe. Nous ne nous soucions pas de ce que cela signifie. Nous ne nous soucions pas de ce que c'est, de ce que tous ces publics, statiques, vides, principaux, cordes, tout cela, pas de soucis du tout. Nous allons comprendre tout cela dans les prochaines conférences qui seront à venir pour le moment. Nous allons comprendre cela essentiellement à l'intérieur ici. C'est notre prérogative principale pour le moment, mais tout d' abord, le code est lu de haut en bas. Et c'est intéressant. Eh bien, oui. C'est pourquoi nous avons ici ces lignes, qui sont très utiles, peuvent être très utiles pour déterminer les flèches. On peut dire, Hé, vous avez un problème à la ligne 18. Vous le regardez en ligne. 18, c'est là. D'accord. Assez juste. C'est très utile. Et généralement, il y a, bien sûr, des exceptions à la règle. Mais en général, vous lisez de haut en bas. Maintenant, si vous avez deux barres obliques ici, vous avez un commentaire sur une seule ligne. Et si vous avez cette barre oblique, étoile et étoile, et vous pouvez avoir des commentaires sur plusieurs lignes. C'est donc aussi quelque chose dont il faut être conscient. Et le, Il y a quelques choses différentes que vous pouvez faire quand vous avez une variable, n'est-ce pas ? Nous revenons donc aux variables. Et nous les avons bien sûr vus, n'est-ce pas ? Différents types de données. Et la variable était un peu comme un compartiment ou un conteneur dans lequel nous pouvions stocker une valeur d' un certain type et nous devons spécifier cela. Ainsi, lorsque vous déclarez une variable, déclaration d'une variable signifie que vous déclarez le type de données de cette variable et le nom de la variable. Notez encore une fois que toutes les lignes se terminent par un point-virgule. C'est normal. Ainsi, chaque ligne, chaque instruction se termine par un point-virgule. C'est d'ailleurs très intéressant, car je pourrais en théorie, non ? Un autre. Donc, en x et je pourrais juste faire ça. Eh bien, cela ne fonctionne pas tout à fait parce que nous utilisons tous ce jour 0. Donc, par exemple, je pourrais le faire aussi. Cela fonctionne également parce qu'il s'agit d'une instruction unique, donc il ne doit pas nécessairement s'agir de chaque ligne. Et en fait, cela fonctionnerait également même s' il y a deux lignes. Et au fait, c'est comme une chose horrible. C'est comme un formatage du diable. Ne faites jamais quelque chose comme ça. Mais quel que soit le cas. Il ne s'agit donc pas nécessairement de lignes, mais c'est dans une seule instruction. C'est une sorte d'idée. Et vous direz généralement que chaque ligne doit se terminer par un point-virgule est un bon début. En gros, c'est un bon début. Ce n'est pas toujours le cas, mais c'est généralement le cas. Maintenant, il s'agit de déclarer une variable et nous pouvons également attribuer une certaine valeur à une variable. Et c'est ce que nous faisons ici. Nous l'avons déjà déclaré. Donc, si j'existe maintenant quelque part dans l'éther du programme, disons, et maintenant nous disons que j'ai 30 ans. Nous avons donc attribué une valeur à cette variable, d'accord ? Maintenant, nous pouvons faire les deux en même temps, en déclarant et en attribuant une valeur, qui est alors l'indice égal à 10. Et cela s'appellerait initialisation ou initialisation de cette variable dans ce cas. Et c'est très intéressant. Habituellement, les gens ne jettent pas nécessairement ces termes. C'est juste quelque chose dont il faut être conscient un peu. Ok, j'ai déclaré cette variable, maintenant je l'ai initialisée ici, j'ai assigné cette variable, donc c'est juste quelque chose que les termes ici devraient être, au moins la stocker dans votre esprit. C'est le point le plus important ici. Ensuite, il est possible d' accéder à des variables ou des méthodes. Nous avons déjà parlé de méthodes de certaines variables ou objets. Nous ne savons pas encore très bien quels sont les objets, mais nous allons également le comprendre à l'avenir. Mais par exemple, si nous avons une chaîne, nous pouvons en réalité obtenir la longueur de la chaîne. Donc, combien de caractères y a-t-il dans cette chaîne en faisant des points, puis quelque chose après. Donc, si je mets ça, vous pouvez voir qu'une quantité énorme de choses me sont jetées à titre de suggestion, connaisseurs au mur, nous allons également examiner ces choses dans une conférence future. Pour le moment, nous savons simplement que l'opérateur point nous permet également d'accéder à certaines variables ou méthodes d'une autre variable. C'est en quelque sorte ce que nous devrions stocker pour le moment. Et ensuite, l' application réelle de cela, nous verrons dans une conférence ultérieure de loin, de loin, dans une plus grande mesure et beaucoup plus détaillée que cela. Mais pour le moment, c'est en quelque sorte l'essentiel de la lecture du code ici. Comme je l'ai dit, ce n'est évidemment pas exhaustif. Ce n'est pas tout, mais ce sont en quelque sorte les principales choses que je voulais faire connaître pour le moment. Vous avez donc l'idée de déclarer une variable, d' attribuer une variable, puis de faire les deux en même temps, puis d' accéder à quelque chose avec l'opérateur point. Et surtout, que l'école de cette année soit ignorée et que tout cela soit ignoré et que tout ce qui se trouve entre ces crochets bouclés devrait vraiment faire l'objet d'une attention particulière pour le moment. être. Mais comme je l'ai dit, nous allons sortir de là, ces crochets bouclés vengés, mais ce sera tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 5. (Java) Sortie et entrées: Bon, bienvenue dans l'introduction de Java ici pour la modélisation micro-ondes. Et dans cette conférence, nous allons jeter un coup d'œil à sortie des choses et à l'entrée des choses. Il s'agit donc à la fois de sortir quelque chose sur la console et lire quelque chose de l'utilisateur. Donc, nous stockons essentiellement pour améliorer notre capacité à faire quelque chose. Et la première chose que nous allons faire, c'est que nous allons simplement sortir Hello world car c'est quelque chose que chaque programmeur apprend dès la première fois. Et c'est ce que nous allons faire. Nous allons donc taper un système. Et vous pouvez voir que certaines choses sont en fait suggérées pour nous. Nous allons juste écrire ce système avec un S majuscule, très important, tout en minuscules puis en ligne d'impression, impression LN. Ensuite, nous allons faire une première parenthèse ouverte. Les parenthèses fermantes doivent être générées automatiquement. Et puis on peut juste aller ici et mettre un point-virgule. Maintenant, c'est l'Oregon. On va bien se passer ici. Cependant, nous voulons maintenant mettre quelque chose entre parenthèses et cela va être produit. Maintenant, nous devons en faire une corde. Par conséquent, nous allons entrer les guillemets ici. Et ensuite, les deuxièmes guillemets devraient également être générés automatiquement. Et puis on peut taper Hello World. Aussi simple que ça. Et maintenant, pour commencer ce programme, nous allons ici, nous nous assurons que tout va bien. Cela devrait ressembler à peu près le même. Et nous allons simplement cliquer sur ce bouton Exécuter. Et après quelques instants, vous avez Helloworld. Si c'était la première fois que vous lancez un programme où vous commencez à programmer pour la première fois littéraire en ce moment. Et c'est la première fois que vous exécutez ça. Et tout ici dit bonjour le monde et cela dit que le processus est terminé avec le code de sortie 0. Félicitations. Je ne suis même pas comme si je ne l'étais pas, je ne veux pas être condescendante ici parce que c' est en fait une étape que chaque programmeur traverse. À un moment donné, ils vont écrire un programme Hello World et ils vont être comme attendre une seconde, je peux faire afficher les choses comme I1. Je pourrais donc, par exemple, dire bonjour aux étudiants. Et vous allez être comme, comme ça ne peut pas être le cas. Je peux juste le faire. Oui, je peux juste exécuter ça. Si je le fais correctement, tu y vas. Lançons ce Hello étudiants. Et maintenant, il est dit Bonjour les étudiants, pas de soucis du tout. Donc, comme vous pouvez le voir, c'est vraiment vraiment cool et cela va être encore plus surchargé parce que maintenant, disons que nous avons une variable entière x, qui est égale à 10. Eh bien, pourquoi ne pas sortir ce système une fois de plus et je peux commencer à écrire ça. Et vous pouvez voir que c'est un peu comme si un taux sélectionné est en quelque sorte mis en évidence, pour ainsi dire. Et quand j'appuie sur la touche de tabulation, elle se termine automatiquement. Je peux donc écrire cela très rapidement. Ainsi, vous pouvez le voir comme déjà, fondamentalement est une ligne suggérée ici, puis une ligne d'impression par points également. Et je peux juste mettre le x dedans et regarder ça. Tout fonctionne et parfois très vite. Vous pouvez donc regarder ça comme ça, eh bien, c'est tellement pour ça, non ? Ainsi, système de ligne d'impression, vous pouvez voir à quelle vitesse cela fonctionne parfois. Mais pas de soucis, je vais essayer de rendre cela, surtout au début ici, un peu plus lent pour que tout le monde puisse rester au courant. Et bien, nous pouvons simplement mettre le x ici, sorte que la variable à l'intérieur de ces parenthèses et ensuite la valeur est en sortie. C'est vraiment cool, n'est-ce pas ? Où vous avez la possibilité de générer réellement quelque chose qui se trouve dans une variable. Et maintenant, on va devenir encore plus fou. Donc encore une fois, System.Out, imprimer la ligne. Une fois que nous pourrons le compléter automatiquement avec la touche Tab. Et maintenant, je peux dire quelque chose comme donner de la valeur. Et maintenant, regardez ça. Je peux aller au-delà de la ficelle, non ? Faites un plus x. Aucune erreur. Tout va bien. Que va-t-il se passer maintenant ? Eh bien, regardez ça maintenant. sortie d'une valeur, puis la valeur de la variable va y être affichée. C'est donc assez fréquent, malade si je le dis moi-même. C'est vraiment cool. Une autre question se pose, eh bien, comment lire quelque chose de la part de l'utilisateur ? Maintenant, c'est un peu plus compliqué. Habituellement, c'est quelque chose, vous savez, c'est une sorte de semi-limitation de Java, je dirais. C'est un peu gênant que c'est compliqué, mais ce que nous allons écrire ne s'inquiète ce que nous allons écrire est le suivant. Nous allons écrire un scanner et ensuite tout espacer quand quelque chose devient rouge ici, pas de soucis du tout. Nous allons rester calmes. Tout va bien. Ensuite, le scanner en petit est égal à un nouveau. Et puis, une fois de plus, scannez avec un gros S avec un capitaliste à l'intérieur des parenthèses. Nous allons donc créer un système de parenthèse. Et je termine ça par un point-virgule. Maintenant, le scanner ici et le scanner ici devraient être prêts. C'est tout à fait très bien. Ce que vous devez faire, c'est de cliquer dessus et d'appuyer sur Alt et Entrée pour l' importer ici. Comme je l'ai dit, nous voulons généralement ignorer tout cela, mais nous pouvons faire un petit sommet ici. Vous pouvez donc voir importer Java util scanner que celui-ci est essentiellement importé. Ce n'est donc pas du tout inquiétant. Vous pouvez, si cela est important pendant que vous écrivez ceci, car lorsque vous appuyez sur la touche Tab, lorsque vous écrivez le scanner, cela peut être important automatiquement, pas de soucis. Il suffit de s'assurer que c'est la bonne phrase, pour ainsi dire ici. Et que c'est écrit comme ça. Nous n'allons pas nous inquiéter de ce que cela signifie. Que faisons-nous ici ? Rien de tout ça, nous allons juste savoir, d'accord, nous en avons besoin pour lire quelque chose. Alors on va dire «  système out », imprimer la ligne, taper ton nom d'utilisateur, quelque chose comme ça. Et puis ce que nous allons dire, nous allons créer une nouvelle variable de chaîne appelée entrée. Et nous allons rendre cela égal au scanner. Ça. Suivant. Vous y allez. Ok, donc, comme vous pouvez le voir, doit être écrit comme ça. Nous devons donc mettre en parenthèse suivante , puis ouvrir et fermer. Et c'est très bien. Donc, cela va maintenant enregistrer tout ce que nous allons saisir dans la console dans cette variable ici, et ensuite nous pourrons faire quelque chose avec elle. Par exemple, nous allons juste sortir immédiatement à nouveau. Donc, système de ligne d'impression, votre nom d'utilisateur est, et ensuite nous allons juste dire entrée. Donc, juste pour le, nous testons cela essentiellement. Alors, gardons ça. Et ce que nous devrions voir, c'est que beaucoup d' étudiants ont tendance à produire une certaine valeur. Et vous pouvez voir que tout d'abord, le programme ne se termine pas automatiquement car il attend nos commentaires. Disons simplement ceci. Mon nom d'utilisateur est le comte Andrew. Je vais appuyer sur Entrée et vous verrez ensuite que votre nom d'utilisateur est. C'est donc plutôt cool quand on y pense. Et cela commence vraiment là où vous pouvez simplement jouer un peu avec ça. Vous savez, vous avez une certaine intractabilité avec le PC. Vous pouvez maintenant parler au PC, pour ainsi dire, ce qui est vraiment cool. C'est donc l'une des premières étapes. Je vous conseillerais vraiment vous conseillerais essayer un tas de choses ici, de taper quelques trucs, de taper des trucs. En fait, cela peut être très amusant, mais nous allons bien sûr utiliser cela dans futures conférences et les travaux à venir, où nous allons en gros lire des choses évaluées et ensuite faire les choses en fonction de ce qu'est l'entrée. Donc, c'est plutôt cool. Mais pour l'instant, c' est pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 6. Erreurs de Java) et comment les traiter: Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons examiner certaines erreurs et comment demander de l'aide lorsque vous obtiendrez ces erreurs. Donc, tout d'abord, nous commençons à nouveau avec du code prédéfini ici. Mais pas de soucis. Bien sûr, tout cela est disponible dans le référentiel GitHub ou en tant qu'individu. Et c'est très intéressant. Donc tout d'abord, nous pouvons fondamentalement décommenter certaines lignes pour trouver des erreurs. La première erreur que nous allons avoir est que Java ne trouve pas d'erreur de symbole. Et en gros, comment allez-vous voir ça, c'est bon, quelque chose est rouge à l'intérieur du code. Par exemple, je vais simplement décommenter cela et vous verrez qu'a2 31, essentiellement une variable à laquelle nous essayons d' accéder ou de référencer n'existe pas réellement. Cela va donc être rouge. C'est peut-être quelque chose que vous n'avez pas remarqué. Donc, le rouge sera aussi comme souligné ici et dans la classe principale apparaîtra et vous allez avoir un symbole de problème et un problème là-bas. Il y aura donc beaucoup de signes ici, mais vous ne remarquerez peut-être pas cela, ce qui est tout à fait très bien. Donc, si vous continuez à exécuter votre programme, ce qui vous accueillera est le suivant. La première chose à dire, c' est que lorsque vous obtenez une erreur, ne vous inquiétez pas du tout. Honnêtement, le fait d'avoir une erreur au début peut sembler très intimidant et vous pourriez devenir nerveux. Disons, ne soyez pas nerveux du tout. Obtenir des erreurs est en fait quelque chose qui est en quelque sorte attendu lorsque vous programmez pour que quelque chose fonctionne la première fois vous rend très méfiant, car c'est très rare. que lorsque vous travaillez sur un code, il fonctionne lors de la première exécution. Donc, s'il vous plaît, tout d'abord, restez toujours calme lorsque vous obtenez une erreur. n'y a rien de tel. Il n'y a aucune honte là-dedans. Vous n'avez rien fait de mal et vous pourrez toujours y remédier. Donc cette flèche, dans ce cas, elle dit, comme je l'ai dit, Java ne peut pas trouver de symbole. Il nous dit en fait quelle est la variable ici et où elle se trouve. Et si vous jetez un coup d'œil au sommet ici, vous pouvez voir ce 1128. Et cela signifie en fait que c'est à la ligne 28, au caractère ou à une autre ligne 11, caractère 2008. Donc c'est vraiment vraiment cool. Nous pouvons donc immédiatement trouver où se trouve cette flèche et dire, Ok, j'ai fait une faute de frappe ou j'ai oublié de faire une variable, quelque chose comme ça. Ce serait cette flèche ici. La deuxième chose que vous pourriez rencontrer à un moment donné est l'exception dans thread main, Java, Lang, NullPointerException. Cela signifie donc que quelque chose est nul, ce qui signifie qu'il n'a pas de valeur. Par exemple, nous avons une variable de chaîne ici. Et nous définissons la valeur sur null, ce dont je vous ai déjà parlé signifie qu'elle n'a pas de valeur. Il n'existe pas vraiment. Maintenant, si nous devions maintenant essayer d'appeler la longueur là-dessus, cela n'a évidemment aucun sens parce que la longueur de rien n'est plus comme si vous ne pouvez pas appeler une longueur sur quelque chose qui n'existe pas, ce qui signifie que nous allons obtenir une exception NullPointerException. Donc, ça ressemble un peu à ça. Et cela s'appellerait la trace de pile. Donc, une trace de pile en termes profanes, en général. Donc, vous savez, il s'agit essentiellement de savoir quel code a été appelé jusqu'à ce stade, jusqu' à ce que l'erreur se produise. Et vous pouvez voir que cela s'est produit à Cotton Domain Main, puis 16. Nous pouvons donc cliquer dessus et cela nous donnera la ligne exacte et parfois même le code exact où cela s'est produit. Il s'agit donc de l'exception NullPointerException. C'est quelque chose qui arrive régulièrement même avec des développeurs avancés, que parfois on oublie d'initialiser quelque chose. Parfois, vous appelez simplement quelque chose dans le mauvais ordre, vous oubliez d'appeler une méthode qui arrive trop souvent. Encore une fois, rien à craindre, mais c'est l'exception nulle. Vous pouvez généralement résoudre ce problème en attribuant correctement une variable. Et puis la dernière chose qui ne ressemble pas vraiment à une exception, mais nous l'avons également vu ici. C'est donc ce processus terminé avec le code de sortie 1, ou parfois il peut aussi dire terminé avec une valeur de sortie non nulle un, quelque chose comme ça. Ou cela pourrait aussi être différent de 1, 13042, peu importe. Il peut donc s'agir d'un nombre qui n'est pas 0. C'est la chose la plus importante. Cela signifie qu' il y a une erreur. Vous ne devriez jamais poster uniquement ceci. Si vous ne publiez que, hé, j'ai une flèche et que vous avez terminé avec codes de sortie 0 ou terminé avec une valeur de sortie non nulle. Tout le monde sait que vous ne connaissez pas Java. Bien sûr, ce n'est pas un problème, car il faut commencer quelque part. Mais c'est juste si quelqu'un veut vous aider, non ? Donc, par exemple, si vous deviez aller dans les Q et A et que vous êtes comme, Hé, mon vous savez, j'ai une flèche et ça dit ceci. Si vous publiez ceci, tout d'abord, je vais savoir que vous n'avez probablement pas regardé cette introduction de Java, qui trouve bien sûr votre propre décision. Cependant, ce que je remarquerai aussi que ce n'est pas le cas, cela ne me donne aucune valeur. Cela me dit juste qu'il y a eu une erreur. C'est ça. C'est tout ce que cela dit. Si la valeur de sortie n'est pas 0, cela signifie simplement qu'il y a eu une erreur quelque part. Je ne sais pas quelle est l'erreur. Je ne sais pas quelle était l'exception. Je ne sais rien. Ce qui signifie que je vais devoir demander à nouveau. Cela peut être un peu frustrant parce que vous devez demander à nouveau, Hé, pouvez-vous me montrer le journal des erreurs s' il y a une sortie là-bas. Il suffit de mettre la flèche là-dedans. Habituellement, lorsque vous avez une erreur, il vaut mieux donner trop d'informations plutôt que trop peu. C'est donc généralement le cas. Ce n'est pas toujours le cas. Comme ne vous contentez pas de déposer 80 fichiers différents sur quelqu'un qui veut vous aider ou dans les questions-réponses, quelque chose comme ça. Mais d'habitude, tu devrais avoir quelque chose comme ça, non ? Une exception et une erreur, type de journal quelque chose qui dit une chose particulière comme cette exception. Vous avez peut-être une exception quelque part, quelque chose comme ça. Cela devrait donc être comme ce que vous voulez faire attention. C'est juste quelque chose que je voulais vous donner, qui peut être très important. C'est déjà le caoutchouc. Il s'agit donc d' un aperçu général de ces erreurs. Et bien sûr, n'hésitez pas à demander s'il y a des flèches. Si vous obtenez des flèches en cours de route et que vous demandez de l'aide, c'est très bien. Je voulais simplement le mentionner, surtout cette année parce que cela peut être frustrant, pas seulement parfois pour moi parce que, bien sûr, je dois poser une question de suivi. Et ensuite, selon combien de temps ça va marcher et peut-être que tu cherches ça. Et une autre réponse n' est pas venue dans 20 minutes, donc il faut aller faire autre chose et ça prend beaucoup de temps. Cela peut donc être parfois un peu frustrant. Quoi qu'il en soit, c'est pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai dans la prochaine conférence. Oui. 7. (Java) Integers, méthodes de arithmétiques et calcules de calculs: Ou je reviendrai sur l' introduction de Java ici pour les noyaux modernes Minecraft. Et dans cette conférence, nous allons regarder des entiers. Nous allons examiner les mathématiques, et nous allons nous pencher sur les opérateurs arithmétiques. Maintenant, ce sont tous de très gros mots. Cependant, je suis certain que nous y arriverons. La première chose que nous allons faire, c'est d'initialiser deux entiers. Cela va être int x est égal à 100 et int y est égal à 20. Jusqu'à présent, tout devrait être assez clair. Dans l'ensemble, c'est juste que ce sont deux variables, x et y. Elles ont respectivement la valeur 120. Ce sont tous les deux des entiers. Nous avons donc commencé avec le conseil int. Cela devrait donc être assez simple. Et nous aurons également un entier appelé résultat. Maintenant, nous allons simplement déclarer cette variable sans lui attribuer de valeur, car nous allons l'utiliser de la manière suivante. La première chose à laquelle nous allons jeter un coup d'œil, c'est l'ajout. s'agit donc essentiellement d'opérateurs arithmétiques , d' addition, de soustraction, de multiplication , de division, puis il y a un cinquième type, que nous allons examiner dans un instant. Donc, le résultat de l' ajout sera bien sûr x plus y donc ça ne devrait pas être trop fou. On va juste entrer en x ici. Et cet opérateur, x en partant de la gauche. A, un entier peut également être un nombre flottant. Cela fonctionnerait donc aussi. Donc les deux, les deux, si X et Y, alors que les deux flotteurs fonctionneraient également totalement. Maintenant, bien sûr , le résultat devrait également être à flot. C'est très important. Pensez-y. Nous en verrons également un exemple dans une prochaine conférence. Comme si vous commencez à les mélanger, mais cela devrait être assez raisonnable. Nous avons simplement mis le symbole plus et ensuite, en gros, nous allons ajouter x plus y. Donc, nous allons sortir le système, imprimer la ligne et imprimer le résultat juste pour que nous voyions, eh bien, ceci devrait être un 120. Voyons voir. Et bien sûr, c'est un 120. Tout fonctionne parfaitement bien. Bien sûr, nous pouvons également utiliser une soustraction, n'est-ce pas ? Et ce que je vais faire, c'est que je vais vraiment laisser tout cela correctement ? Je vais donc simplement faire glisser ma souris ici, puis appuyer sur contrôle C pour copier tout cela pour ma souris ici, contrôle V pour le coller. En général, je fais quelque chose comme ça juste pour que, vous savez, c'est un peu plus facile parce que c'est bien sûr très dupliqué dans ce cas. Maintenant, pour la soustraction, vous l'avez probablement deviné. Il suffit de mettre un signe moins ici. Et tout d'un coup, nous soustrayons y de x, ce qui signifie que cela devrait être 80. Et bien sûr, c'est tout à fait bon. Et nous allons en faire une copie complètement. Je vais une fois de plus sélectionner ce contrôle C, puis Control V ici. Et ensuite, nous allons également examiner la multiplication et, bien sûr, la vision également. multiplication va donc être une étoile ici. Et puis la division n' est qu'une barre oblique. Cela devrait donc être assez sensé, rien pour être trop fou. Dans l'ensemble. Ce ne sont que les façons normales de calculer les choses. C'est à peu près tout ça. Passons en revue le C 2005. En fait, c'est très bien. Et maintenant, la question devient, eh bien, quel est le cinquième type ? Ou le cinquième type est en fait le reste. Cela est donc parfois appelé opérateur modulo. C'est comme des termes mathématiques réels. Mais pour nous, c'est le reste de l'opérateur et cela ressemble à un signe de pourcentage. Par exemple, nous pourrions dire 20 autres deux, ce qui serait bien sûr 0. Donc, si nous allons juste copier cela une fois de plus, Control C, contrôle V, Cela sera 0 parce que lorsque nous divisons 20 par deux, il n'y a plus de reste. Il s'agit donc d'une très bonne façon de voir si un nombre particulier est pair ou impair. Donc, c'est plutôt cool. Et ce sont les cinq opérateurs arithmétiques. Un tout considéré assez simple. À quelle fréquence sont-ils utilisés ? Eh bien, je veux dire, vous allez utiliser des maths dans toute la programmation. Qu'il s'agisse ou non modélisation ou de programmation en général, des maths y sont associées, bien sûr. Ces choses sont donc très importantes à voir auparavant. Et puis la dernière chose que nous allons examiner ici, c'est les méthodes mathématiques. Maintenant, tout d'abord, nous n'allons pas nous inquiéter de trop de problèmes. Eh bien, c'est une méthode. Eh bien, vous pouvez considérer cela comme une fonction particulière. Par exemple, passons un appel à ce calcul. Donc vous pouvez voir si je tape en maths, vous pouvez voir Java Lang et obtenir cela le suggère. Et puis, si je mets un point, je l' ai fait, on me suggère tout un tas de choses que je peux appeler. Et il y a des choses, par exemple, comme la méthode max ici, où absolue, juste. Je peux donc appeler max ici et je peux dire x, y. Et puis ça va me renvoyer la valeur maximale de chacun d'entre eux, ce qui, bien sûr, dans ce cas, ce sera 100. Mais nous devrions voir à la toute fin ici une centaine d'entre eux. Donc, en fait, assez simple. Et ensuite, dupliquons cela pour le bien des arguments ou du contrôle D pour dupliquer cela. Et obtenons la valeur absolue, par exemple, disons moins 500, ce qui serait 500. Donc, en mathématiques, comme les mathématiques, c'est écrit comme ça. Vous avez peut-être déjà vu quelque chose comme ça avec ces lignes absolues, pour ainsi dire. Et cela se transforme alors en 500 car nous ne nous soucions pas vraiment du panneau qui se trouve devant lui. Nous allons donc en voir 500 aussi. Et comme je l'ai dit, il y a beaucoup plus de choses ici, comme vous pouvez le voir, ce sceau. Donc, vous pouvez en gros arrondir, arrondir. Vous pouvez attraper le cosinus, vous obtenez des exposants. Vous pouvez donc mettre quelque chose à la puissance du logarithme 10. Il y a des trucs fous ici, arrondis au hasard Même, même au hasard, il y a même des constantes comme e et pi. Il y a donc un tas de choses ici. Habituellement, il est très rare que vous ayez besoin d'utiliser. Beaucoup d'entre eux sont particulièrement semblables à la méthode max et Min et la méthode absolue sont parfois très utiles. Et c'est bien d'avoir vu cela auparavant, que vous n'aimiez pas quand vous rencontrez cela, lorsque vous regardez peut-être certains référentiels GitHub d' autres modes ou tout simplement froid en général de la part d'autres personnes. Et ils utilisent quelque chose comme ça, alors vous n'êtes pas complètement pris au dépourvu, n'est-ce pas ? Mais ce serait tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 8. Opérateurs de projet de Java) de Java): Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons examiner les opérateurs d'affectation. Nous avons maintenant vu l'opérateur d'affectation normal, qui est le symbole égal. Et il y a en fait une chose très intéressante à ce sujet, parce que c'est en fait un opérateur latéral, n'est-ce pas ? Nous allons donc attribuer la bonne valeur à la variable gauche. Donc, nous ne pouvions pas simplement taper quelque chose comme, par exemple, 30 est égal à y. Cela ne fonctionne pas, n'est-ce pas ? Nous devons en fait l'avoir dans un ordre particulier dans ce cas. Eh bien, est-ce que ça va être la conférence ? Est-ce que c'est ça ? Non, bien sûr que non. Il existe des opérateurs d' affectation spécifiques et très intéressants qui, vous savez, vous avez besoin les opérateurs arithmétiques comprennent en quelque sorte. Mais ce que nous pouvons faire, c'est bien sûr que nous pouvons dire x, par exemple, est égal à x plus y, n'est-ce pas ? Donc, nous ajoutons simplement y à x dans ce cas. Et puis en écrivant cela dans la variable x, cela fonctionne totalement. Ce ne sera pas une flèche, c'est tout à fait très bien. Cependant, nous pourrions également écrire ceci d'une manière un peu plus agréable, ce qui sera x plus égal à y. Donc cela fonctionne également ici. Et c'est vraiment cool. C'est donc là que c'est incroyable. Oh, c'est beaucoup plus facile que ça. Et généralement, c'est aussi un peu plus facile à comprendre. Maintenant, si cela vous embrouille plus que cela, c'est tout à fait très bien. Vous devrez cependant jeter un coup d'œil aux opérateurs d' affectation, surtout si, par exemple, si vous regardez le code d'autres personnes, ils ne peuvent utiliser que ces derniers et pas longtemps. la façon de l'écrire pour que vous soyez conscient de cela. Donc, même si vous n'utilisez peut-être pas certains outils dont nous parlons ici, tout cela est essentiellement des outils, des droits de programme. Vous devez toujours les connaître pour lire le code que d'autres personnes pourraient, non ? Donc, nous allons simplement imprimer la variable x ici, et ensuite passons par le reste aussi, non ? Nous allons donc le sélectionner, copier et ensuite, vous savez, il suffit de le coller cinq fois. Alors, qu'est-ce qui peut bien sûr faire un moins égal. Bien sûr, nous pouvons aussi faire des temps égaux. Bien sûr, nous pouvons aussi faire comme Ned, comme diviser les égaux. Et puis, à la fin, nous pouvons même faire le reste égal. Et ce que je n'ai jamais vu comme ça auparavant est vraiment quelque chose qui est probablement un moment très précis où c'est, doit être froid. Mais voyons simplement si cela fonctionne. Bien sûr, ça marche très bien de commencer par un 140 parce que nous en avons ajouté 20 ici, non ? Nous commençons donc ici avec 120. Un adéquat est à nouveau un 140, puis le soustraire est un 120, puis 20 est 2400, puis divisé par 20 est à nouveau 100120, puis diviser ou restant, il est bien sûr 0 parce que nous pouvons diviser un 120 de Wendy parfaitement, ce qui serait bien sûr exactement pris. C'est très bien, très bien fait. Donc, si je voulais juste en ajouter un, n'est-ce pas ? Alors, peut-être que je veux juste faire quelque chose comme ça. X est égal à x plus 1, non ? Mais je veux juste l'ajouter par un. C'est ce qu' on appelle incrémentation ou incrément x par un. Eh bien, je veux dire, bien sûr que nous pourrions écrire ça aussi, non ? Nous pouvons simplement le faire. Oui, bien sûr, ça fonctionnerait très bien. Mais il existe encore un moyen plus simple de le faire. Et ce sera X plus. Regardez-moi ça. C'est plutôt fou. Nous allons donc d'ici à ici, mais c'est vraiment comme ça que ça peut être fou. Et nous allons simplement imprimer ça. Et puis bien sûr, vous savez, x moins moins, bien sûr, fonctionne aussi. Ce serait le décrémenter. Donc, gardons ça un peu ici. plaquettes, donc s' incrémentent, s'incrémentent, et ensuite cela serait également décrémentant. Donc, au fond, nous n'en ajoutons un ou nous en soustrayons un. Jetons juste un coup d'œil. Nous commençons à 0 ici. En ajouter un, en ajouter deux c'est deux ou en ajouter un autre, à droite, 23. Ensuite, nous l' imprimons, puis nous le décrémentons, puis nous sommes de retour à 2 heures. C'est en quelque sorte l'idée générale ici. Ce sont les opérateurs d'affectation, puis augmentent et décrémentent l'Europe, ce qui est également important. Mais ces deux-là vont voir beaucoup de choses, en particulier ces X plus plus et x moins moins. Ce sont des choses qui sont définitivement utilisées très souvent à certaines capacités, disons à l'intérieur du code. Mais ce serait déjà pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il a appris au Nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 9. (Java) Booleans et opérateurs de comparaisons: Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons examiner un booléen et des opérateurs de comparaison. La dernière fois que nous avons examiné des entiers, et maintenant nous allons passer à autre chose et regarder les Booléens. Ainsi, les Booléens en général, nous pouvons nous en souvenir de la deuxième conférence, sont essentiellement un type de données qui peut enregistrer un vrai ou un faux. Par exemple, nous allons créer un nouveau booléen ici. Par exemple, aime les conférences, les cours majeurs qui sont écrits correctement, et c'est bien sûr vrai, espérons-le. Et créons également un booléen, qui est, par exemple, posé une question. Et faisons simplement faux pour le moment, peut-être que cela deviendra vrai plus tard, mais pour le moment, c'est faux. Nous nous souvenons donc de Booléens, comme je l'ai dit, d'un vrai ou d'un faux, 1 ou 0, c'est l'idée. Et on peut même imprimer ça, n'est-ce pas ? Par exemple, nous pouvons dire que vous l'avez fait ou que vous aimez ces conférences. Disons que vous aimez ces conférences. Qui aime ces conférences ? Ensuite, je peux appuyer sur Control D pour dupliquer cela. Par exemple, vous pouvez dire que vous avez posé une question dans les questions-réponses. Je pourrais donc, par exemple, dire ceci. Et puis, au lieu d' aimer les conférences, je peux dire poser des questions. Si je devais le faire, alors ce que nous allons voir est juste vrai et faux, essentiellement comme une sortie de chaîne, ils vont tout à fait bien. Ok, donc c'est le genre d' idée des Booléens, n'est-ce pas ? Vrai ou faux, assez juste. Mais maintenant, que sont les opérateurs de comparaison ? Eh bien, réfléchissons à ces opérateurs de comparaison, n'est-ce pas ? Eh bien, il y en a quelques-uns. Et l'idée d' opérateurs de comparaison que, bien sûr, nous allons comparer deux valeurs différentes l'une à l'autre. Et cela va renvoyer un booléen parce que, bien sûr, si nous comparons quelque chose, par exemple, nous pourrions dire plus grand que juste ? Donc, nous avons quelque chose qui est plus grand que quelque chose d'autre, alors bien sûr, il va être vrai ou faux, n'est-ce pas ? Si je veux dire, j' ai une pomme de la taille d'un baseball. Comme d'accord, assez juste. Et puis j'ai une pomme comme un ballon de football. Bien sûr, la taille d'un ballon de football est plus grande, donc il va y avoir un vrai en dessous de ça. Il y en a aussi un plus grand ou égal. Il y a aussi des égaux, il n'y a pas d'égal. Ils sont plus petits que, plus petits ou égaux. Ce sont donc les opérateurs de comparaison. Nous n'allons pas examiner chacun d'entre eux individuellement. Et nous allons y jeter un coup d'œil un peu. Donc, l'exemple que nous allons examiner est, par exemple, que vous avez un score à, ou peut-être que vous avez passé un examen, n'est-ce pas ? Vous avez passé un examen et votre score est de 98. Eh bien, merci beaucoup. C'est un très bon score et c'est en fait votre jour de score, vous y allez. Alors vous pouvez dire, eh bien, que nous pourrions écrire dans un booléen qui s'appelle la classe passée, n'est-ce pas ? Et vous réussissez ce cours quand exactement. Nous pouvons y penser. Bien sûr, vous avez besoin d' au moins 50 points. Disons simplement que, par souci d'argumentation, il faut 50 points pour réussir cette classe. Eh bien, c'est très facile. Vous pouvez simplement dire que votre score doit être supérieur ou égal à 50. Est-ce logique ? Cela devrait donc avoir un sens intuitif. Tout ce qui est considéré est que ce serait vrai dans notre cas, bien sûr, mais si votre score change , la réponse ici change, n'est-ce pas ? Parce que dès que ce n'est plus la jambe, s'il est 49 ans, vous ne passez plus la classe, non ? Cela devrait donc être considéré comme assez explicite. Donc, nous pouvons même simplement imprimer ça. Donc, il suffit de sortir le système, d'imprimer la ligne, disons par exemple, vous avez demandé, mettons ça dans donc et passons ensuite la classe, non ? On va donc obtenir un vrai si c'est vrai et un faux si ce n'est pas le cas. Et nous pouvons même dire quelque chose comme avec votre score et vos points, quelque chose comme ça. Nous pouvons dire cela. Et si je le fais maintenant et que je vois que tu passes vrai avec 98 points. Si je devais mettre cela à 49, ce qui, bien sûr, dans ce cas, n'est plus vrai. Donc, aucun 49 n'est plus plus grand ni égal à 50. Eh bien, cela va maintenant renvoyer un faux. Vous verrez, vous y allez. Vous avez passé faux avec 49 points. Gardons cela comme DOE de 1998. Et réfléchissons à cela aussi. Prenons une autre idée ici. Donc, nous pouvons également avoir un booléen, par exemple, a un score parfait, non ? Et cela pourrait alors être égal à votre score est égal à 100. Il s'agit de l'opérateur égal. Il est très important que ce soit deux signes égaux. Et c'est quelque chose que parfois les gens se confondent sur les connaisseurs. Un signe égal est l'opérateur d'affectation dans lequel nous affectons une valeur à une variable. Et deux signes égaux sont l'opérateur de comparaison dans lequel nous comparons si cette valeur de cette variable est égale ou non à la valeur de celle-ci. Et c'est très important. Et ici, bien sûr, c'est faux. Bien sûr 98, ce n'est pas égal à 100. Cela devrait également être assez simple dans l'ensemble. Et nous pouvons même faire quelque chose comme ça qui est très intéressant. On peut même nier quelque chose. Il s'agit donc essentiellement de la marque de déclamation ici. Nous pouvons aussi dire quelque chose comme, hé, nous passons la classe ici, puis nous pouvons créer une autre classe booléenne appelée classe échouée, nous a échoué. Et cela peut être égal à, eh bien, ne pas passer la classe, n'est-ce pas ? Nous annulons donc simplement si nous réussissons le cours ou non. Et bien sûr, c'est logique. Donc, si c'est un peu déroutant, vous l'écrivez, comme écrire un texte d'auteur. Si la classe échouée est vraie, classe est fausse, bien sûr. doivent donc toujours être opposés les uns aux autres. Nous pouvons donc toujours simplement nier cela. Cela pourrait également être une idée. Donc, négliger l'année, c'est bien sûr la négation signifie essentiellement les deux mettent le point d'exclamation devant, signifie que le vrai devient faux. Et si c'est faux, c'est vrai. C'est vrai, alors, n'est-ce pas ? C'est en quelque sorte l'idée. Opérateurs de comparaison. Vous pouvez également y penser. Ils renvoient un opérateur de comparaison. Vous pouvez y penser comme ça. Lorsque nous avions une note plus, nous avons pris un entier à gauche, plus un entier à droite et nous retournons un entier. Encore une fois, cela a un sens intuitif absolu. Vous n'y pensez même pas quand vous l'êtes, lorsque vous travaillez sur les mathématiques et que vous calculez des choses. Lorsque vous faites 5 plus 5, comme bien sûr cela va revenir à 10, ce qui est un chiffre. Eh bien, l'opérateur de comparaison est à peu près le même. Vous venez d'entrer, par exemple ici un entier et un entier, et vous renvoyez un booléen. C'est tout ce qu'il y a à faire. Mais la seule chose qui change vraiment c'est le type de retour, pour ainsi dire. Je pense à cela et c'est tout, quelque chose à garder à l'esprit ici. Et ce serait là les opérateurs de comparaison. Je recommande vivement de jouer un peu avec ça. Ça ne devrait pas être trop fou. Il s'agit en réalité de comparer deux valeurs différentes l'une à l'autre. Et cela s' exprime alors sous la forme d'un booléen, ce qui devrait être logique, c'est qu'il n'y a jamais une seule réponse juste dans ce cas, n'est-ce pas ? Soit le score est supérieur ou égal à 150 ou non, cela implique. Mais quel que soit le cas, c'est tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et que vous avez appris quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 10. (Java) Booleans et opérateurs logistiques de logique: Bon, bienvenue dans l'introduction de Java ici pour la modélisation micro-ondes. Et dans cette conférence, nous allons examiner un opérateur logique. J'ai donc préparé quelques Booléens ici, regardé des conférences, posé des questions, terminé mes devoirs et engagé un examen. Ceux-ci sont bien sûr liés à un scénario semblable à un cours, disons. Et nous allons maintenant examiner les opérateurs logiques. Et il y en a trois, essentiellement que nous allons jeter un coup d'œil. Il y a la fin, il y a la salle d'opération et le non. Nous avons donc vu précédemment où nous pouvions nier quelque chose et l'AND, et la salle d'opération est également très intéressante. Les opérateurs logiques prennent donc deux booléens et vous donnent un nouveau booléen. Par exemple, pour la fin des booléens, vous devez le donner, être vrai, puis il retourne vrai. Sinon, il renvoie false. Et pour l' un ou l'autre d'entre eux doit être vrai, puis cela retourne un vrai. Cela renvoie donc faux uniquement si les deux sont faux. Par exemple, vous pourriez y penser comme ça. Boolean a terminé le cours, non ? Donc, si vous voulez terminer le cours, vous devez avoir regardé les cours et terminé les devoirs. Cela devrait être logique. C'est un bon exemple concret ici. Et puis on pourrait aussi dire, eh bien, un fan, non ? Donc, disons que c'est un fan, non ? Donc, quelqu'un qui est fan finira le cours. Donc les noyaux finis et l'examen d'Eva, cela devrait également être logique dans l'ensemble. Et maintenant, quelqu'un qui pourrait apprendre, comme peut-être beaucoup d'apprentissage, a regardé les cours ou a posé la question. C'est donc quelque chose que quelqu'un apprend, non ? Soit je regarde les conférences ou pose une question. Donc, l'un ou l'autre d'entre eux pourrait être vrai et ensuite apprendre serait vrai. Voyons une idée générale ici. Et il y a encore une chose que j'ai, et ça va être ici même. s'agit donc que d'un aperçu général de ce qui se passe essentiellement. Vous pouvez également le télécharger sous forme de feuille de triche. Ceci est disponible dans les ressources. Et l'idée ici est que cela vous montre simplement quels sont les différents types de résultats, c'est essentiellement ce que sont les résultats. Donc vous avez un et B. Et ensuite, selon ce qu'ils sont, c'est le retour qui est donné, comme je l'ai dit, les deux doivent être vrais pour que les réponses soient vraies. Et ici, si l'un ou l'autre d'entre eux est vrai, alors cela renvoie un vrai. Sinon, c'est faux. Vous pouvez aussi y penser, écrire A ou B vers une sorte de, c'est vraiment dans la langue quand on pense à la négation, comme je l' ai dit, nous avons déjà parlé, c'est en quelque sorte le général. ajustez en ce qui concerne les opérateurs logiques. Bien sûr, il y a un peu plus que cela, est-ce vraiment un bon début pour cela ? Et puis, bien sûr, la vraie chose à laquelle vous pouvez penser, c'est que lorsque vous en avez un qui renvoie un booléen, vous pouvez bien sûr les enchaîner ensemble. Vous pouvez donc aussi dire, par exemple, poser une question, n'est-ce pas ? Vous pouvez donc voir que, comme cela renvoie bien sûr un booléen, nous pouvons maintenant utiliser à nouveau l'opérateur AND. Cela fonctionne donc à peu près très similaire à celui des opérateurs arithmétiques. Bien sûr, vous pouvez aussi plus, plus, plus. Vous pouvez en avoir 5 plus 8 plus 7 plus 9 plus 15. Cela fonctionne très bien. la même manière, vous pouvez également enchaîner les opérateurs logiques ensemble, n'est-ce pas ? Mais ce serait tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose nouveau et je vous verrai lors de la prochaine conférence. Donc, oui. 11. (Java) Si et autres déclarations: Bon, bienvenue dans l'introduction Java pour la modélisation Minecraft. Et dans cette conférence, nous allons examiner les déclarations if et else. Maintenant, dans cette conférence , nous allons vraiment commencer à avoir une interaction avec l'ordinateur. Beaucoup de conférences précédentes étaient très théoriques, montrent en quelque sorte des concepts. Mais dans cette conférence, nous allons vraiment bien interagir avec l'ordinateur. Commençons par créer deux entiers. Exam 1, Supposons par exemple 65 et deuxième examen, qui sera 51 pour le moment. Et nous pouvons imaginer que nous devrions rédiger un programme qui évalue les valeurs de ces deux examens. Et dit en gros, Hé, vous avez échoué ou passé l'examen 1, vous avez échoué ou passé l'examen 2. Et puis à la fin, peut-être que lorsque les gens ont réussi les deux examens, peut-être que quelque chose est imprimé comme si vous avez réussi le cours ou quelque chose comme ça. Alors, comment pouvons-nous faire cela ? Eh bien, ce que nous pouvons faire, c'est que nous pouvons faire une déclaration si. Et pour cela, nous aimons littéralement juste si, ici. Ensuite, nous pourrons faire ce qui suit. Nous pouvons mettre entre parenthèses. Et si vous le placez entre parenthèses ouvertes, les parenthèses fermantes doivent automatiquement être générées. Et à l'intérieur de ces parenthèses, nous devons mettre une valeur booléenne. Nous nous souvenons donc des deux conférences précédentes où nous avions des opérateurs de comparaison. Ce que nous pouvons dire, c'est que si l'examen 1 est supérieur ou égal à 50 , nous savons que nous avons réussi l'examen. Et puis nous avons mis caché ici c'est après les parenthèses fermantes, nous avons mis un crochet bouclé. Et si je place le support bouclé ouvert et que j'appuie sur Entrée, le crochet bouclé fermant devrait automatiquement être généré pour vous. Et maintenant, ce que nous pouvons faire, c'est que nous pouvons écrire autre chose. On peut donc dire « système out », « print line ». Et ensuite, par exemple, vous avez passé un examen. Cependant, tout le code entre ces deux accolades ici va se produire quand tout ce qui se trouve à l'intérieur des instructions if. Donc, à l'intérieur de ces parenthèses, c'est vrai. Donc, si c'est vrai, cela va se produire. Donc, c'est plutôt cool en fait. Et puis on peut en quelque sorte surcharger cela en ajoutant un autre ici à la fin et en mettant également un support bouclé. Et encore une fois, nous mettons le support bouclé ouvert dans n'importe quelle pression Enter un crochet bouclé fermant devrait automatiquement générer ici. Et ensuite, par exemple, nous pouvons simplement sélectionner ce contrôle C control V pour le coller. Et nous pouvons dire que vous avez échoué à l'examen 1. Donc, cette année, juste de l'autre se produit quand c'est faux. Cela fonctionne très bien pour nous. Nous pouvons donc utiliser cela pour vérifier si l'examen 1 a été réussi ou non . Donc, lançons ça et nous devrions passer un examen U après l'examen. Et bien sûr, nous obtenons cela, car dans ce cas, examen 1 est supérieur, supérieur ou égal à 50. C'est donc ce qu'on appelle. C'est plutôt cool. Nous pouvons maintenant faire exactement la même chose pour le deuxième examen. Nous allons donc copier tout ce contrôle C, Control V sélectionné et ensuite, nous allons dire examen 2. Ici, nous allons dire l'examen 2, et ici nous allons également dire l'examen 2. En fait, c'est plutôt cool. Toutes les choses sont prises en compte. Et puis la question se pose, eh bien, je veux dire maintenant que nous voulons sortir lorsque vous avez réussi les deux examens. Alors, comment pouvons-nous faire cela ? Eh bien, maintenant, nous sommes assez fous. Les deux dernières conférences sembleront donc un peu plus cohérentes, pour ainsi dire. On va dire l'examen 2. L'examen 1 est plus grand ou égal à 50, n'est-ce pas ? Donc, c'est toujours la réussite de cet examen final 2. Donc, c'est vrai, cet examen 2 ici est plus grand ou égal à 50. Et si cela, si les deux sont vrais, alors nous savons que vous avez réussi la classe afin que nous puissions copier le système ici et ensuite nous pouvons simplement dire que vous avez réussi, disons que la classe vient de par souci d'argumentation ici. C'est vraiment cool, non ? Nous avons maintenant des déclarations et des déclarations si autres, et ce que vous pouvez également faire d'ailleurs, lorsque vous avez une autre déclaration que vous pouvez mettre une autre déclaration if ici, n'est-ce pas ? Vous pouvez donc simplement mettre celui-ci là-dedans. Fondamentalement, si c'est faux, alors sinon, puis mettez une autre déclaration if, c'est là que vous allez faire, juste pour l'argument, dites juste vrai ici. Bien sûr, cela fonctionnerait aussi, mais, vous savez, et ensuite nous pouvons dire autrement et essentiellement les enchaîner ensemble afin que vous puissiez faire si autrement, sinon, et le dernier sera toujours autre ou pouvez pas non plus avoir d' autre ici. Cela fonctionne également. Je voulais également mentionner cela. Mais maintenant, ce qui est vraiment cool, c'est que réfléchissons à ça. Supposons qu'il s' agisse d'un programme où le professeur intervient et écrit réellement les résultats de votre examen. Oh, quoi ? Eh bien, nous nous souvenons comment peut-on lire quelque chose dans lequel nous devons écrire dans un scanner, scanner, un scanner équivaut à un nouveau scanner. Et puis system.out.print. Et puis ce genre de choses ne fonctionne que pour nous. Nous nous souvenons que nous ne voulons pas trop nous inquiéter de ce que cela signifie. Ensuite, nous pouvons dire quelque chose comme la ligne d'impression de système et dire les résultats ou l'examen premier. C'est vrai ? Et ensuite, nous allons juste dupliquer ça. Effectuez des résultats pour un examen 2. Et puis on peut simplement dire que l' examen 1 est en fait égal au scanner point suivant int ici, n'est-ce pas ? Nous allons donc lire dans un entier, puis enregistrer dans la variable de l' examen 1. Et la même chose que nous allons faire pour y aller. Maintenant, ce qui va se passer est vraiment cool. Et nous commençons cela et maintenant il s' attend à ce que nous passons un examen. Malheureusement, 32, en fait, pas 320 mais 32. Eh bien, et les résultats de l'examen deux étaient en fait bien meilleurs. Il y en avait 68, malheureusement, juste un peu, pas assez pour 69 ans. Et ensuite, vous pouvez voir que vous avez échoué à l' examen 1 et à l'examen passé. Maintenant, nous commençons vraiment à entrer dans une partie de cette introduction de Java où vous pouvez vraiment faire quelque chose avec l'ordinateur. Et vous allez vraiment voir cela dans la première tâche aussi pour la prochaine conférence sera une sorte de version alternative de l'énoncé if, ce qui peut également être très important. Et puis la première tâche, je vous recommande vivement de faire les devoirs ici pour l'introduction de Java, surtout lorsque vous n'êtes qu'un débutant car ils peuvent être vraiment, vraiment utiles. Et avec cela, bien sûr, le noyau est disponible dans un référentiel ou tout aussi bien. Mais jetez un coup d'œil à ceux qui se trouvent dans les ressources. Et je recommande vivement jouer un peu avec ça, lire quelques chiffres en les comparant, faire des déclarations, faire tout un tas de trucs sympas comme ça, vous pouvez déjà faire un jeu vraiment cool. Donc, mais pour le moment, ce serait le cas pour cette conférence ici même. J'espère que cela vous a été utile et que vous en apprendrez quelques-unes des nouveautés. Et je vous verrai lors de la prochaine conférence. Donc, oui. 12. Déclaration de commutateur de Java: Ou je reviendrai sur l' introduction de Java ici pour la modélisation Minecraft. Et dans cette très courte conférence, nous allons examiner l'énoncé de switch. L'énoncé de changement est un peu comme le petit cousin de la déclaration if, pour ainsi dire. C'est donc très similaire. Jetons juste un coup d'œil. Nous allons donc créer un entier appelé placement métallique, qui n'est pour le moment qu'un dans. Vous pourriez imaginer que celui-ci représente le placement, par exemple, aux Jeux Olympiques, n'est-ce pas ? On serait donc la médaille d'or, l'argent, le bronze. Donc deux, c'est de l'argent et le bronze est trois. Et puis n'importe quoi d'autre en tant que disques, pas de métal. Et nous pourrions le faire en faisant simplement quelques déclarations si, qui que nous puissions également faire une déclaration de changement. Vous pouvez voir si je tape un commutateur ici, puis à l'intérieur des parenthèses, je mets la variable que je veux que nous évaluions. Ensuite, une fois de plus, faites le crochet bouclé ou le second devrait générer automatiquement. Et maintenant, je dois préciser dans chacun de ces crochets bouclés chacun des cas que cette variable peut prendre. Je peux donc dire le cas 1. Cela signifie donc qu'il a pris la première valeur, la ligne d'impression et, par exemple, la médaille d'or. Et puis je peux dire le cas deux. Et puis je peux dire système de ligne d'impression, argent, métal. Et encore une fois, à la toute fin, je peux dire le cas trois, système. La ligne d'impression de sortie du système. Vous y allez. bronze. Cependant, il est formaté, c'est tout à fait correct. Et puis nous pouvons également dire par défaut, ce qui signifie que cela va être appelé si ce n'est ni l'un ni l'autre, cela obtient plus ce cas. Nous avons donc des cas prédéfinis ici. Et puis, dans le cas par défaut, il va être appelé si c'est autre chose que nous pouvons dire sans métal. Et la première chose que vous remarquerez est d'attendre une seconde. Nous devons définir chaque cas. Oui, ici, le problème est que vous pouvez utiliser quelque chose comme plus grand ou égal, ce qui facilite immédiatement la réduction de quelque chose. Si je voulais faire l'évaluation de l' examen ici, il faudrait que je passe en revue chaque cas. Je dois donc passer en revue les cas d'un 50 ou d'un à 49 pour avoir dit, hé, vous avez échoué, puis les autres pour vous ont réussi ou vous avez réussi. L'instruction switch n'est donc pas toujours le meilleur choix. Cela peut parfois être le cas. Jetons un coup d' œil à cette liste. Il faut bien sûr imprimer la médaille d'or. Mais la première chose que vous allez dire, c'est attendre une seconde. En fait, il a tout imprimé exactement. Parce qu'il y a encore une chose que nous devons faire. Et c'est à ce moment que vous avez l'affaire, la toute fin, il faut finir par une pause ici. Nous devons faire cette pause. Sinon, il sera simplement préservé. Il va juste passer par l'instruction switch va juste continuer et retirer tous les cas. Et si nous avons la pause ici, vous verrez que seule la personne pertinente sera réellement prise. Mettons-en trois juste par souci d'argumentation ici. Comme vous pouvez le constater, cela fonctionne maintenant. C'est donc très important pour que le mot-clé break ici doit être utilisé avec l'instruction switch. Cela peut parfois être un peu gênant. Donc, les commuter généralement pour entiers sont corrects, peuvent être utilisés. Il est généralement utilisé pour les énumérations car énumérations ont des valeurs définies qu'elles peuvent prendre et c' est généralement plus facile pour les cas ce qui est très rare ou qui est fondamentalement impossible. Vous ne devriez pas utiliser de floats dans les instructions de commutateur , car ici, vous devez bien sûr définir la casse exacte. Et en raison de l'arrondi flottant ou des erreurs qui peuvent se produire, cela pourrait ne jamais fonctionner. N'utilisez donc jamais de flotteurs et d'instructions de commutation. En gros, c'est une chose très importante à retenir. Sinon, une instruction switch, même si vous n'allez pas l' utiliser vous-même, pourrait bien sûr apparaître dans le code de quelqu'un d'autre. Vous devrez au moins avoir vu cela avant, n'est-ce pas ? Mais ce serait déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et que les neurones et le nouveau, je vous verrai dans la prochaine conférence. Oh, oui. 13. PROJET 1 : Jeu de Trivia: Très bien, revenez à l'introduction Java pour Minecraft modding ici avec la première affectation. Dans la première mission sera un jeu de création, un simple jeu de trivia. J'expliquerai prochainement ce que cela implique. Bien que l'idée soit que vous devez définir au moins trois questions. Je recommande de poser trois questions, trois réponses, ce qui suffira. Sinon, le code sera très encombré très rapidement. Et ce que je veux que vous fassiez, c'est que vous demandiez à l'utilisateur de saisir sa réponse. Vous pouvez utiliser l' analyseur pour cela pour obtenir essentiellement ce qu'il a saisi , puis évalué avec des instructions if and else pour vérifier si la réponse que l'utilisateur a saisie était correcte ou non . Je recommande donc de reregarder la conférence d'entrée de sortie, c'est très important dans ce cas. Et la conférence de déclaration if else pourrait également être très intéressante à regarder une fois de plus. Donc, s'ils étaient corrects, sortez qu'ils étaient, et s'ils avaient tort, indiquez à l'utilisateur qu'ils étaient incorrects et obtenez également la bonne réponse. Une autre chose que vous devriez faire est essentiellement d'incrémenter un total de points, ce qui signifie que lorsque l'utilisateur a une réponse correcte qui nomme augmentée d'un, alors à la fin, vous avez juste un sortie unique pour chacun des totaux de points différents. Donc en gros trois, en disant, hé, vous avez tout fait correctement à quelque chose comme 0 minutes, accord, une erreur, une et ainsi de suite et ainsi de suite. Donc fondamentalement de 0 à trois, ayant des déclarations si autrement à la toute fin, il y a deux choses à garder à l'esprit. Ce sont donc quelques conseils que vous devrez garder à l'esprit lorsque vous lisez une chaîne de l'utilisateur, veuillez utiliser le point du scanner à côté et non le point du scanner suivant la ligne suivante. Parce que si vous utilisez la ligne suivante du scanner point, cela gâche parfois la façon dont cela est lu. Mais je recommande vivement de le faire. Et puis, lorsque vous lisez une réponse à partir de ceci, nous avons une chaîne et vous voulez la comparer à une chaîne. N'utilisez pas égal, égal, mais utilisez le point d'entrée égal, puis placez la réponse, la bonne réponse à l'intérieur des parenthèses ici. Cela renverra également une valeur booléenne, ce qui facilitera un peu cela. Sinon, parce qu'il y a parfois ne fonctionne pas et cela fonctionnera certainement. Donc, gardez cela à l'esprit. Et c'est à peu près le devoir ici. Ceci est également écrit sous forme de texte ici. Et je soupçonne que pour un débutant, c'est environ 45 à 60 minutes. Je vous recommande vivement de prendre votre temps avec ça. Je reviendrai probablement aux anciennes conférences, en regardant la conférence d'entrée de sortie, conférence if et else. Et avec cela, vous devriez presque être complètement terminé. En gros, c'est à peu près ce dont vous avez besoin. Et une fois que vous aurez terminé, vous aurez accès à la solution, bien sûr, et je parcourrai également la solution dans une autre vidéo. Ce serait donc ça. Non, bonne chance. 14. SOLUTION 1 : Jeu de Trivia: Très bien, donc vous avez réussi la première mission et voici la solution à pas. Donc, vous avez probablement déjà vu à quoi ça ressemble à une heure. Bien sûr, les questions ici dans ce cas sont en fait faites sous forme de chaînes. Bien sûr, cela a beaucoup de sens, n'est-ce pas ? Sinon, vous pouvez vraiment enregistrer les questions de n'importe quelle façon. Et la seule réponse est en fait dans un entier, cela fonctionne. Cependant, je vois également l'intérêt de faire cette chaîne une chaîne normale. Les réponses seraient correctes. Donc, pas de soucis. Là. Nous avons un nombre entier , puis un scanner, puis nous commençons, nous sortons la première question. Nous disons ensuite l' entrée utilisateur numéro 1. On va juste mettre ça ici. Nous allons voir si c'est égal à la première réponse. Si c'est le cas, nous allons incrémenter les points, indiquer que c'était correct et vous avez autant de points. Sinon, nous allons dire incorrecte et donner la bonne réponse. Après cela, nous faisons à peu près la même chose. Je vais poser la deuxième question, obtenir à nouveau l'entrée de l'utilisateur et l'égaler ou dire : Hé, est-ce égal à la réponse ici, incrémentant les points si c'est correct, en sortant et ensuite dire non, c'est incorrect, c'est en fait la bonne réponse. Et la troisième fois encore. Et puis, à la toute fin , vous pouvez voir qu' il passe par une sorte de cascade ici. Donc, les points passent par trois à 0. Ensuite, j'ai aussi une sorte d'œuf de Pâques ici. Lorsque vous avez moins de 0 point que vous obtenez, comment obtenir des points négatifs ? Parce qu'il n'y a aucun moyen de les obtenir. Vous pourriez bien sûr aussi quelque chose où vous obtiendrez points négatifs si vous faites une réponse particulièrement stupide ou quelque chose comme ça, cela fonctionnerait également. Mais je n'ai rien mis en œuvre ici. Ce n'était qu'un exemple. C'est donc comme ça que cela pourrait fonctionner. C'est donc un exemple. Encore une fois, si le programme fonctionne bien ? Donc, si cela fonctionne pour vous et que vous pouvez jouer à ce jeu et que cela fonctionne, mais cela ressemble différemment à cela. C'est tout à fait très bien. Comme « Pas de soucis du tout ». Voilà donc la beauté ici. Il y a plusieurs façons de le faire, et nous verrons cela dans les affectations à venir et nous allons toujours utiliser ce jeu trivia également, une sorte de modèle. Et nous allons redessiner ces prochaines missions d'une manière différente. Et c'est, j'espère que vous serez en mesure de voir que cela devient plus facile et différent, disons dans les futures conférences et les futures missions. Mais ce sera tout pour cette solution ici. J'espère que cette mission vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 15. (Java) String et méthodes de cordes et de cordages: Ou je reviendrai sur l' introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons examiner les chaînes et certaines méthodes de chaîne. Eh bien, tout autour de la corde pour ainsi dire. Et nous allons commencer par créer une nouvelle variable de chaîne appelée phrase. Et cela va être égal à, c'est une merveilleuse introduction à Dava. Espérons que c'est également vrai. Mais quel que soit le cas, c'est la valeur de notre variable de chaîne ici. Et nous allons juste imprimer ça. Donc, phrase juste ici, phrase du système. Et maintenant, la question est : que pouvons-nous faire d'autre ici ? La première chose que nous allons faire, c'est qu'on va vraiment le dupliquer. Allons aligner. Et ce que nous allons dire c'est fait par Control D au fait. Et ce que nous allons faire, c'est que nous allons dire que la longueur, c'est que nous allons dire quelque chose comme plus. Et puis on peut dire la longueur du point de phrase. Comme vous pouvez le voir, je peux appeler la longueur du point avec les parenthèses ici, ce qui signifie qu'il s'agit d'un appel de méthode. Nous ne sommes pas encore sûrs à 100 % de ce que c'est, mais nous l'avons déjà vu plusieurs fois, et cela ne fait que nous rendre la longueur. Et si jamais je survole cela, vous pouvez voir dans un entier renvoie la longueur de la chaîne, longueur est égale au nombre de caractères de cette chaîne. Il s'agit donc essentiellement d'unités Unicode. Ne nous inquiétons pas à ce sujet. Il est essentiellement égal aux caractères de cette chaîne. Voyons voir. La longueur est de 35. C'est donc intéressant ici. Et puis, bien sûr, nous sortons également la chaîne réelle. Mais que pouvons-nous faire d'autre ? Nous devons pouvoir faire des choses intéressantes. Bien sûr, nous le pouvons. Nous allons en fait obtenir cette sortie ici. Nous allons juste le dupliquer trois fois par rien. Et la première chose, c'est de crier, eh bien, ça va signifier que tout ici, je vais me transformer en majuscules. Comment pouvons-nous faire cela ? Eh bien, on peut faire phrases Dat en majuscules ici. Cela a déjà suggéré. Et puis, bien sûr, la même chose serait tout simplement chuchoter, n'est-ce pas ? Et ensuite, nous allons faire la phrase en minuscules ici. Donc, cela va tout simplement passer majuscules et en minuscules alternatifs. Et ensuite, juste par souci d'argumentation, sortons la phrase une fois de plus. Oh, ajoutons aussi un commentaire, c'est vrai, donc c'est en majuscules et en minuscules. C'est assez simple. Nous pouvons simplement transformer la chaîne entière en majuscules, une chaîne entière en minuscules. Et puis voici ce que nous devrions obtenir aussi la chaîne minuscule, non ? Donc, si nous sortons ça, vous pouvez tout crier en grosses lettres, donc tout en majuscules, puis tout en minuscules. Et puis le voilà, c'est la chaîne normale. C'est étrange, n'est-ce pas ? Eh bien, voici la partie très intéressante à ce sujet. Ces méthodes renvoient en fait une copie de cette variable de phrase. Ils ne modifient pas la variable en eux-mêmes. Donc, lorsque nous avions des choses comme x égal à x plus 1, nous avons en fait changé les rayons X, EEG plus égal à un. Cela a changé la variable x. Dans ce cas, nous en retournons une copie. C'est donc très important et il faut vraiment garder cela à l'esprit. Mais pour la prochaine chose, disons, je vous dis, Hey, quelle est la position que Java a trouvé le mot Java. Tu vas être comme, je ne sais pas, c'est exactement comme ça. Ce que nous allons faire, c'est qu'on va encore copier sur la ligne d'impression. Et nous allons dire ce qui suit. Nous allons dire que le mot Java ou quelque chose comme celui-ci se trouve en position. Maintenant, nous pourrions compter, nous n'allons pas encore appeler. Nous allons compter dans un instant. Nous allons dire index de points de phrase de la peut voir qu'il y a quelques types d'index différents ici, mais nous voulons la chaîne 1. Peu importe en fait, celui que vous choisissez, vous pouvez voir que dès que le curseur est à l'intérieur des parenthèses, il va en fait suggérer ceux que vous voulez faire. Nous allons prendre essentiellement, et je vais dire Java ici. Alors, Java, voyons juste quand est-ce que c'est ? Comme où cela se produit-il ? 17, d'accord, comptons juste. Je vais donc commencer par ici. Mon curseur sera donc toujours sur le côté gauche du personnage sur lequel je compte, 123456789, 10, 11, 12, 13, 14, 15, 16, 17, 18. Et tout le monde va être comme Attendez une seconde. Mais cela disait 70, n'est-ce pas ? Oui. Il a dit 17. Maintenant, pourquoi est-ce que c'est 18 ans ? Haha, je vois que c'est une chose très intéressante car en Java ou dans la plupart des langages de programmation, nous comptons en fait à partir de 0. Maintenant, cela pourrait être absolument fou pour vous, surtout si vous étiez vraiment débutant. C'est tout à fait très bien. Ne vous inquiétez pas à ce sujet. Le problème, c'est que vous vous y habituez très rapidement. Et il y a quelques autres endroits où nous devons utiliser cela. Mais si nous commençons à compter à 0, vous pouvez voir les 0123456789, 10, 11, 12, 13, 14, 15, 16, 17. Tout d'un coup, le j est exactement le 17e caractère, ou plutôt c'est le personnage avec l'index 17, n'est-ce pas ? Donc parce qu'il s'agit bien sûr de l'index, l'index de ce mot, l'index de ce mot. Et nous sommes essentiellement à la recherche du premier personnage ici. C'est très intéressant. En effet, lorsque nous pensons vraiment à cette fin, et bien si, en fait, nous ne le sommes pas, ce n'est pas correct. où nous ajoutons, c'est que nous voulons remplacer quelque chose. Donc, système de ligne d'impression et nous voulons dire une phrase qui remplace, et nous voulons remplacer Java par, disons C Sharp. Mais pourquoi pas ? C'est vrai ? Vous pouvez donc voir la cible que nous voulons remplacer en Java, et ce que nous allons la remplacer est en C pointu. Donc, si je devais courir ça maintenant. Nous verrions que c'est une merveilleuse introduction en C car ce n'est pas correct, ce n'est pas correct. Mais dans cet exemple, bien sûr, c'est tout à fait très bien. C'est donc la méthode de remplacement et c'est également très intéressant. Encore une fois, il n'est pas remplacé dans la phrase. Il a renvoyé une nouvelle chaîne, une copie de celle-ci qui remplace fondamentalement celle-ci. Très important, non ? Peut-être voudrions-nous voir si une phrase commence ou non par quelque chose. C'est très facile en fait, nous allons juste dupliquer le remplacement de votre commande par Control D. Et ce que nous pouvons dire, ça commence, vous pouvez voir, et je pourrais juste dire, hé, je écrivez et ce serait vrai dans ce cas. Et puis nous pouvons aussi, pouvez-vous deviner ce que l'autre est, bien sûr, se termine, ce qui serait, disons un A majuscule, qui est bien sûr faux dans ce cas, ce serait c'est vrai, cela devrait être faux. Voyons donc simplement par souci d'argumentation. Et là, vous pouvez voir vrai et faux. Très facile à faire. Et maintenant, que se passe-t-il si nous avons une ficelle, non ? Et nous allons juste appeler ce S pour le moment, et ce sera juste une chaîne vide, non ? Donc, une ficelle qui n'a rien dedans. Comment pouvons-nous vérifier que c'est vide ? Eh bien, nous pouvons vider un booléen. Par exemple, nous disons simplement que S est vide. Et voilà. C'est à peu près tout ce dont nous avons besoin. Et si nous devions sortir le système, imprimer une ligne qui est vide, nous pourrions bien sûr aussi mettre S dot est vide à l'intérieur de votre cul. Pourquoi s'embêter ? C'est tout à fait très bien. Et ils vont, c'est là où est-ce vrai ? C'est vrai, bien sûr, c'est vrai. Désolé. Vous y êtes, n'est-ce pas ? Bien sûr, c'est vrai parce que c'est vide. Et il y a une autre chose qui est vraiment intéressante lorsqu'il s'agit de méthodes booléennes pour les chaînes. Et c'est le contenant, un. C'est très intéressant. Donc la phrase de ligne d'impression système qui contient, disons Java. Et c'est bien sûr vrai, n'est-ce pas ? Parce que cela contient Java, nous devrions également voir r2 année. Superbe. Qu'en est-il de l'inverse ? Quand on pense aux frais généraux de l'indice ? Qu'en est-il d'un personnage à une certaine position ? Absolument aucun problème. Ligne d'impression, phrase, caractère à quelle position ? Disons 17. Nous savons donc que ce sera un. Ils savent donc que ce sera un j. Cela va être très important et qu'il y a un J. assez facile. Encore une fois, nous commençons à compter à 0. Par conséquent, bien qu' il s'agisse du 18e caractère, c'est le personnage avec l'index 70, très important. C'est peut-être difficile, mais après un peu de temps, je suis sûr que vous vous y habituerez. Et faisons simplement une autre chose. Et ça va être la sous-chaîne. Sous-chaîne intéressante. Qu'est-ce que c'est ? Eh bien, faisons la ligne d'impression système, et disons simplement une sous-chaîne de points de phrase. Et par où commencerons-nous ? Commençons par l'indice 17. Mais ce qui va se passer maintenant, c'est qu'il va tout prendre à partir de 17 ans et il va tout rendre par la suite. Donc maintenant, la sous-chaîne 17 ans devrait dire introduction Java, point d'exclamation. Et bien sûr, c'est aussi le cas. C'est très joli. Donc, si nous prenons une autre phrase que vous pouvez voir qu'il y a bien sûr un tas de méthodes que vous ne pourriez pas appeler, ce n'est pas une liste exhaustive que j'ai montrée. Je viens d'en montrer quelques-uns qui pourraient être intéressants ici. Je recommande toujours d' essayer un peu. Vous essayez un tas de choses. Ce qui est génial ici, c'est qu' il suffit de taper un tas de choses, de cliquer sur le bouton Exécuter et de voir ce qui se passe. Et si quelque chose arrive, c'est cool, encore mieux. Et si ce n'est pas le cas, s' il y a une flèche, mais la traverse et voyez si vous ne pouvez pas la réparer. Mais ce serait à peu près tout ça pour les cordes. Et ces cordes méthode cours. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau si vous le faisiez, j'apprécierais beaucoup un commentaire de votre part. Sinon, je vous verrai lors de la prochaine conférence. Donc, oui. 16. Casting de Java: Ou je me réjouis de revenir à l'introduction de Java ici pour la modélisation micro-ondes. Et dans cette conférence, nous allons regarder le casting. Vous pouvez également considérer cela comme une conversion de types de données les uns entre les autres. Qu'est-ce que cela signifie vraiment ? Eh bien, jetons un coup d'œil. Par exemple, nous voulons obtenir un prêt entier, soit 750 euros, quel que soit le cas. Ensuite, nous avons un taux d'intérêt, qui est bien sûr flottant, n'est-ce pas ? Et cela va être de 0,0525, disons. Cela équivaut donc à taux d'intérêt de 5,25 % à ce stade, si tout cela aurait du sens. Nous voulons donc maintenant calculer les intérêts. Maintenant, l'intérêt, nous devrions calculer cela comme un flotteur pour le moment. Et je vais vous montrer pourquoi dans une seconde. L'intérêt est donc égal au taux de prêt multiplié par le taux d'intérêt. Cela devrait également être logique. Vous pouvez voir que même si je prends un entier fois un float, tout fonctionne parce que nous sauvegardons cela dans un float. Intéressant. Ok, faisons le système, imprimons la ligne et imprimons simplement les intérêts, la mer. Et ça devrait être quelque chose comme 39, c'est bon. Bien sûr, si vous le sentez ici aussi, c'est tout à fait très bien. Maintenant, la question est de savoir comment faire comme multiplier un entier et un float et en extraire un float. C'est assez fou, n'est-ce pas ? Eh bien, ce qui se passe, c'est que cet entier en arrière-plan est converti en float. Nous pouvons rendre cela explicite en tapant le mode entre parenthèses devant la variable réelle. Et ensuite, nous avons explicitement cela. Il s'agit donc d'un casting explicite avant qu'il ne s'agisse d'un casting implicite. Le problème, c'est que nous passons ici d'un entier à un float. Que se passe-t-il si nous établissons les intérêts réels en entier ? Tout d'abord, ce qui va se passer c' est que cela va montrer une erreur car dès que nous aurons un flotteur dans une expression mathématique ici, tout va se transformer en flotteur. parce que les flux ont plus d' informations, n'est-ce pas ? Parce que tout après la virgule est plus d'information, tout est donc converti en charge. Maintenant, passons explicitement cela en entier. Maintenant, disons Mori, le fond ici étant jaune signifie qu'il s'agit d'un, est essentiellement un avertissement. Nous n'allons pas nous inquiéter à ce sujet parce que je veux vraiment vous montrer quel est l' avertissement, nous avertir parce que tout d'un coup c'est un gros 0 et vous allez me dire, Attendez, comment se sont-ils transformés en 0 ? Eh bien, lorsque nous jetons un float sur un entier, ce qui va se passer, c' est que tout ce qui après la virgule est simplement coupé. Donc, en gros, c'est comme ça. Donc, tout d'un coup, le taux d'intérêt sera égal à 0 lorsque nous le transmettons en entier, ce qui signifie que vous allez simplement dire que le temps de prêt 0 est bien sûr 0. Et vous pouvez voir que c'est aussi ce que dit l'avertissement ici. C'est pourquoi nous voulons revenir au flotteur juste ici. Ils y vont donc. Et puis, au lieu de faire de cela un entier, nous allons simplement maintenir cela au taux d'intérêt et à la normale. Et tout va bien se passer. C'est en quelque sorte l'idée lorsque vous passez d'un nombre entier à un float. Donc, de moins d' informations à plus d'informations, c'est généralement très bien. Passez des flux à un entier. Donc, pour plus d'informations à moins d'informations, cela peut avoir des conséquences, disons simplement. C'est donc toujours ce que vous devez garder à l'esprit. Et c'est aussi une chose. Donc, fondamentalement, cette idée d'écrire un autre type de données devant une variable pour transformer en un autre type de données est quelque chose que nous verrons un peu plus tard dans une conférence ultérieure. C'est donc quelque chose à garder à l'esprit. Eh bien, mais ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 17. (Java) Opérateur de terrain de Java): Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons examiner l'opérateur ternaire. À première vue, l'opérateur ternaire sonne comme quelque chose de complètement fou, vraiment compliqué, mais en fait, ce n'est pas le cas. Nous allons donc créer deux entiers. L'un d'eux va être l'examen. Ce sera simplement le résultat de l'examen à titre d'exemple ici. Et puis un entier appelé cadeau. Mais c'est, disons que notre Père veut nous offrir un don de X montant. Nous allons toutefois préciser que lorsque nous réussirons cet examen, nous réussirons cet examen, comment nous pourrions le faire comme suit. Nous pouvons dire si l'examen est supérieur ou égal à 50. Donc, fondamentalement, nous réussissons l'examen, puis nous allons dire que le cadeau est égal à 10 et ensuite le cadeau est égal à 0. Maintenant, nous n'aurions pas nécessairement besoin d'autre chose ici, mais je vais juste ajouter cela là-dedans. Et ensuite, nous allons simplement mettre en réseau la ligne d'impression. Si c'est le cas, ne vous inquiétez pas. Tout cela devrait être logique. Mais maintenant, ce que nous pouvons faire, c'est que nous pouvons écrire toute l' année en une seule ligne. Et ce que nous pouvons faire, c'est que nous pouvons dire que le cadeau est égal à. Ensuite, la première chose que nous devons faire est d'écrire une expression booléenne. Par exemple, l'examen est plus grand ou égal à 50. Ensuite, nous allons écrire un point d'interrogation. Et puis ce que nous voulons renvoyer si l'expression booléenne est vraie ici. Donc 10, puis deux points, puis tout ce que nous voulions retourner si l'expression booléenne est fausse, donc c'était 0. Et c'est l' opérateur ternaire, point d'interrogation deux-points. Et c'est à peu près la même chose que ça. Donc, ce que nous pouvons faire, c'est que nous pouvons simplement copier cela. Commentons les deux afin que, indépendamment de ce qui se passe ici, cela ne soit pas affecté. Nous allons d'abord avoir une sortie 0, puis un 10. Voyons voir. Vous y allez. Donc, le 0 est bien sûr ce 0 ici que nous avons assigné ici. Et puis le 10 ici est l'opérateur ternaire. Donc, c'est plutôt cool. Maintenant, l' opérateur ternaire est généralement utilisé. Je ne recommanderais pas de l'utiliser trop fondamentalement, mais parfois avec des choses assez simples comme celle-ci. Vous pourriez aussi penser prendre cette expression booléenne, en faire un booléen en disant comme un examen demandé. Et puis cela est un peu plus agréable juste après l'examen, que c'est 10, sinon c'est 0. Vous pouvez donc y penser aussi. Donc je ne le garderais probablement pas comme ça parce que c'est quelque chose comme ça pour ne pas redoubler le taux. Il y a trop de puissance cérébrale qui permet de considérer l'examen égal, un peu plus grand est égal à 50. D'accord ? D'accord. Oh, je comprends. Si vous avez quelque chose comme un is, réussit l'examen ou quelque chose comme ça en booléen, ce qui a du sens dans ce cas. Mais quel que soit le cas, il s'agit de l'opérateur ternaire et fondamentalement la même chose dans les déclarations if. Maintenant, ce n' est pas parce que tout cela est en une seule ligne que c'est nécessairement mieux. Le nombre de lignes n'est aucune indication de code qualité, d'accord ? Et je veux que vous le fassiez, je veux que cela soit très, très clair. Ça n'a pas d'importance. Un excellent programme peut être de 1000 lignes. S'il doit être long de 1000 pieds, il doit être long de 1000 nuits. Ce n'est pas parce que vous pouvez créer ce programme 800 lignes que cela ne signifie pas nécessairement que c'est mieux. C'est très important. Parce que le plus important lorsque écrivez du code, c'est que vous puissiez le lire et que quelqu'un d'autre puisse le lire, ce qui comprend vous dans six mois. Parce que vous êtes dans six mois, ça va être différent car vous aurez oublié tout ce que vous avez écrit dans votre code. Par conséquent, vous devez rendre votre code lisible ou d'autres personnes, c'est le point le plus important. Et si un opérateur ternaire sens dans ce cas, c'est génial. Je ne le ferais jamais, je vous conseillerais certainement de ne jamais mettre plusieurs opérateurs de terminaux sur la même ligne. Parce que, bien sûr, vous pouvez mettre un autre opérateur ternaire sur le vrai ou le faux ici. Ne faites certainement pas cela parce que ça devient très, très compliqué, très rapide. Restez aux instructions if. Dans ce cas, quel que soit le cas, ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 18. (Java) Expliquez les tableaux expliqués de Java): Bon, bienvenue dans l'introduction de Java ici pour la modélisation micro-ondes. Et dans cette conférence, nous allons regarder des tableaux. Les tableaux sont définitivement le sujet le plus compliqué que nous allons examiner jusqu'ici. Cependant, ce que je veux d'abord vous dire, c'est que si vous avez du mal avec cela, ne vous inquiétez pas du tout. C'est tout à fait normal. J'ai également eu du mal avec cela lorsque nous avons appris cela. Et à la fin de la conférence, je vais raconter un peu une histoire à ce sujet. Mais pour le moment, rappelons-nous que nous avions les trois cordes, n'est-ce pas ? Nous sommes à la question 1, à la question 2, question 3, et nous répondons à une réponse à trois. Bien entendu, la première réponse était en fait un entier, mais dans ce cas, c'est une chaîne. C'est très bien parce que c'est des fins de démonstration. C'est un peu plus facile à montrer. Et ce que nous avions ici , c'est l'idée que nous avions ces questions. Disons simplement, je vous le dis, vous savez quoi, votre jeu trivia qui était dans la première mission, vous devriez en fait faire en sorte que cela ait 150 questions. Maintenant, vous allez être assis là pour être comme, excusez-moi. Oui. Une question de 150. Eh bien, d'accord. Ensuite, vous commencez à dupliquer cela, puis à changer chacun d'entre eux. Maintenant, alors peut-être, vous savez, je sais une chose que vous pouvez garder tout pressé et changer plusieurs choses en même temps, mais ensuite elles changent toutes au même numéro et c'est tout simplement foiré. Ce n'est pas très bon. Cela ne fonctionne donc pas tout à fait. D'accord. Comment pourrions-nous le faire autrement ? Eh bien, ce que nous pouvons utiliser, c'est un tableau. Maintenant, un tableau, vous pouvez considérer cela comme une liste. Ce n'est pas une liste à 100 %, n'est-ce pas ? C'est un peu différent car il existe également quelque chose appelé une liste en Java. Cependant, nous allons le considérer comme une liste. Et vous alliez créer une série de questions et c'est une zone de réponses. Et nous allons juste jeter un coup d'œil à ce que cela implique essentiellement. Alors, comment créer un tableau ? Eh bien, nous n'avons qu'à taper le type que nous voulons. Donc, le type de données que nous voulons, puis ces crochets ici, et ce sera des questions et c'est égal à nouveau. Nous devons donc prendre le nouveau mot clé et vous pouvez voir que cela nous est déjà proposé. Je vais taper cette chaîne puis une fois de plus, l'angle des crochets ici, puis se terminer par un point-virgule. Maintenant, ce n'est pas encore fait car à l'intérieur de ces crochets, nous devons en fait fournir la longueur de ce tableau. Combien y a-t-il d'éléments là-dedans ? Trois, dans notre cas ? Eh bien, c'est à peu près tout. C'est plutôt cool. Maintenant. C'est ça. C'est comme si oui, c'est à peu près tout. Et maintenant, bien sûr, nous devons attribuer quelque chose. Ce que nous pouvons dire, c'est des questions. Vous pouvez voir que je le complète automatiquement avec la touche Tab, n'est-ce pas ? Encore une fois les crochets, puis attribuez, par exemple, un est égal à deux. Et puis prenons ça ici, non ? Donc, quelque chose comme ça. Et puis, je peux continuer avec ça, n'est-ce pas ? 23. Et puis, eh bien, comment puis-je faire ça correctement ? Comment, comment est-ce possible ? Eh bien, le système informatique sort de la ligne d'impression, et ensuite nous pouvons simplement dire des questions, pas de questions, voilà. Et ensuite, par exemple, trois ans savoir à ma moyenne sont tous les mêmes, non ? Maintenant, changeons ça, copions ça. Sélectionnez donc ce contrôle C control V, comme ce Control C Control V. Et sortons les trois ici. C'est juste que C et O savent ce qui s'est passé ici ? Ce qui s'est passé ici, c'est que nous avons peut-être oublié. Maintenant, je n'ai pas oublié, je voulais vraiment vous montrer ceci. Mais ce qui s'est passé ici, c'est que nous devons commencer à compter à 0. C'est donc là que nous revenons quand nous avons vu les chaînes où nous commençons à compter à 0 an, nous avons également compté 0. Mais cela signifie que lorsque nous avons trois éléments dans ce tableau de questions, le premier est de l'index 0, le second est celui de l'index un et le troisième est de l'index 2, qui signifie que trois n'existe pas ici, et nous obtenons une exception. Nous allons voir cela à la fin de la conférence, car je veux que vous aimiez voir l'exception et je veux que vous compreniez ce que cela signifie. Mais pour le moment, c'est ainsi que vous attribuez différentes chaînes, dans ce cas différentes valeurs au tableau. Et vous pouvez également le lire à peu près comme ça. C'est donc en fait ce qu'il faut. Et il suffit aussi de copier cela par souci d' argumentation et d'appeler cela les réponses, n'est-ce pas ? Ensuite, nous allons copier la houle. Je vais donc sélectionner ce RP ici, ici et ici. Et ensuite, nous allons simplement changer cela pour les réponses ici. Cela va donc être 50. Ce sera bien sûr Londres. Et puis le dernier sera très intéressant. Ensuite, ce que nous pouvons faire, c'est, par exemple, que nous pouvons produire la réponse 0. Nous allons donc voir les réponses 1 dans les questions 1. Et puis tout d'un coup, on dit quelque chose comme, quelle est la capitale du Royaume-Uni ? Londres ? Très facile. Et en fait, modifions cela pour que nous n'ayons pas besoin de changer cela par 0. C'est tout à fait très bien. Tout ce que nous pouvons faire, c'est maintenant, d'accord, alors pouvons-nous simplement réattribuer ça ? Pour qu'on puisse prendre ça, je vais juste prendre ça. En fait, je vais l'écrire vers l'extérieur. Donc, les questions, encore une fois, tranche 0 est égale, par exemple, quel âge a Ian ? Mick Jagger, en 2021. C'est juste, sortons avec nous-mêmes. Pourquoi pas ? C'est tout à fait très bien. Et puis on vient de sortir ça à nouveau. Maintenant, le 0, disons, et le 0 ici. La question. Nous avons réaffecté ici, et la réponse sera toujours correcte. Au fait, c'est quelque chose que j'ai vérifié. Au fait, car je voulais que cela soit correct. C'est plutôt cool. Toutes les choses sont prises en compte. vraiment cool, c'est que tout est en quelque sorte dans un seul type de données, n'est-ce pas ? Par conséquent, les questions ont maintenant toutes les questions. Au lieu d'avoir trois chaînes différentes, nous avons en fait tout dans ce tableau de chaînes de questions. C'est plutôt cool. Nous pouvons également obtenir la taille de la longueur de ce tableau, de cette liste, pour ainsi dire, en posant des questions de cette longueur, comme vous pouvez le voir ici, nous pouvons simplement jeter un coup d'œil à cela. C'est bien sûr 3 parce que c'est ce que nous avons fourni ici, n'est-ce pas ? C'est pourquoi nous avons dû fournir la longueur. Par conséquent, c'est à peu près tout ça. Et vous avez peut-être également vu beaucoup de suggestions ici. Nous n'allons nous inquiéter d' aucun de ces facteurs à l'heure actuelle parce que tout cela est très, très compliqué. Et nous avons aussi, c'est que je vais en fait copier le plus petit peu ici. Mais il s'agit de l'exception d'index de tableau hors limites ici. C'est à peu près ce que nous avons déjà vu, mais je vais le montrer encore une fois. Donc, si nous mettons un numéro dans le support, il n'existe pas en fait. Nous allons obtenir une exception d'index de tableau hors limites. Vous pouvez donc y penser comme ça. Eh bien, c'est un tableau et il y a une certaine limite, d'accord, assez juste. Comme un index. Donc, l'indice que nous passons, c'est le taux d'indice trois. Je veux que la question avec l'index trois soit assez juste. Mais c'est hors limites car il a que trois éléments et nous commençons à compter à 0. Par conséquent, l'index ou l'élément avec l'index trois n'existe pas. Et encore une fois, vous obtenez la très belle trace de pile ici afin obtenir l'emplacement exact où le problème s'est produit. C'est donc également quelque chose que je voulais mentionner ici. Sinon, ce serait à peu près l'essentiel des tableaux. Et maintenant, bien sûr, le genre de chose que je vous ai dit au début. Quand j'ai appris des domaines universitaires, est intéressant, c'est que je ne les comprenais pas complètement. J'ai dit : Vous savez quoi, je n'ai pas besoin de zones. Je n'utiliserai jamais les zones . Ça n'a pas d'importance. Je vais juste m'en tenir à ça. Je vais créer des variables individuelles. Mais bien sûr, vous allez rencontrer des problèmes très difficiles dès que quelqu'un dira, alors en faites 20 différents et ensuite, faites 20 différents et comme si je les sortais, mettez-les dans un ordre aléatoire, cela ne fonctionnera pas parce que ces choses doivent absolument être apprises. Ce n'est pas non plus la bonne approche dans l' ensemble. Oh, je ne comprends pas ça. Par conséquent, je n' ai pas besoin de l'apprendre. Par conséquent, ce n'est pas important, aucun. Et bien sûr, s'il existe, il y a un certain mérite en ce sens dans la programmation ici. Je recommande donc vivement de jeter un autre coup d'œil là-dessus. Rester calme, essayer quelques choses pour comprendre cela. Et encore une fois, si vous obtenez des erreurs, ne vous inquiétez pas du tout. Les erreurs sont tout à fait normales lors de la programmation. n'y a rien de tel qu'il n'y ait pas de honte , ce n'est pas tout à fait normal vraiment chaque programmeur, il reçoit plusieurs flèches chaque jour quand ils programment . Même les programmeurs vétérans reçoivent toujours des flèches tous les jours. Ne vous sentez jamais mal à ce sujet. Et oui, c'est en quelque sorte l' idée générale des tableaux ici. J'espère que j'ai pu comprendre que c' est vraiment comme une liste, n'est-ce pas ? Ce n'est pas une ellipse à 100 %, mais vous pouvez la considérer comme une liste. Vous mettez différents éléments dans, essentiellement avec des indices ou des index différents, quelque chose comme ça, n'est-ce pas ? Mais sinon, ce serait le pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose nouveau et je vous verrai lors de la prochaine conférence. Donc, oui. 19. (Java) Pour la boucles de boucles de boucle et: Bon, bienvenue dans l'introduction de Java ici pour la modélisation micro-ondes. Et dans cette conférence, nous allons parler de boucles. Ce dont nous aurons besoin pour cette conférence, ce sont les deux tableaux de chaînes que nous avons créés précédemment pour les questions et les réponses. Mais avant de faire quoi que ce soit avec les régions, je veux tout d' abord que vous fassiez ce qui suit. Sortie. Tous les chiffres de 0 à 99, n'est-ce pas ? Vous allez être comme, Ok, système out, imprimer la ligne 0, alors vous pourriez être comme un double, dupliquer deux. Maintenant, vous allez rester assis là tout le temps comme ça. Soyons honnêtes, ça va prendre beaucoup de temps. Eh bien, puis venez des boucles. Les boucles sont quelque chose où vous pouvez exécuter plusieurs fois un morceau de code. Et le premier type de boucle que nous allons examiner est la boucle for. Pour cela, nous allons taper quatre, puis des parenthèses. Encore une fois, les parenthèses fermantes doivent être générées automatiquement. Et puis nous allons taper int I égal à 0 point-virgule I est plus petit qu'un point-virgule de 100 point-virgule I plus, plus les parenthèses fermantes, puis un crochet ouvert. Ensuite, le crochet bouclé fermant devrait être généré une fois que vous appuyez sur Entrée, lorsque vous retirez la ligne d'impression du système et la placez à l'intérieur des crochets bouclés ici. Et je vais changer le 0 en un œil et maintenant voir les merveilles de la programmation. Comme vous pouvez le voir clairement, tout est sorti de 0 jusqu'à 99. Que se passe-t-il ici ? Eh bien, dans une boucle for-loop, l'idée est que ce que nous faisons , c'est que nous définissons, comme vous pouvez le voir , nous initialisons un entier i e à 0. Ensuite, nous disons que nous avons une sorte d'expression booléenne ici, puis un incrément. Ce qui se passe, c'est que je suis réglé sur 0, alors que l'on vérifie si je suis inférieur ou non à 100. Si c'est vrai, nous continuons avec cette boucle. Donc, si c'est vrai, tout se passe à l'intérieur de vous, alors nous allons augmenter moi et ensuite cela sera vérifié à nouveau. Et puis nous refaisons cela, en augmentant moi, vérifiez en augmentant i et ainsi de suite et ainsi de suite. Cela se fait donc pour toujours jusqu'à cette année. Cette expression booléenne est fausse. Et une fois que c'est faux, ce qui signifie que je n'est plus plus petit qu'un 100, qui arrive une fois que j'ai un 100, alors cela n'est plus exécuté et tout après, après le crochet bouclé ici commence à se produire. C'est pourquoi il s'arrête à 99 et non à 100, car quand j'ai 99 ans, c'est toujours vrai. 99 est inférieur à 100. Tout le monde est d'accord, oui. Mais dès qu'il s'agit d'un 100100 n' est pas inférieur à 100. En fait, il est égal à 100. Par conséquent, cela n'est plus fondamentalement vrai. Par conséquent, cela n'est plus exécuté pour blindés. C'est en quelque sorte l'idée et c'est vraiment cool, n'est-ce pas ? Comme si nous pouvons le faire très facilement ? Et maintenant, je vais absolument vous faire sauter l'esprit. Donc maintenant, je vais vous dire, eh bien, envoyer toutes les questions et réponses et vous allez simplement occuper le système. Imprimer la question 0, réponse 0, comme nous l'avions fait auparavant. Eh bien, ça va être plus facile car int I est égal à 0. Je suis plus petit que les questions longueur de point I plus, plus. Et ce que je vais faire, c'est que je vais copier celle-ci deux fois. Et puis, au lieu de cela, je vais appeler des questions, oh, c'est intéressant, n'est-ce pas ? Et je réponds. Maintenant, c'est plutôt cool. Vous pouvez donc passer l'entier ici entre crochets et accéder à l' index que vous voulez et quel que soit l'index que cet entier prend. Une autre chose vraiment folle, c'est parce que nous regardons la longueur ici, non ? Parce que nous avons la longueur, cela nous évite immédiatement de toute erreur. Maintenant, la seule erreur qui pourrait se produire est si nous faisons tout à coup ces quatre ici, n'est-ce pas ? Parce que nous prenons la longueur des questions alors que les réponses ne sont pas les mêmes. Nous pourrions donc rencontrer une erreur. Encore une fois, l'exception de zone hors limites ou l'exception de l'index de tableau hors limites. Mais pour le moment, quand on utilise le plus long, ça va tout à fait aller. Et si je viens de lancer ça, vous pouvez voir qu'il imprime tout. Harmony se trouve dans la capitale américaine AIR 50 du Royaume-Uni, Londres. Et puis le symbole chimique du fer est phi. Pour que tout fonctionne. Donc c'est joli, c'est plutôt fou, non ? C'est plutôt cool. Ou des boucles incroyablement précieuses et peuvent être utilisées pour toutes sortes de choses. Il existe un autre type de boucle très similaire à la boucle for-loop, qui est la boucle pour chaque boucle. Maintenant, vous pouvez voir si je peux vraiment taper ça et je pourrais appuyer sur la touche Tab pour le compléter automatiquement. Cependant, je ne le ferai pas, car la mise en forme est un peu bizarre pour moi. Je ne sais pas, je sais très bien ce que c'est le cas. Nous allons juste écrire pour ça. Je peux dire des questions occidentales , anciennes. Et la façon de lire ceci est, ou chaque question de chaîne dans les questions, c'est comme ça que vous le liriez. Et ensuite, vous pouvez simplement faire un système, imprimer une ligne, une question. Et je peux simplement imprimer chaque question ici. Encore une fois, ça va juste marcher. Donc, comme vous pouvez le voir, voilà, euh, maintenant, accéder à ce que les éléments individuels à l'intérieur de cette liste ou de cette matrice dans ce cas, et je n'ai pas à le spécifier via l'index ici. En fait, je les ai tous bien individuellement. C'est donc la boucle pour chaque boucle et ceci pour chaque fois que vous allez, c'est un autre type de boucle qui est intéressant. Et puis le dernier type de boucle que je veux vous montrer est la boucle while. Maintenant, j'ai la préférence personnelle d' utiliser très rarement la boucle while simplement parce qu'elle peut être, eh bien, cela peut vous causer des ennuis. On peut donc dire quelque chose comme si c'est vrai, puis des crochets bouclés. Ce qui se passe donc, c'est que tout ce qui se passe à l'intérieur d'ici va se produire tant que c'est vrai. Maintenant, évidemment, lorsque vous y réfléchissez une seconde, attendez une seconde. Si je dis vrai, cela sera toujours vrai exactement. C'est maintenant une boucle de temps et une boucle de temps et sans fin, non ? Il s'agit donc d'une boucle sans fin et c'est le danger que vous pourriez rencontrer avec une boucle de temps. Vous pourriez également rencontrer le problème avec les boucles for en théorie, mais il est très rare que cela se produise réellement. Mais dans les boucles de temps, c'est très souvent le cas ou c'est peut-être le cas que vous ayez une boucle sans fin. Maintenant, tout le monde doit passer par là à un moment donné. Je dis juste que mon parti pris est que je n' aime pas vraiment les boucles de temps. Mais ce que nous pouvons faire, c'est , bien, procédons comme suit. Ajoutons en fait une entrée pour la personne. Donc Scanner ici, le scanner est égal nouveau système de scanner.in et ensuite terminé. Et ce que nous allons faire, c'est que nous allons juste dire quelque chose comme la ligne d'impression suivante du système. Voulez-vous continuer ? Donc, nous allons juste dire : Hé, est-ce que la personne veut continuer à utiliser ? Nous allons continuer et ensuite nous allons juste dire, hé, si le scanner fait le point suivant, non ? Si c'est le cas, oui. Alors, ce que nous allons faire, c'est que nous allons continuer, n'est-ce pas ? Alors continuez le mot clé, sinon nous allons casser. Voici un exemple ici du mot-clé Continue et du break, le mot-clé continue qui ignore tout ce qui vient après lui à l'intérieur de la boucle et revient en haut de la boucle pendant que le mot-clé break sort de la boucle. Donc, en gros, cela va jusqu' à la fin de l'année et tout est ensuite exécuté à nouveau. Ce serait la même chose si tout à coup cela devient faux. Dans ce cas, il s'agit bien sûr d' une boucle sans fin, n'est-ce pas ? Donc, tant que je tape, oui, ça va continuer. Dès que j'ai tapé quelque chose d'autre, il va s'en sortir. C'est donc en quelque sorte l'idée de cette boucle de temps ici. Jetons un coup d' œil à ça pour que je puisse taper. Oui. Et je peux taper, oui. Et je peux taper. Oui. Et puis je vais faire une erreur ici et un OH non, tout d'un coup il a appelé ça s'arrête. C'est en quelque sorte l'idée. Il pourrait donc s'agir d'une boucle sans fin avec une sorte de système de freinage. Maintenant, ce qui est très important, c'est que le mot-clé continue et break ne devrait probablement être utilisé qu'avec parcimonie, car beaucoup de développeurs n' aiment pas cela. Parce que si vous avez comme ça, disons une boucle FOR plus longue ou une boucle plus longue ou while. Et vous avez beaucoup de Continue et de pauses là-dedans. Parfois, cela peut être un peu déroutant. Vous aimez le lire, n'est-ce pas ? Parce que vous allez avoir plus de branches pour ainsi dire. Vous pouvez donc penser, si vous pouvez penser à la façon de le faire d'une manière un peu différente, c'est généralement mieux. Quel que soit le cas. Ce sont les boucles que je voulais vous montrer. Des trucs vraiment très cool. Et nous commençons vraiment à trouver des outils très sympas dans notre boîte à outils pour vraiment travailler avec du code et simplement programmer quelque chose de vraiment cool. Donc, mais pour le moment, c'est pour cette conférence ici même. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau si vous le faisiez, j'apprécierais beaucoup un commentaire de votre part. Sinon, je vous verrai lors de la prochaine conférence. Donc, oui. 20. Méthode Java (Java): Bienvenue dans l'introduction de Java pour la modélisation Minecraft. Et dans cette conférence, nous allons jeter un coup d'œil à une méthode. Tout d'abord, nous avons une fois de plus besoin des zones de chaînes ici. Nous n'en avons pas nécessairement besoin, mais nous allons les utiliser dans cette conférence. Et bien, les méthodes. Que sont les méthodes ? Eh bien, nous avons déjà vu ce mot lancé quelques fois auparavant avec les méthodes de chaîne. Et aussi quelque chose comme la ligne d'impression système est aussi une méthode. Et j'aurais peut-être dit une ou deux fois avant la méthode principale. Il y a donc quelque chose là-dedans. Nous avons également vu les méthodes mathématiques, donc nous avons définitivement entendu ce mot avant. Qu'est-ce que c'est vraiment ? Eh bien, en théorie, une méthode, vous pouvez la considérer comme quelques lignes de code, une ligne de code ou 100 lignes de code en théorie, qui sont exécutées lorsque vous appelez cette méthode. Vous appelez donc une méthode comme, par exemple, lorsque nous tapons un système, ligne d'impression système, n'est-ce pas ? Et je dis bonjour, lisez ceci. C'est quelque chose en arrière-plan, n'est-ce pas ? Donc cette ligne d'impression, quand nous appelons cela, cette méthode ici, quelque chose en arrière-plan se passe. Maintenant, dans ce cas, nous ne savons pas nécessairement ce qui se passe exactement. Mais quelque chose arrive à ça ce bonjour, non ? Une fois que j'ai exécuté ceci, de sorte que lorsque cela se produit, quelque chose se passe en arrière-plan que ce bonjour est maintenant affiché dans cette fenêtre Exécuter. Nous ne savons donc pas vraiment quoi, mais il se passe quelque chose en arrière-plan, donc du code est exécuté. Donc, si nous avons un morceau de code que nous voudrions peut-être réutiliser, disons 100 fois dans notre code. Alors vous pourriez dire, eh bien, nous pouvons simplement faire une boucle for-loop, vous savez, 100 fois. Eh bien, mais que se passe-t-il si je veux le faire à différents endroits de mon code, n'est-ce pas ? Je voudrais peut-être poser une question dans ce cas, n'est-ce pas ? Et une sortie et une réponse , puis vérifiez la réponse. Ensuite, je voudrais poser des questions à nouveau. C'est comme, eh bien, je veux dire, vous pourriez faire une boucle for, mais peut-être que nous voulons faire des déclarations si là-dedans. Ça va devenir un peu compliqué. Cela ne fonctionne donc pas toujours. Disons donc, par exemple, que ce que je veux faire, c'est que je veux juste que je ne puisse pas taper quelque chose que je peux donner, disons un tableau ici, rouge. Ainsi, la chaîne de questions, une zone de réponses, et que les sorties répondent toutes les réponses et à toutes les questions. Donc, toutes les questions, répondent juste en s'inscrivant. Je pourrais donc bien sûr écrire quelque chose comme ça. L'œil droit pour la boucle int I est égal à 0. Je suis plus petit que les questions qui relient, disons que je suis plus, plus. Et puis je pourrais juste dire « système out », imprimer des questions en ligne. J'écris quelque chose comme ça , puis je duplique ça, puis je dis des réponses. Je pourrais le faire. Eh bien, disons encore une fois que je veux que cela soit fait 100 fois tout au long de notre code. Maintenant, l'observateur d'entre vous pourrait dire, eh bien, pourquoi ne pas mettre cette for-loop dans une autre boucle for. Et vous auriez tout à fait raison. Vous pouvez aussi le faire. Cependant, ne soyons pas trop intelligents. Réfléchissons à cela et faisons de cette méthode une méthode. Maintenant, ce que nous allons faire, c'est que je vous ai déjà dit que nous ne fonctionnons entre ces deux crochets bouclés. Nous sommes en train d'élargir notre monde maintenant et de passer à l'extérieur de ces crochets bouclés. Parce que maintenant nos nouveaux crochets bouclés sont essentiellement ces deux-là. Maintenant, c'est notre nouvelle maison. Et cela, vous avez peut-être pensé à cela. Eh bien, c'est la méthode principale qui est essentiellement exécutée lorsque nous appuyons sur le bouton Exécuter, puis la méthode principale est exécutée. Nous allons maintenant ajouter une nouvelle méthode. Et tout d'abord, je vais écrire ça. Ensuite, je vais expliquer ce qui se passe ici. Nous allons donc écrire public statique, vide. Et je vais appeler ce résultat des questions et des réponses. Ensuite, je vais taper une parenthèse, les parenthèses fermantes devraient être générées automatiquement. Et puis je vais créer un tableau de chaînes ici. Donc, ce sera les questions et ensuite un autre tableau de chaînes répond, n'est-ce pas ? Et puis je vais faire un support bouclé. Et vous voyez que le deuxième crochet bouclé a déjà été généré. Je peux simplement appuyer sur la touche Entrée et le formatage doit également être terminé. Et avec cela, une méthode plus récente a été créée. Donc, pour l'instant, nous allons ignorer ce public et statique. Nous ne savons pas encore très bien ce que c'est, mais nous sommes très près de le comprendre dans une prochaine conférence. Nous allons vraiment comprendre ce que cela signifie pour le moment. Nous savons simplement qu'il s'agit d'un modificateur d'accès. Nous ne savons pas encore ce qu'il fait. Nous savons simplement qu' il faut que le public soit écrit ici et que tout va bien se passer. Il y a un vide ici, c'est en fait le type de retour de cette méthode. Donc certaines méthodes retournent quelque chose et nous verrons cela dans un instant. Donc, après avoir fait cette méthode, nous allons en créer une autre qui retournera un entier. Ensuite, nous aurons le nom de la méthode. Maintenant, c'est quelque chose que vous pouvez décider vous-même. Habituellement, les variables de dénomination et les méthodes de dénomination doivent être très expressives. Donc, même si cela peut être très long pour vous, ne vous éloignez méthodes longs ou des noms de variables longs. S'ils décrivent exactement ce qu'ils font, ce sera la meilleure chose. Ensuite, après le nom, venez, les parenthèses ici. Et à l'intérieur des parenthèses, nous définissons essentiellement une sorte de discours variable. Et c'est ce que l'on appelle des paramètres. Nous avons donc deux paramètres ici, et les deux sont de type string array. Et dans l'ensemble, tout ça ici. Donc, tout cela, à droite, les modificateurs d'accès, le type de retour, le nom de la méthode et les paramètres sont ce qu' on appelle la signature de la méthode. Donc, parce que nous devons le savoir, signatures de méthodes doivent l'être. Signification unique que je ne peux pas avoir la même chose. Je vais donc sélectionner tout cela. Et puis je vais dire Control C puis Control V. Et vous pouvez voir que si je survole ça maintenant, nous allons dire que c'est déjà défini ici. C'est donc exactement la même chose et c'est déjà défini. Ça ne fonctionne pas, n'est-ce pas ? C'est donc très important. Cependant, si je change la signature de la méthode, ce qui signifie par exemple que j' en fais un de moins, je mets ici un paramètre de moins qui fonctionne. Vous aurez le même nom, ils auront une signature différente. Donc, dans ce cas, cela s' appellerait désormais la surcharge de méthode parce que nous avons le même nom, ceci avec une signature différente désactivée. Par exemple, un nombre différent de paramètres, différents types de paramètres, différents types de retour. C'est en quelque sorte la façon dont vous pouvez alterner l'année pour avoir des méthodes du même nom. Cela va devenir intéressant, peut-être plus tard en bas de la ligne pour le moment, nous allons supprimer celle-ci et nous allons simplement garder la seule méthode ici. Et ce que nous allons juste faire c'est que nous allons simplement prendre ce Control X pour le couper, Control V pour le coller. Et tout d'un coup, vous pouvez voir tout fonctionne parfaitement, car bien sûr, nous avons les paramètres ici, les occidentaux et les réponses. Et l'idée est que nous allons les transmettre. Donc parce qu'en ce moment, bien sûr, ces questions , ces réponses ne sont pas les mêmes que ces deux-là. Je peux appeler cela, disons Q0, Q, Q u, e, juste par souci d'argumentation. Et je vais appeler ça E&S juste pour qu'il n'y ait pas de malentendu. Cette année n'est pas la même chose car je pourrais appeler cela avec, bien sûr, un tableau de questions différent dans une chaîne de réponses différente. Cela va donc être très général. Ça va juste faire ça pour n'importe quel domaine que je vais mettre en place. Donc, c'est vraiment cool. Alors ce que je peux faire, c'est que je peux appeler ça, je peux dire sortie. Et vous pouvez voir dès que j'ai tapé, la méthode réelle est reconnue par le programme. Il a en fait suggéré ici. Je peux donc simplement mettre la touche de tabulation. Je peux appuyer sur la touche de tabulation et cela génère automatiquement votre et je peux simplement dire Q0 et ANS. Donc maintenant, j'ai passé le tableau de chaînes de questions comme périmètre de questions et le tableau de chaînes de réponses comme paramètre de réponse. Ce que vous avez peut-être vu, c'est peut-être que la méthode est passée du gris au jaune. Cela signifie simplement que cette méthode est réellement utilisée, donc appelée. Et c'est aussi une idée importante. Et si je l'exécute maintenant, vous verrez que cela fonctionne réellement. Vous pouvez voir combien de sets. Les États-Unis, ils ont 50 capitales, Royaume-Uni, Londres, et le symbole chimique du fer est F, e. Donc il produit ceci et il appelle simplement tout le code de cela à l'intérieur d'ici. Et maintenant, bien sûr, les méthodes peuvent appeler des méthodes, et les méthodes peuvent appeler d'autres méthodes. Donc, bien sûr, cela devient assez compliqué à un moment donné. Cependant, pour le moment, c'est vraiment cool. Maintenant, nous allons également créer une méthode qui pourrait être très compliquée. Donc, ce que nous allons avoir comme on va aller au public statique int. Nous allons donc maintenant renvoyer un entier et nous allons additionner deux nombres ensemble. Alors, de quoi avons-nous besoin ? Bien sûr, un entier x et un entier y. Maintenant, encore une fois, les noms des paramètres peuvent aussi être ce que vous choisissez. Habituellement, vous voulez qu'ils soient également très expressifs en général. Maintenant, nous avons cette méthode de somme ici. Et ce que nous allons faire, c'est que nous allons saisir le mot-clé de retour x plus y. Nous allons donc simplement renvoyer x plus y car c'est bien sûr la somme de ces deux entiers dans ce cas, rien de trop spectaculaire. Cependant, ce que je voulais vous montrer, c'est essentiellement le mot-clé retour et que vous pouvez également renvoyer différents types. Donc, la méthode SAM dans ce cas, nous pouvons juste jeter un coup d'oeil là-dessus, n'est-ce pas ? Donc, déconnectez la ligne d'impression, puis nous allons en dire une dizaine et disons 12. Et ensuite, si je fais ça et que ça devrait dire 22, tu y vas. Donc, pas de soucis du tout, que tout fonctionne. Et ce genre d' idée générale que vous avez ici avec les méthodes. Il peut donc soit renvoyer quelque chose soit il peut renvoyer quelque chose, puis il faut écrire dans un vide. Mais c'est en quelque sorte un regard provisoire sur les méthodes. Bien sûr, encore une fois il faut vraiment appliquer cela un peu pour vraiment comprendre ici. Cependant, il s'agit là d'une importante séquence de la mission qui va se dérouler ensuite. Je recommande fortement de faire comme faire la prochaine affectation parce que ce sera essentiellement des méthodes. Et même si vous ne comprenez pas Sue fera tout ce qu'il y a là-dedans, au moins en regardant la question et la solution à cette question éclairera également la façon dont vous pouvez utilisez des méthodes dans votre propre code. Mais pour le moment, ce sera le cas pour cette conférence ici même. J'espère que cela vous a été utile et que vous apprendrez quelque chose nouveau et je vous verrai lors de la prochaine conférence. Donc, oui. 21. PROJET 2 : Jeu de Trivia with Methods: Très bien, Bienvenue dans la deuxième affectation de l'introduction de Java ici. Et dans cette courte vidéo, je veux essentiellement expliquer la mission. Donc, dans l'ensemble, l'affectation n' est pas si compliquée que je veux toujours vous guider à travers cela. L'idée est donc que vous devriez recréer le jeu trivia dès la première mission. Donc, fondamentalement, à peu près la même chose. Mais cette fois-ci, vous devriez avoir cinq questions et cinq réponses. Et la façon dont vous devez les sauvegarder est dans deux domaines. Un pour les questions et les réponses. Et ce que vous devez également faire, c'est de créer au moins deux méthodes pour rendre le code plus lisible et plus facile à suivre. Et en gros, comme indice, vous allez y penser comme ça. Lorsque vous avez du code en double, vous devriez probablement en faire une méthode. Nous y réfléchirons. Pensez à l'endroit où vous pourriez appeler quelque chose deux fois, puis vous pouvez en faire une méthode. Et ce que vous devriez également faire, c'est que vous devriez faire une boucle sans fin, puis quelques instructions if là-dedans dans une certaine capacité. Donc, une logique qui oblige l'utilisateur à demander à l'utilisateur de continuer à jouer ou non s'il ne le souhaite plus. Je recommande fortement de jeter un autre coup d'œil à la conférence des boucles car ils ont en fait un cas d'utilisation très similaire qu'ils savent que nous avions une boucle sans fin que vous pouvez arrêter avec eux. Les instructions IF et les mots-clés break et continue. Ceux-ci pourraient donc être très utiles ici. Sinon, dans l'ensemble, cela devrait être assez simple. Le jeu en soi devrait jouer de manière très similaire à celle du premier. Il devrait juste paraître un peu différent. Donc, dans l'ensemble, ce serait l'idée entière. Bien sûr, n'oubliez pas non plus des choses comme les points. Aussi, vous savez, ajoutez-les aussi. Sinon, c'est à peu près tout ce que vous devez vraiment faire. Je suggère d'aller environ une heure pour cette tâche, en fonction de votre niveau, vous pourriez aussi le faire en 30 minutes, 45 minutes, qui sait ? Mais ne vous stressez pas vous-même. Prenez le temps de vraiment creuser là-dedans. Regarder quelques conférences à nouveau, la conférence en boucle, je recommande vivement les méthodes cours étaient très agréables si vous ne les comprenez pas tout à fait, je le recommande vivement. Sinon, bien sûr, la solution sera également à votre disposition. Donc, pas de soucis là-bas. Sinon, je vous souhaite la meilleure des chances pour cette mission. Oui. 22. SOLUTION 2 : Jeu de Trivia avec des méthodes: Ou je me réjouis de revenir à la deuxième mission et la solution à l'affectation réelle ici. Encore une fois, le code est bien sûr disponible pour vous. Et en tant que disclaimer ici, si votre code ne correspond pas à 100 pour cent au code que j'ai, est bien sûr tout à fait très bien. n'y a pas de honte à cela, car il y a toujours plusieurs solutions à ce problème. Et je pense que ma solution utilise peut-être quelques méthodes trop nombreuses. En fait, ce qui est intéressant, mais pour le moment, nous allons juste passer par là. Bien sûr, les tableaux de chaînes, les questions et les réponses devraient être assez explicites ici. Idem avec le scanner une fois de plus pour lire les choses, puis un total de points ici, juste des points de base. C'est donc assez simple. Nous avons une boucle de temps qui est toujours vraie. Vous pouvez donc voir que c'est essentiellement toute la boucle while ici. Et jetons d' abord un coup d' œil au fond ici. Donc cette impression rejoue, méthode imprime, Hé, voulez-vous jouer à nouveau ? Si vous mettez un y ici, il réinitialise essentiellement les points et continue ensuite avec cette boucle while. Sinon, il se détache simplement de la boucle while. Et puis le prince de adieu ici. C'est en quelque sorte l'idée. Sinon, vous pouvez très facilement suivre cela. Les noms des méthodes décrivent-ils presque entièrement ce qu'elles font , puis consultez Imprimer le titre, assez juste ? Et ensuite, nous allons passer en revue chacune des questions ici pour cette boucle for-loop, très, assez simple aussi. Et nous avons ici la question imprimée pour la question qui est essentiellement posée par, puis lue dans la réponse de l'utilisateur. Et puis nous avons une déclaration if qui appelle une autre méthode ici. va de même de la réponse correcte de cette réponse de l'utilisateur. Et cela compare essentiellement cela à la réponse qui convient à cette question. Si c'est le cas, donc si cette méthode renvoie true, nous imprimons alors, vous avez eu une réponse correcte où le total des points est de plus en plus élevé et l' écrivez dans la variable points. Et puis, ici, nous imprimons également le total des points actuels en gros. Et si ce n'était pas la bonne réponse , nous imprimons que vous aviez une réponse incorrecte et nous imprimons également la bonne réponse. C'est à peu près tout ce dont nous avons vraiment besoin ici. Et vous pouvez voir à la fin ici que nous imprimons simplement le total des points, puis demandons au joueur de s'il veut jouer à nouveau. C'est donc toute la logique ici. Et ensuite, si nous descendons, nous pouvons voir qu'il y a beaucoup de méthodes ici. Et ils sont tous très, très simples, n'est-ce pas ? Presque tous n'ont qu'une seule lumière, en gros tous une seule ligne. Maintenant, vous pouvez présenter un très bon argument qui, peut-être un peu trop bien, peut aussi être une mauvaise chose dans ce cas, non ? Ou trop de méthodes peuvent être trop nombreuses. Cependant, c'est très facile à suivre ici. Il y a aussi des points à dire, eh bien, peut-être que nous pourrions simplement prendre toute cette déclaration IF et faire une méthode. Est-ce que c'est aussi possible que nous puissions prendre toute la boucle for, faire une méthode entière. Nous pouvons prendre cette partie et en faire une autre méthode. Il y a donc plusieurs idées que vous pouvez suivre et vous pouvez encore, bien sûr, en faire plus de méthodes ou moins. C'est tout à fait très bien et c'est tout à fait correct. Tant que cela fonctionne, vous avez quelques méthodes que vous avez faites, alors tout ira bien. Donc encore une fois, si ce n'est pas exactement votre solution, ne vous inquiétez pas du tout. Encore une fois, ce qui est beau dans la programmation, c' est qu' il y a toujours, je veux dire, qu' il y a toujours des millions de façons différentes de le faire. Bien sûr, certains d' entre eux seront plus optimisés que d'autres. Mais à la fin de la journée, quand on y pense vraiment, ça va se passer tout à fait bien généralement. Donc, si ce n'est pas correct à 100 % comme vous l'avez, c'est bon. Si ça marche, j'en suis déjà très content. Sinon, c'est à peu près ma solution. Bien sûr, ce code est également disponible pour vous. Sinon, j'espère que cette mission vous a été utile pour approfondir l'idée des méthodes et comment les utiliser. Je peux toujours, bien sûr, simplement suggérer de jouer avec ça à votre temps, essayant un tas de choses. À ce stade, vous disposez de nombreux outils différents. Vous avez des instructions if, des boucles, des méthodes, des tableaux. Il y a donc beaucoup de choses avec lesquelles vous pouvez jouer. Vous pouvez lire des informations provenant de l'utilisateur. Vous pouvez écrire des choses sur la console, ce qui, à ce stade vous ouvre tout un tas de choses. Donc, si vous voulez faire une sorte de choisir votre propre aventure, juste une petite chose, n'est-ce pas ? Allez-y, c'est vrai, essayez juste un tas de choses. Je recommande vivement d'être expérimental avec elle. Vous, vous ne pouvez rien casser ici, n'est-ce pas ? Tant que vous écrivez votre code ici est fait pour vous, tout ira bien. Comme je l'ai déjà dit dans la conférence sur les erreurs. Si vous avez des erreurs, pas besoin de vous inquiéter, ce n'est pas la fin du monde et tout le monde a des flèches, n'est-ce pas. Je reçois des flèches à tout moment, comme quand je programme, bien sûr, il y aura des flèches et c'est tout à fait correct. Tant que vous travaillez à travers eux, vous essayez de comprendre pourquoi j'ai eu cette erreur ? Comment cela s'est-il produit ? Et quelque chose comme ça. Mais ce serait là pour la solution ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau et je vous verrai lors de la prochaine conférence. Donc, oui. 23. Collections Java de Java (Java): Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons jeter un coup d'œil aux collections. Cela comprendra des cartes et des ensembles réalistes. Bien que les ensembles soient particulièrement utilisés dans la modélisation Minecraft en général, mais dans la base de code Minecraft. Les ensembles sont donc des choses très intéressantes, mais nous allons commencer par une ArrayList. Cependant. Nous reviendrons au tableau de chaînes que nous avons pu définir comme ça, n'est-ce pas ? Par exemple, des questions, ici, avec un nouveau tableau de chaînes, disons de la taille deux. Ensuite, nous avons pu poser ces questions comme celle-ci. Quel est le nombre d'États, pas d'États ? Doit. La moitié des États-Unis va quelque chose comme ça. Et nous pourrions dupliquer cette ligne. L'autre aussi. Par exemple, faire de cette capitale un peu plus courte du Royaume-Uni. Cela fonctionne donc très bien. Aucun problème, quel que soit le taux. Cependant, l'une des choses que vous pourriez vous poser est juste, mais que se passe-t-il si je veux modifier le nombre de questions à l'intérieur de ce domaine ? Eh bien, vous devez changer ce numéro ici. Et ça peut être un peu gênant, non ? Parce qu'alors vous devez aller ici, changer cela, assurez-vous que si vous avez alors une zone qui contient des réponses, vous devez également modifier la taille de cela, etc. Ce n'est pas la meilleure chose. Et pour cela, nous allons jeter un coup d'œil à une liste maintenant. Nous allons donc taper la liste, donc la liste. Et vous pouvez voir que cela nous suggère déjà essentiellement à celui-ci. Et nous allons simplement appuyer sur la touche Tab, qui va maintenant importer quelque chose en haut ici. Si ce n'est pas le cas, je vais vous montrer dans un instant comment vous pourriez y remédier. Et ensuite, vous allez mettre le support d'angle juste ici. Ainsi, le support d'angle et l'autre doivent également générer automatiquement. Et puis on va mettre une ficelle ici. Ensuite, nous allons appeler cela la liste de questions. Et cela équivaut à une nouvelle ArrayList. Vous pouvez voir que cela nous est déjà proposé essentiellement. Une fois de plus, je vais appuyer sur la touche Tab pour générer automatiquement. Et nous allons finir ça par un point-virgule. Et la première chose que vous allez voir, c'est que nous n' avons pas défini de longueur pour cette liste. Et c'est tout à fait exact parce qu' il n'est pas nécessaire de définir une longueur pour une liste, car une liste est en quelque sorte dynamique pendant que Lengthen solaire parle. Donc, en gros, nous pouvons simplement y ajouter des éléments, y ajouter des éléments et la liste que nous allons développer dynamiquement. C'est vraiment cool. C'est la première chose très cool. On peut donc dire liste de questions, pointer, ajouter, puis mettre une chaîne. Par exemple, quelle langue est parlée en Allemagne ? En guise de question ici. Et puis je peux juste dupliquer ça. Par exemple, disons, quelle est la capitale du Canada ? Et puis à la fin ici, peut-être quelque chose comme, vous savez, disons simplement dans quel hémisphère ? L'hémisphère est le Brésil. Mais juste par souci de dispute. Donc ces trois exemples de questions, il suffit de l'ajouter à la liste, et ce sera maintenant l' élément avec l'index 0. Il s'agit de l' élément dont l'index est un, et il s'agit de l' élément avec l'index deux. C'est vraiment cool. Et la première chose que nous pouvons dire essentiellement , c'est ces listes, n'est-ce pas ? Il s'agit essentiellement d'ajouter des entrées ou des éléments dynamiquement. C'est vraiment cool, non ? Nous pouvons donc ajouter et bien, même enlever des trucs. Comment enlèveriez-vous des choses ? Eh bien, c'est plutôt facile aussi. Nous pouvons simplement dire suppression de points de liste de questions, puis soit je peux mettre dans l'index que je veux supprimer, soit mettre dans l'objet réel que je veux supprimer. Je pourrais donc aussi passer la chaîne ici, ou je pourrais simplement en dire une. Et ensuite, il va supprimer la question : quelle est la capitale du Canada ? C'est plutôt cool. Maintenant, la prochaine question que vous pourriez vous poser est, eh bien, comment pouvons-nous obtenir la longueur de tout cela ? Eh bien, on peut dire un point de liste de questions. Tout d'abord, vous allez recevoir beaucoup de choses suggérées ici, comme vous pouvez le voir clairement. Beaucoup de choses qui ne nous intéressent pas pour la plupart . Nous devons en fait utiliser la méthode de la taille ici. Donc, la taille avec les parenthèses, signifie bien sûr qu'il s'agit d'un appel de méthode. Et cela renvoie la longueur ou la taille de cette liste. Et comment puis-je obtenir un élément de cette liste ? Eh bien, nous pouvons simplement taper le système, imprimer la ligne pour imprimer ça. Et puis on peut dire une liste de questions que GET. Et puis, ici, nous devons passer dans l'index. Donc, dans ce cas, 0 par exemple. Et si je viens de lancer ça, vous verrez que nous allons en obtenir deux pour la taille car bien sûr, nous avons supprimé la première question ou la chaîne avec index 1. Et puis l'élément avec l'indice 0 va toujours être la langue parlée en Allemagne. C'est plutôt cool. Tout est pris en compte. Maintenant, jetons un coup d'œil à autre chose. Et ça va être une liste d' entiers, par exemple, n'est-ce pas ? Les nombres sont donc égaux à une nouvelle liste de tableaux. Et ce que vous allez voir, c'est que c'est un problème ici. ArrayList évalue donc quelque chose comme ça. Et ensuite, vous pouvez voir que c'est en quelque sorte, vous savez, qu'il ne se comporte pas tout à fait correctement. Il y a comme un soulignement rouge ici. Que se passe-t-il ? Eh bien, si nous survolons cela, vous pouvez voir que l'argument type ne peut pas être de type primitif. Cela signifie que nous ne pouvons pas utiliser en booléen et dans ce genre de choses. Cependant, devant vous. Cela peut dire : Oh mon Dieu, c'est la pire chose qui soit. Ne vous inquiétez pas. Il existe des classes d'enveloppe que vous pouvez utiliser pour que vous puissiez réellement voir le remplacer par un entier Java Lang. Eh bien, je peux soit cliquer dessus soit je peux simplement taper un entier ici. Donc, celui-là, dans ce cas. Et si vous utilisez cela, tout fonctionne bien. Voici donc cette liste et ces crochets d'angle sont ce qu'on appelle des génériques. Et l'idée est que vous pouvez placer n'importe quel type de données ici, l' exception des types primitifs. C'est très important pour ceux qui ont besoin de ces cours d'emballage. Il y a donc des cours d'emballage, non ? Nous pouvons utiliser, utiliser au lieu du primitif, un type de données primitif le u. Il est donc très important de se rappeler qu'il existe des classes d' enveloppes et qu'elles devraient exister pour chacune des primitives. types de données. Donc, pas de soucis là-bas. Et ici, nous pouvons très facilement dire des chiffres à 20 par exemple. Et les chiffres ajoutent quelque chose comme 42. Ne vous inquiétez pas du tout. Comme vous pouvez le voir, nous pouvons simplement ajouter ces nombres ici et ce sont des entiers normaux et nous pouvons utiliser o. C'est très bien. Mais je voulais mentionner que vous ne pouvez pas utiliser les types de données primitifs dans ces génériques comme on les appelle. Comme je l'ai dit, les génériques sont ces crochets d'angle, n'est-ce pas ? Ces crochets angulaires. Et tout ce qui se trouve à l'intérieur est appelé générique car, eh bien, il est générique dans le sens où nous pouvons mettre dans n'importe quelle autre classe ou tout autre objet, n'importe quel type de données que nous voulons entrer ici. Et ça va juste marcher. Au fait, cela inclut également une liste, n'est-ce pas ? Nous pouvons donc avoir une liste d'une liste. Bien sûr, pourquoi pas ? C'est vrai ? Nous avons plusieurs listes qui fonctionneraient également. Mais pour le moment, ce sera le cas pour les listes. Jetons un coup d'œil aux cartes. Les cartes sont donc très intéressantes. Lisez, une carte est ce qui suit. Une carte contient une clé et une valeur. Et la clé, la clé est en fait mappée, clé droite correspond à une certaine valeur que tout devrait avoir du sens. C'est ce qu'on appelle une paire de valeurs clés. Bon, c'est assez juste. Que pouvons-nous voir ? Il suffit de taper ceci sur la carte comme vous pouvez le voir, et nous avons deux choses différentes entre crochets cette fois-ci. Alors, importons ça, n'est-ce pas ? Vous pouvez donc voir que cela est également importé ici. Si cela n' est pas important automatiquement, vous pouvez voir que les choses deviennent rouges et vous pouvez très facilement le faire vous-même. Vous pouvez simplement cliquer dessus et appuyer sur Alt et Entrée, et il importera cette classe. Vous pouvez voir que j'ai également dû faire de même avec ArrayList. Et puis ici pour la carte, n' ai pas encore à le faire parce que je n'ai pas encore fini, mais nous verrons cela dans un instant. Nous allons avoir une carte qui mappe une chaîne à une autre chaîne. Et nous allons appeler cela la carte du pays à la capitale, ce qui sera égal à une nouvelle HashMap dans ce cas. Et ce que nous pouvons faire, c'est que nous pouvons simplement appuyer sur Alt et Entrée. Et ensuite, ça va être important ici aussi. Mais ceux-ci sont très importants, ces importations essentiellement, pour que le programme sache que nous utilisons ces types de données, n'est-ce pas ? Donc, la liste, la ArrayList, la carte et des choses comme ça. Et ce que nous pouvons faire maintenant, c'est que nous pouvons également ajouter à ce pays le MAB capital. Nous pouvons donc simplement dire « mettre » et cela introduit de nouvelles valeurs. Par exemple, l'Allemagne serait Berlin. J'espère que vous connaissiez celui-là. Allons en faire un autre. Donc, nous allons juste dupliquer cela quelques fois. Et on va dire la France. Vous savez que celui qui est Paris, bien sûr, tout de suite, l'Italie, Wu devient maintenant intéressante Rome bien sûr. Ensuite, nous aurons un USA, et ce sera Washington DC. C'est très simple. Tout ce qui est considéré ici, comme vous pouvez le voir, je peux mettre deux cordes, n'est-ce pas ? Parce que c'est ce que j'ai défini ici. Ils ne doivent pas nécessairement être les mêmes. Je pourrais mettre une année entière, un float ici, je pourrais mettre une chaîne ici, une liste ici. N'importe quoi fonctionnerait. Il n'est pas nécessaire que les deux soient les mêmes. C'est très important. Je voulais également mentionner cela. Et comment pouvons-nous maintenant obtenir une valeur d'une carte ? Eh bien, disons que la ligne d'impression du système est sortie. Et ensuite, nous allons dire de pays à capitale. Et vous pouvez voir que je dois fournir une chaîne. Et ce que je vais sortir, c'est bien sûr une ficelle ici, mais c'est ce que je dois fournir. Et c'est ce que j'en retire. Donc le type de retour et je mets en Allemagne, puis Berlin sera produit car Allemagne est la clé de la paire clé-valeur, Allemagne, Berlin devraient être assez simples. Je peux également demander si la carte contient ou non une certaine clé ou contient une certaine valeur. Donc je peux dire la ligne d'impression système. Et juste pour que tout le monde sache ce que nous demandons ici contient l'Allemagne clé. Et ensuite, nous allons dire que le point de pays à capitale contient la clé, l' Allemagne, ce qui va bien sûr être vrai. Ensuite, nous allons juste dupliquer cela. Ensuite, nous allons dire qu'il contient une valeur. Nous pouvons donc également demander des valeurs, Londres par exemple. Et puis nous pouvons appeler la méthode contient une valeur ici, passe et Londres ici. Et puis, si nous ne faisons que faire ça, nous devrions voir. Tout d'abord, ici même, taux de Berlin est la capitale de l'Allemagne et contient ensuite la clé. L'allemand va être vrai car il contient cette clé, puis contient de la valeur. Londres va être fausse car, bien sûr, nous n'avons pas d'urine de Londres ici en tant que valeur. Nous pouvons également supprimer des éléments d'une carte. Donc une fois de plus, système, imprimez la ligne et connectez-vous pour dire, je peux dire pays à capitaliser, supprimer les points. Et ce qui est cool avec le Remove que vous pouvez voir, c'est que je peux soit passer la clé, soit je peux également passer à la fois la clé et l'objet. Et ensuite, cela retournera un vrai si cela a été supprimé parce que peut-être ceux-ci ne correspondent pas et que vous voulez une fonctionnalité spécifique ici. Sinon, vous pouvez simplement passer la clé et vous obtiendrez également le retour. Vous obtiendrez donc une dernière année de valeur. Il faut donc maintenant dire Paris. Et après cela, les marques sont en fait, comme vous pouvez le voir, et après que cela soit fondamentalement supprimé de cette carte, c'est une idée très intéressante des cartes. Ils peuvent être incroyablement utiles. Cependant, bien sûr, c'est parfois difficile de cette manière abstraite quand je montre simplement à ceux où on peut vraiment les utiliser. L'utilisation de ces types de données peut parfois être, eh bien, ce n'est pas une science exacte, n'est-ce pas ? Donc, parfois, vous voulez utiliser quelque chose. Je ne suis pas sûr que cela corresponde. Encore une fois, il suffit de l'essayer. Steve travaille et ça ira bien. Et puis, enfin, ce que nous allons jeter un coup d'œil aux décors. ensembles, comme je l'ai mentionné, sont des choses largement utilisées dans la base de code de Minecraft. Et un ensemble n'est qu'une collection, une collection qui ne contient aucun doublon. C'est la définition la plus simple d'un ensemble. Il s'agit simplement d' une liste ou d'une collection qui ne contient pas de doublons. Ainsi, un ensemble de chaîne, par exemple, nous pourrions avoir ceci comme noms d'utilisateur, par exemple, avec chaque problème qui est égal à un nouveau HashSet dans ce cas, alors vous pouvez voir que cela a également été importé et maintenant cela s' est transformé en une histoire ici parce que tous sont dans, sous le paquet util. Il n'y a donc pas trop d'importations ici. C'est en quelque sorte le fait seul. C'est très joli. Nous avons donc maintenant un ensemble et nous pouvons bien sûr ajouter à ce point de noms d'utilisateur, par exemple, le travail de coton. Ou on pourrait dire que les noms d'utilisateur dot add, nano tech ici. Et puis on peut dire, eh bien, d'accord, assez juste, c' est vraiment cool, mais qu'est-ce qu'un ensemble fait d'autre ? Eh bien, encore une fois, si nous voulons maintenant ajouter quelque chose deux fois, pour que vous puissiez, par exemple, dire quelque chose comme l'ajout de noms d'utilisateur, disons FV, non ? Et puis je duplique cela, et je veux l'ajouter deux fois le même nom, n'est-ce pas ? Nous allons en fait nous rendre huit défauts. Ici, nous obtenons un vrai, ici nous obtenons un faux parce que c'est déjà là-dedans, la chaîne est déjà à l'intérieur de la collection. Et parce qu'il ne contient pas de doublons, nous ne pouvons l'avoir qu'une seule fois. Si je réalise tout cela, vous verrez que le premier est vrai car bien sûr F ou V n' a pas encore été ajouté. Et une fois qu'il aura été ajouté et que nous essayons de l'ajouter à nouveau, nous obtiendrons un retour faux. C'est donc très intéressant. Sur tous les ensembles, vous ne pouvez pas vraiment appeler des choses individuelles à l'intérieur de l'ensemble. L'ensemble est vraiment une collection qui devrait être utilisée ensemble. Et je voulais juste présenter doucement les décors ici pour que vous en ayez entendu parler. Donc, une fois que nous les aurons vus à l'intérieur du jeu, ou à l'intérieur du code Minecraft, vous ne serez pas complètement pris au dépourvu. Donc, la dernière section ici, les flèches que vous pourriez rencontrer, n'est-ce pas ? C'est donc toujours une chose importante. Tu peux juste, faisons-le simplement. Les flèches n'étaient pas commentées. Je viens de voir où les erreurs, s'il vous plaît, pas pour les terroristes qui ne seraient pas bonnes. allons en fait copier cela par souci d' argumentation et nous allons simplement changer ce C un petit c et n va bien se passer. Le premier est donc l'exception de l'indice hors limite. Nous allons donc simplement faire ce qui suit. Décommentons cela. Tout d'abord, il s' agit de la liste de questions. Vous y allez. Ne vous inquiétez pas du tout. Et si nous le faisons, vous verrez que nous obtenons ici une exception, l'exception de l'indice hors limites. Il s'agit donc d'une exception très, très similaire à l'exception de l'index de tableau hors limites, uniquement avec une liste. C'est presque tout ce qu'il y a. Nous avons donc essayé de transmettre un index dans la GetMethod qui n'existe pas pour les listes. Donc, bien sûr, lorsque nous n'avons que deux éléments, le premier est de l'index 0, le second est celui de l'index un. Tellement important ici que, bien sûr, passer deux ne fonctionnerait pas, n'est-ce pas ? C'est donc la première exception. Et puis, eh bien, l'autre chose n'est pas vraiment une exception, mais elle va retourner une valeur nulle. Donc, si nous transmettons une clé dans une carte qui n'existe pas, nous allons obtenir une valeur nulle, non ? Et cela pourrait conduire à une flèche en bas de la ligne. Donc, si je fais cela, vous verrez que si je fais cela, nous aurons une valeur nulle en bas ici. Et c'est tout à fait juste, bien sûr, Malte, nous n'avons pas cela dans notre pays pour capitale Mab. Cela va vraiment nous faire renvoyer une valeur nulle. Par conséquent, il peut être très utile de voir s'il contient une clé avant d'essayer de l'obtenir. Se faire restituer une valeur nulle n'est pas la fin du monde. Bien sûr que ce n'est pas fini si vous ne vous attendez pas à ce que cela soit nul ou si vous ne gérez pas que cela soit nul, vous risquez de rencontrer certains problèmes. Eh bien, voilà quelques-unes des erreurs que je voulais absolument mentionner ici. Il s'agirait donc la somme des collections. Bien sûr, il y en a beaucoup plus, il y a beaucoup plus de types de données que vous pourriez utiliser. Vous savez, il n'y a pas que les cartes et les ensembles de la liste , il y en a beaucoup d'autres, mais pour le moment, cela suffira pour commencer. Ce serait donc le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Si c'était le cas, j' apprécierais beaucoup un commentaire de votre part. Sinon, je vous verrai lors de la prochaine conférence. Donc, oui. 24. (Java) Programmation orientée de objets de Java expliquée: Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons parler de programmation orientée objet. Et comme vous pouvez le constater, nous sommes en fait sur PowerPoint. Dans ce cas. Nous allons en fait avoir un peu de présentation PowerPoint ici. Commençons donc par l'idée de savoir quelle est cette programmation orientée objet ? Eh bien, dans cette conférence, nous allons passer en revue un peu la théorie et certains des termes avec lesquels vous aurez besoin de vous familiariser afin besoin de vous familiariser afin de savoir ce qui se passe et de le langage lorsque vous parlez avec des gens qui connaissent la programmation et lorsque je continue avec cela, donc surtout dans la partie Minecraft de cette conférence ou de ce cours, vous allez voir que je vais toujours utiliser les termes nécessaires à utiliser. Donc des classes, des méthodes, des objets, des choses comme ça, et vous devriez savoir ce que c'est. Mais la première chose à laquelle nous pouvons penser c'est que tout est un objet. D'accord, stockons cela sous forme d'information, et nous pouvons créer des objets personnalisés avec des fonctionnalités personnalisées. intéressant, d'accord, et ça s' appellerait des cours. Donc, une classe est que nous pouvons créer un objet à partir d'une classe, d'accord, intéressant. Et puis les classes peuvent hériter de fonctionnalités, qui seraient des méthodes, des variables d'autres classes. Nous allons voir deux exemples théoriques de cela. Ensuite, lors de conférences ultérieures, nous allons également jeter un coup d'œil à quelques exemples pratiques. Mais tout d'abord, passons revue les termes très importants ici. Par conséquent, une ou plusieurs classes sont des types de données personnalisés ou définis par l'utilisateur. Mais maintenant, nous arrivons au point où vous pouvez créer vos propres types de données. Et ces classes peuvent ensuite être utilisées comme modèles pour créer des objets. Et ces classes incluent des méthodes et des champs appelés membres. Passons à cette étape à la fois. Une classe est donc un type de données personnalisé ou défini par l'utilisateur qui est plutôt cool. Il s'agit notamment de méthodes et de champs dont nous allons parler ici. Il s'agit de membres et de la façon dont ils peuvent être utilisés pour créer des objets. Qu'est-ce qu'un objet ? Un objet n'est rien d'autre qu' une instance d'une classe particulière avec des données définies. Nous allons en voir un exemple dans un instant. Cela deviendra donc beaucoup plus clair. Mais tout d'abord, parlons des membres. Ceux-ci doivent être assez explicites ou bien plus faciles que les objets. Les membres d'une classe sont donc soit une méthode, soit un champ, et vous pouvez également appeler des fonctions de méthodes. Maintenant, les gens qui aiment un peu plus Java savent peut-être que ce n' est pas strictement nécessaire. Les fonctions sont donc un peu différentes des méthodes. Pour nos besoins, c'est tout à fait très bien. Certaines personnes disent toujours des fonctions, même s'il y a des méthodes, tout va bien se passer et personne ne va devenir fou de ça. Nous n'avons pas besoin d'être trop pédantes là-dessus, n'est-ce pas ? Ainsi, des méthodes ou des fonctions définissent essentiellement un comportement spécifique pour un objet et des méthodes peuvent être appelées pour des objets spécifiques. Un exemple de cela, que nous avons déjà vu, est quelque chose comme la méthode de taille d' une liste particulière. Bien sûr, chaque liste aura la même méthode de taille. Ce qui va être renvoyé est spécifique à une liste spécifique. Donc pour cet objet, mais c'est l'idée générale. Les aigles ou attributs, car ils sont également appelés nos variables définies dans la classe qui stocke certaines données liées à cette classe. Par exemple, si nous devions avoir une classe de personnes qui pourrait enregistrer une chaîne appelée name, cela devrait également avoir du sens et devrait être assez explicite comme cet exemple ici. Et encore une fois, nous verrons bien sûr tout cela en direct et en action, je crois que la prochaine conférence nous allons immédiatement commencer à sauter dans les classes et les objets. Donc, pas de soucis là-bas. Jetons d' abord un coup d'œil à l'idée d'hériter de choses. Donc, je veux tout d' abord préfacer avec l'idée que si vous ne comprenez pas complètement cela, c'est tout à fait très bien. L'héritage est très compliqué. Je voulais juste mentionner cela que vous l'ayez déjà entendu une fois. Donc, l'idée est que nous pourrions avoir une classe d'animaux, n'est-ce pas ? Et cela hérite essentiellement de toutes ses fonctionnalités et de toutes ses variables jusqu' à deux classes. Ainsi, l'animal à deux pattes et la classe des animaux à quatre pattes, et ceux-ci sont liés de la manière suivante. La classe des animaux est la superclasse de l'animal à deux pattes et la classe supérieure pour l'animal à quatre pattes. Alors que les classes d'animaux à quatre pattes et d' animaux à deux pattes sont sous-classes de la classe Animal. Vous ne pouvez toujours avoir qu'une seule superclasse, mais comme vous pouvez le constater, vous pouvez avoir plusieurs sous-classes. Et là, nous pouvons même aller plus loin et hériter encore plus de choses et ajouter plus de fonctionnalités. Donc, vous passez d'un très générique ou très abstrait, très spécifique, non ? L'animal est une catégorie très abstraite. Animal à deux pattes. Nous commençons vraiment à entrer dans des choses plus spécifiques, humaines et autruches. Maintenant, nous sommes très, très précis. C'est donc une idée à laquelle vous pouvez penser, n'est-ce pas ? Pensons donc à un cours de chien maintenant, non ? Nous avons donc une classe qui s'appelle un chien, qui peut avoir certains attributs ou certains sont des champs, n'est-ce pas ? Ce qui va être une photo, un nom et un âge. Et on va se dire, OK, c'est très bien. C'est bon, qu'il y a assez de bien pour décrire un chien en particulier. Et bien maintenant, nous voulons créer un nouveau chien. Nous voulons donc créer une nouvelle instance de la classe de chiens. Nous voulons créer un nouvel objet. Eh bien, faisons-le simplement. là que nous l'avons. En ce moment, nous avons créé un nouveau chien. Benji avait sept ans, et voici une photo très mignonne de lui. N'est-ce pas juste sympa ? Oui, si je le dis moi-même, je pense que c'est une photo très mignonne ici, et c'est un chien en particulier, n'est-ce pas ? Nous n'avons vraiment rien changé ici. La seule chose que nous avons faite, c'est que nous avons créé un taux d'objets. Lorsque nous revenons ici une fois que chaque chien a une photo, un nom et un âge, et il s'agit d'un cas particulier ou d'un objet particulier de la classe de chiens. Maintenant, créons-en un autre. Par exemple ici, Gracie cinq ans et a aussi une photo très mignonne juste là. Mais comme vous pouvez le constater, il s'agit deux objets différents ou deux instances différentes de la classe Dog. Cependant, ce sont tous les deux des chiens. C'est donc une sorte de séparation que je veux traverser quand il s'agit de classes et d'objets, que la classe est le modèle. Ensuite, une fois que vous avez créé un objet particulier, cela devient alors une instance de cette classe. Cela peut parfois être un peu bizarre, surtout pour les débutants. Mais pas d'inquiétude à la fois. En fait, nous allons commencer à programmer avec cette étrange chose ou quand nous utiliserons concrètement, cela va être beaucoup plus clair. J'en suis sûr, non ? Mais ce serait déjà la fin de la conférence. En fait. La chose la plus importante de cette conférence, permettez-moi de revenir rapidement ici c'est ici, n'est-ce pas ? Cette diapositive est donc probablement la plus importante. Les diapositives sont également disponibles en tant que ressource pour que vous puissiez également les télécharger . Donc, pas de soucis là-bas. Vous avez donc également accès à ces deux photos de chiens mignonnes. Ce sera donc un très grand avantage, bien sûr. Sinon, ce serait le cas pour cette conférence ici même, comme je l'ai dit, un peu plus de théorie et la prochaine conférence, nous allons mettre tout cela en pratique. Ce serait donc tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et que les neurones sont les nouveaux, et je vous verrai dans la prochaine conférence. Donc, oui. 25. (Java) Cours de Java et objets: Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons essentiellement appliquer la théorie que nous avons apprise la dernière fois. Lors de la dernière conférence, nous allons parler de cours et d'objets. Donc, tout d'abord, bien sûr, nous devons créer une nouvelle classe, une classe personnalisée maintenant. Et pour cela, nous allons entrer dans cette fenêtre de projet juste à l'intérieur de notre paquet. Donc, c'est le paquet, n'est-ce pas ? Net a aidé Monroe était le paquet que nous avons créé ou autre que j'ai créé. J'espère que c'est votre nom. Ensuite, dans votre package de noms, cliquez avec le bouton droit sur la nouvelle classe Java. Ensuite, vous allez appeler cela la classe de chien, en vous assurant que la classe ici est sélectionnée, puis appuyez sur Entrée. Cette année, cette fenêtre n'apparaît que pour moi car j'ai un référentiel GitHub associé à ce projet. Si vous ne l'avez pas, c'est tout à fait très bien. Ne vous inquiétez pas du tout à ce sujet. Je voulais juste mentionner cela. Et maintenant, au lieu de ces crochets bouclés, oh, ajoutez des membres à cette classe. Par exemple, nous pourrions ajouter quelques champs, n'est-ce pas ? On peut donc dire quelque chose comme ajouter, ajouter des champs, n'est-ce pas ? Revenons ensuite à la présentation PowerPoint que nous avons vue, n'est-ce pas ? Nous avions une photo de String publique. Nous étions en train de penser à une photo. Nous allons juste dire qu'une chaîne qui est totalement bonne pour le moment, un nom de chaîne publique. Disons ensuite un entier public, qui est la variable d'âge. Maintenant, c'est très bien pour le moment. Nous allons encore une fois ignorer le public ici. Nous devons simplement rendre cela public une fois de plus dans un très très court laps de temps. En fait, nous allons voir les modificateurs d'accès. C'est donc littéralement la prochaine conférence. Ensuite, nous comprendrons ce que cela signifie pour le moment. Nous devons le rendre public. Et ce que nous pouvons également faire, c'est par exemple quelque chose comme un vide public. Et ensuite nous le ferons par exemple, afin que nous puissions créer à la fois des champs et des méthodes, n'est-ce pas ? C'est donc une méthode ici, et c'est bien sûr que c'était des champs ici. Ensuite, je peux faire quelque chose dans cette méthode, ce qui n'est que par souci d'argumentation. Je vais juste dire ça, en ce moment. Bon, donc maintenant tout est mis en place. Maintenant, que faisons-nous avec sa classe de chiens, n'est-ce pas ? Comment en fabriquons-nous un nouvel objet ? Eh bien, nous pouvons faire ce qui suit. On pourrait dire chien, non ? logo. Et maintenant, au début, nous pouvons dire quelque chose comme ça, par exemple. Pour la première fois, cela pourrait être un peu déroutant. Peut-être aimer attendre, mais je veux dire, je devrais reconnaître cela, non ? C'est juste une variable normale que nous avons déclarée ici, n'est-ce pas ? C'est juste un type de chien. Maintenant, comme je l'ai dit, parce que vous commencez à utiliser des classes personnalisées. Donc, des types de données personnalisés essentiellement. C'est peut-être un peu bizarre, mais c'est exactement la même chose que si je devais le faire, non ? Vraiment, quand on y pense, c'est juste une variable. Cette fois-ci de type chien. Et une autre façon initialiser est que je peux dire nouveau chien et vous pouvez voir qu'il génère cela automatiquement pour nous. Et maintenant, j'ai créé un nouveau chien. C'est donc l'idée générale de la façon dont vous pouvez créer un nouvel objet. Vous devez donc utiliser le nouveau mot-clé, que nous avons déjà vu à quelques reprises. Par exemple, avec le scanner, nous avons dû créer un nouveau scanner. Et maintenant, c'est aussi logique. Scanner n'est qu' un autre objet ou une autre classe que nous pouvons instancier un nouvel objet ou une nouvelle instance d'un pouce peut essentiellement utiliser cela. C'est en quelque sorte l'idée. Maintenant, la vraie question est que ça va, comme si j'avais ce chien ici, mais comme dans les champs, que sont-ils, qu'est-ce qu'ils sont maintenant ? Eh bien, essayons juste. Système d'écriture, ligne d'impression, Togo, nom du point par exemple. Voyons, eh bien, comment ce chien a été nommé comme chien ? Non, en fait, le nom est nul car nous n'avons attribué aucune de ces valeurs. Par conséquent, ils sont tous nuls car ici nous avons utilisé, à droite, le constructeur par défaut par défaut. Qu'est-ce que ça veut dire ? Eh bien, le constructeur est une autre partie d'une classe qui est très importante, et ce n'est en fait pas classé comme membre dans ce cas, c'est autre chose. Ainsi, le constructeur, comme son nom l'indique, est quelque chose qui construit un objet à partir de ce modèle, partir de cette classe, n'est-ce pas ? Ainsi, le constructeur par défaut, chaque classe que vous créez a quelque chose comme ça. Il est donc écrit comme ceci avec un modificateur d'accès. Et puis le nom de la classe immédiatement suivi par une parenthèse, qui n'a rien dedans. Et puis essentiellement comme une méthode normale, juste sans type de retour ou plutôt le type de retour est le même que le nom. Vous pouvez aussi y penser comme ça. Et cette année, c'est le constructeur par défaut. Et c'est ce que nous avons utilisé pour ce document ici, n'est-ce pas ? Il s'agit donc du constructeur par défaut maintenant. Et le vrai problème ici, c'est bien sûr que vous pouvez voir que rien ne se passe là-dedans. Aucune de ces choses n'a donc de valeur attribuée. Cependant, nous pouvons également créer nos propres constructeurs. heure actuelle, nous pouvons créer un constructeur personnalisé. Par exemple, chien public, chaîne, image, nom de chaîne et âge, écrivez quelque chose comme ceci et nous pouvons les attribuer. Cette image est donc égale à l'image, ce .name est égal à nom, et cet âge de point est égal à l'âge. Et vous verrez que tout d'un coup, tout fonctionne encore très bien. La première chose que vous pourriez demander, c'est quoi, ce mot clé ? Eh bien, cela fait référence à l'objet que nous créons du taux. Par exemple, vous pouvez y penser lorsque nous appelons la méthode Wolf. Si nous devions appeler cela, nous devrions appeler cela sur un objet particulier. Ainsi, chaque fois que j'utilise cela à l'intérieur de cette méthode, cet objet particulier est essentiellement fait référence. Vous pouvez donc y penser comme ça. même manière avec le constructeur. Lorsque j'utilise cela, cet objet particulier que nous venons de créer est fait référence car le nom du paramètre ici porte le même nom que le champ. Ils ne sont pas forcément obligés de le faire, mais dans ce cas, ils le font. Ensuite, nous voulons utiliser cet outil très bien spécifier, hé, c'est le champ et comme paramètre. Et maintenant, ce que je peux faire, c'est au lieu d' créer un avec le constructeur par défaut ici, je peux faire quelque chose comme, par exemple, chien et Benji, disons que c'est un nouveau chien, non ? Et ensuite, vous pouvez voir si j'attends une seconde ici, peux jeter un coup d'œil à cela. C'est là. Nous avons donc maintenant une suggestion ici, soit pas de paramètres ni de chaîne, de chaîne d' image, de nom, de chaîne ou d'âge entier. Nous recevons donc la suggestion ici. Disons Benji Dot PNG, non ? Disons Benji pour le nom, puis sept ans pour l'âge. Et vous pouvez voir que c'est presque la même chose qu'un simple appel de méthode normal, mais dans ce cas, il crée réellement un nouvel objet. Et puis nous pouvons faire la ligne d'impression système. Maintenant, nom de point Benji, et disons Benji dot h. Et maintenant cette sortie sera Benji et un sept comme vous pouvez le voir. Donc, c'est vraiment vraiment cool. Il y a encore une chose. Disons simplement, par souci d'argumentation ici, quand nous avons beaucoup de champs, n'est-ce pas ? Parfois, il peut être un peu fastidieux de les mettre tous ici dans le constructeur. Ce que nous pouvons faire, c'est que nous pouvons également cliquer avec le bouton droit de la souris sur générer un constructeur. Ensuite, vous pouvez simplement sélectionner tous les champs que vous souhaitez initialiser, vous verrez par le constructeur et nous disons, OK, et cela génère exactement la même chose que nous avons fait précédemment. Je voulais le mentionner parce que cela peut parfois être très utile, n'est-ce pas ? Il y a donc beaucoup de choses ici qui peuvent être générées automatiquement. Gardez cela à l'esprit également. Mais faisons aussi un autre noir. Donc, pour illustrer cela, alors le chien Gracie est égal à un nouveau chien, n'est-ce pas ? C'est le gros point PNG, Gracie, et je crois que Gracie avait cinq ou cinq ans, c'est très bien. Maintenant, sortons cela aussi. Je sélectionne donc ce Control C, Control V pour le coller , puis changer la variable ici et une sorte de Benji en Gracie. Et bien sûr, cela fonctionne aussi maintenant et il va avoir des valeurs différentes. Encore une fois, ce sont les deux chiens de raid, mais ce sont deux chiens différents. Il y a donc deux objets différents. Et j'espère que la théorie de la dernière conférence se répercutera très facilement vers cet exemple illustratif ici, une fois que nous l'utilisons réellement, elle deviendra très claire. Et nous le ferons aussi, c'est que nous changerons simplement ce loup que vous êtes en fait pour ce nom de point, juste waft. Ce que nous pouvons voir, c'est aussi que lorsque nous appelons cette méthode, une fois de plus, cette méthode en particulier, nous devons faire appel à un objet particulier, n'est-ce pas ? Nous devons donc sauver Benji dot ou racy dot devrait tous avoir du sens. Et maintenant, ce qui va se passer, c'est que ce ne sera pas la même chose pour chacun d'entre eux, n'est-ce pas ? Benji vient de déménager ou Gracie est juste Swift. Cela fait donc encore une fois référence à l'objet réel où cela est appelé pour ainsi dire. C'est donc l'idée. Et puis une dernière chose qui pourrait être un peu différente ou un peu bizarre. C'est comme, eh bien, attendez une seconde. âge de Benji Dot, non ? D'accord. Puis-je simplement attribuer ça à quelque chose ? Oui, je peux. Eh bien, c'est très intéressant, non ? Tout d'un coup, non ? Benji a 10 ans et vous pourriez être comme, Attendez, ce n'est pas, ça n'a aucun sens, n'est-ce pas ? Il n'y en a que sept. Ce n'est pas juste, est-ce que oui, cela a maintenant été sauvé. Et c'est quelque chose que nous allons examiner lors la prochaine conférence en ce qui concerne les modificateurs d'accès. Parce que tout cela étant public signifie essentiellement que vous pouvez modifier cela et y accéder depuis n'importe où dans le code. Et parfois, ce n'est pas ce que nous voulons. Vous voulez parfois restreindre l'accès à certains champs, variables, méthodes, tout ce jazz essentiellement. Et comme je l'ai dit, nous allons y jeter un coup d'œil lors de la prochaine conférence. Cependant, ce serait le cas pour cette conférence ici même. J'espère que cela vous a été utile et que vous en apprendrez quelques-unes des nouveautés. Et je vous verrai lors de la prochaine conférence. Donc, oui. 26. Modificateurs d'accès (Java): Bon, bienvenue dans l'introduction de Java ici pour Minecraft matin et dans cette conférence, nous allons examiner les modificateurs d'accès. Vous aurez donc besoin de tout le code de la dernière conférence. Ne vous inquiétez pas, bien sûr, cela vous est disponible en tant que ressource. Alors, jetez un coup d' œil là-dessus et ensuite, nous allons juste sauter directement. L'idée était donc que nous avions tous nos champs ici en tant que public, n'est-ce pas ? Donc, tout était public ici. Et on se disait, eh bien, d'accord, alors comment allons-nous utiliser ça ? Ou comment pourrons-nous ne pas rendre certains Thiel modifiables ou modifiables ici en dehors de cette classe. Eh bien, passons en revue tous les modificateurs d'accès. Il y a donc public, protégé et privé. Ensuite, il y a deux autres choses que nous allons voir qui sont statiques et le final, eh bien, ce ne sont pas vraiment des modificateurs d' accès, mais ce sont aussi des modificateurs que vous pouvez mettre devant les champs. et, ou méthodes. Donc, quand il s'agit de protéger le nom, par exemple , ici, cela ne fera rien. Maintenant, la raison pour laquelle il ne fait rien est qu'un champ protégé ou une méthode protégée peut être appelé dans le même paquet. Et parce que le chien et la classe principale ou dans le même paquet, nous pouvons toujours nous référer à ce domaine ici. Et le mot-clé protégé fonctionne également ou classes qui s'étendent de là. En gros, les actifs héritant de la classe de chiens pourraient désormais également utiliser la variable name. Qu'en est-il de la variable d'âge ? Eh bien, faisons ce qui suit. Faisons en sorte que ça soit privé. Et tout d'un coup, nous pouvons voir des problèmes connexes, n'est-ce pas ? Tout devient fou. Tout le monde panique parce que tout d'un coup, nous pouvons y accéder parce qu'une variable privée n'est accessible que dans la même classe, ce qui signifie que nous ne pouvons pas y accéder directement. Cependant, nous pouvons faire quelque chose qui va être une méthode, renvoie cette valeur. C'est donc ce qu' on appelle une guitare. Et ce que nous pouvons faire, c'est que nous pouvons cliquer avec le bouton droit sur Générer et vous pouvez voir que nous pouvons réellement générer des getters et des setters. Les réglages sont à peu près la même chose que lorsque vous définissez le taux variable. Donc, là où vous pouvez définir cela et un getter, c'est juste la chose où vous obtenez ceci. Je peux donc sélectionner la variable d'âge et dire, ok, et voir qu'elle génère une méthode pour nous entier public parce que bien sûr c'est le type de retour ici, obtenir l'âge. C'est donc ainsi que vous entendiez ceci ou que le nom de celui-ci était généralement obtenu , puis juste le nom de la variable ou du champ. Et puis nous retournons de l'âge dans cette méthode. Et puis, au lieu de l' appeler directement, on peut dire à l'âge, à l'âge ou à l'âge. Et maintenant, voici ce qui est intéressant. Bien sûr, cela ne fonctionne pas car nous ne pouvons pas attribuer quelque chose à une méthode. Par conséquent, cela ne fonctionne pas, n'est-ce pas ? On peut donc dire que ça ne fonctionne pas. Nous ne pouvons donc pas attribuer de nouvelle valeur à cette variable d'âge. C'est vraiment ce qui est cool. Ensuite, nous pouvons également avoir un mot clé statique et un mot clé final. D'accord, qu'est-ce que c'est ? L'électricité statique va être très intéressante. Donc, quand j'ai un int statique public, et que je vais appeler ça le chien au multiplicateur d'oreille humaine. Multiplicateur, qui est égal à sept si je ne me trompe pas ici. Et c'est ce que nous pouvons penser de cette façon. Chaque chien doit-il avoir un champ spécifique pour lui, c' est-à-dire ce multiplicateur ? Je veux dire, si on est vraiment honnête, pas vraiment, vrai, quand on y pense. Le docteur ici, Dr. multiplicateur de l'année humaine est vraiment quelque chose qui fonctionne pour tous les chiens. Exactement. C'est pourquoi il est statique. agit d'une variable statique ou d'une méthode statique et est effectivement appelée sur la classe et il ne nécessite pas création d'objets spécifiques. Donc ce que je peux faire, c'est , par exemple, au lieu d' appeler Benji que HE, je peux dire chien, point, humain, médecin, multiplicateur d' année humaine. Vous pouvez voir que j'appelle cela sur la classe réelle et non sur l'objet. C'est donc très intéressant. Et cela pourrait vous briser un peu le cerveau ici, parce que d'abord, entrer dans la statique est un peu bizarre et cela semble peut-être très contre-intuitif à première vue, mais pas de soucis du tout. Quand on utilise vraiment ça, ça va se passer. Et l'essentiel est que, vous savez, si quelque chose de statique est généralement le même pour tous les objets, n'est-ce pas ? Parce qu'une fois de plus, vous, le multiplicateur de l'année humaine, ne changez pas du Dr Dog. Maintenant, ignorons le fait que cela change peut-être s'il y a des races différentes et des trucs comme ça. Ignorons simplement cela. C'est juste un exemple ici, bien sûr, non ? Et puis la question est aussi, eh bien, attendez une seconde. Cela n'a vraiment pas besoin de changer, n'est-ce pas ? Parce que maintenant, nous avons encore une fois le même problème, n'est-ce pas ? Donc les chiens, votre multiplicateur et tout d'un coup est égal à dix, on peut juste changer cela et c'est comme si ce n'était pas vraiment intelligent, non ? Cela ne doit pas nécessairement arriver. Heureusement, il y a aussi le dernier mot clé. Et cela fait en sorte que si j' appuie sur Control Z pour revenir en arrière, vous pouvez voir que vous ne pouvez pas attribuer une valeur à une variable finale car une variable est une variable finale que la valeur ne peut jamais changer. une fois qu'il a été attribué. C'est également très intéressant. Cependant, il existe bien sûr une différence nette entre un privé et un taux variable final. Parce qu'une dernière variable nous pourrions en théorie changer, n'est-ce pas ? Nous pourrions dire quelque chose comme, par exemple, allons simplement faire un vide public et public. Anniversaire public nul, non ? Pour un chien, où on dit âge plus. Mais cela fonctionne toujours même si c'est privé, nous pouvons modifier cette variable. Nous ne pourrions jamais modifier cette variable une fois qu'elle sera définitive. C'est donc la différence, qui est compréhensible en ce sens, n'est-ce pas ? Examinons donc nouveau le rythme suivant. Donc, nous pouvons aussi dire quelque chose comme : Eh bien, je veux dire, ajoutons un, ajoutons simplement une chose de plus, quelque chose comme un int public. Donc GetAge dans les années humaines, c'est vrai, où nous pouvons utiliser le multiplicateur ici que nous allons retourner la variable d'âge le médecin ici, médecin humain, le multiplicateur d'année humaine juste là. Maintenant, nous pouvons simplement appeler cela habitude, vous pouvez bien sûr aussi dire le point de chien. Nous n'avons pas à le faire parce que nous sommes à l'intérieur de la classe de chiens, donc nous pouvons simplement l'appeler sans cela. C'est une préférence très personnelle, que vous vouliez ou non le faire. Mais ce que nous pouvons dire, par exemple, c'est que nous pouvons dire que Benji dot vieillit dans les années humaines, et ce sera alors, qu'est-ce que c'est ? 49 ? Oui, 49 ans. Vous y allez. C'est tellement facile. Mais c'est en quelque sorte l'essentiel général. Nous avons des services publics, protégés et privés pour les modificateurs d'accès. Et puis il y a aussi des éléments statiques et finaux. Et nous le ferons certainement, nous allons rencontrer toutes ces personnes lors de conférences futures, surtout lorsque nous aborderons le modding micro-ondes, cela va être très pertinent ici, surtout quelque chose comme le mot clé final et le mot-clé statique, ils seront beaucoup utilisés. Encore une fois, s'ils ne sont pas clairs, c'est tout à fait très bien. Pas de soucis du tout. Une fois que vous commencerez à travailler avec eux, il va s'en sortir plus clairement. Et encore une fois, je peux vous conseiller d'essayer un tas de choses. Il suffit d'allumer intelligemment , de faire un tas de cours et d'essayer un tas de choses. Faites quelques cours, faites quelques champs, tout un tas de choses. Vous ne pouvez rien casser. Pas vraiment. Il s'agit donc simplement d' être ouvert à l'expérimentation. C'est donc un conseil que je peux vous donner. Mais sinon, ce serait le pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 27. (Java) Inheritance et polymorphisme: Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons parler d'héritage et de polymorphisme. Eh bien, tout d'abord, un taux de polymorphisme et d'héritage pour de très grands mots. Mais dans l'ensemble, ce sont des concepts assez simples, surtout le polymorphisme n'est-il pas fou d'un concept en fait ? Maintenant, un autre avertissement que je tiens à dire dès le départ est que, parce que c'est un exemple, le concept réel pourrait ne pas être transparent à 100 %, ce qui est tout à fait correct. Au fait, c'est quelque chose qui, encore une fois doit être construit en essayant un tas de choses, non ? J'ai généralement pensé à la même chose. J'ai entendu dire. J'ai oublié. Je vois. Je m'en souviens. Je le sais. Je comprends. doit donc toujours y avoir des actions qui vont de pair avec cela. Quel que soit le cas. Disons que, par souci de dispute, quelqu'un dit : Vous savez quoi ? Je veux vraiment un cours de chat aussi, parce que je ne suis pas un chien , c'est très bien. C'est tout à fait correct. Eh bien, ajoutons un cours de chat ici aussi. Donc, une nouvelle classe, Cat. Et voilà que tu y vas. Maintenant, ce que vous allez vite réaliser, c'est que, comme soyons honnêtes, le rein du chat devrait également avoir une photo , un nom et un âge. Et vous pourriez être comme, eh bien, je veux dire, nous allons simplement copier ces champs. Et puis vous pourriez être comme, eh bien, j'ai aussi besoin d'avoir de l'âge que le receveur, puis le loup, peut-être le bébé. Je suis Mimi Chao et vous en arrivez à un point où vous copiez beaucoup de code et que généralement tabuter beaucoup de code est un signe que vous pouvez optimiser quelque chose. Maintenant, l'optimisation prématurée est la voie de l'enfer. Je comprends cela. Cependant, parfois, cela a beaucoup de sens où vous avez comme cela copié, copié, copié, et c'est comme, faisons simplement une méthode ou une classe à partir de celle-ci ou autre chose. Et que quelque chose d'autre va être une super classe pour le chat et un chien qui est la classe animale. Nous allons donc créer une nouvelle classe appelée animal, et cela va maintenant stocker ça. Je vais donc découper ça avec Control X, Control V pour coller ça ici. Et maintenant, tout d'un coup, ce que nous pouvons faire, c'est que nous pouvons étendre la classe des chiens par classe Animal, ce qui signifie que le, faisons-le bien ? Nous allons donc tout hériter de l'animal ici. Nous allons dire qu'il s'étend à l'animal, et c'est maintenant l'héritage. La classe de chiens est donc maintenant la sous-classe des animaux, et l'animal est maintenant la superclasse du chien, ce qui signifie que tout ici a été hérité. Maintenant, je peux littéralement supprimer cela. La seule chose qui va devenir rouge, c'est l'âge, car je dois en fait protéger cela ici pour qu'il soit accessible dans la sous-classe. Mais nous l'avons vu lors de la dernière conférence où j'ai dit que lorsqu'il s'agit d'une variable protégée, vous pouvez également y accéder depuis la sous-classe. C'est donc en quelque sorte l'idée. Débarrassons-nous de quelques-uns de ces commentaires ici également. Nous pouvons également nous débarrasser du constructeur par défaut qui n'est plus nécessaire. Maintenant, nous avons cette classe d'animaux, n'est-ce pas ? Et c'est plutôt cool. Maintenant, vous pouvez voir que grâce à cette classe Dog, tout est en cours de préparation ici. Cependant, nous voulons nous assurer que tout le monde, que chaque classe héritant réellement de la classe Animal fonctionne également. Nous allons donc créer un nouveau constructeur aussi. Cliquez avec le bouton droit de la souris, générez un instructeur, assurez-vous que tout est sélectionné ici , puis appuyez sur OK. Et puis nous allons immédiatement être accueillis avec une flèche ici. Parce que si nous survolons cela, vous pouvez voir qu' aucun constructeur par défaut n'est disponible dans un animal de zoo net com. Qu'est-ce que cela signifie ? Eh bien, lorsque vous ajoutez un constructeur spécifique ici, ce n'est pas le constructeur par défaut. Le constructeur par défaut ne fonctionne plus. Donc, une fois que vous avez un constructeur qui n'est pas le constructeur par défaut, vous devez l'ajouter à nouveau comme manuellement. Je pourrais donc, par exemple, dire animal public, n'est-ce pas, sans rien dedans, non ? Donc, quelque chose comme ça. Cependant, bien sûr, ce n'est pas le cas. Maintenant, vous savez, encore une fois, nous ne voulons pas vraiment cela. Cela va donc être supprimé et le constructeur par défaut ne fonctionne plus. Et maintenant, que doit-on faire ici ? Eh bien, ce que nous pouvons faire, c'est que nous pouvons appeler le super-héros, et cela appelle essentiellement le constructeur. Donc, nous pouvons réellement mettre en PI, comme vous pouvez le voir, cela suggère déjà, disons que prenons tous les paramètres ici et les mettons en année. Et maintenant, ce super appelle maintenant le constructeur Animal ici. C'est vraiment parfait dans ce cas. Ensuite, quelque chose d'autre, peut-être par exemple, à la fois l'âge et la naissance. Ils peuvent également appartenir à la classe des animaux, par exemple. Cela fonctionnerait également très bien. Et le reste ici est tout à fait correct. Je vais juste rendre ça un peu différent. Je veux donc généralement que les constructeurs au sommet de la classe, n'est-ce pas ? Tout d'abord, les champs , puis les constructeurs, puis toutes les méthodes et autres choses comme ça. Bien que l'ordre, bien sûr, soit quelque chose qui dépend entièrement de vous, mais c'est généralement la convention 0. Maintenant, que se passerait-il si je disais maintenant, le chat étend également la classe des animaux. Nous allons, nous allons avoir une erreur ici, c' est-à-dire qu'il n'y a pas de constructeur par défaut disponible dans animal. Et puis nous avons cette solution était possible, qui est le constructeur de création de correspondance super, ce qui est quelque chose que nous allons voir beaucoup de fois. Parce que si vous cliquez dessus, vous obtiendrez simplement un nouveau constructeur avec tous les paramètres nécessaires pour appeler le constructeur de votre superclasse. Et c'est à peu près tout. C'est vraiment cool. Et maintenant, nous pouvons créer une nouvelle classe. Vous pouvez voir que tout fonctionne ici. On peut dire que les moustaches à chat sont un nouveau chat, n'est-ce pas ? Donc, un nouveau compte ici. Et c'est par exemple, alors les moustaches pointent PNG. Et puis le nom va être moustaches, n'est-ce pas ? Et peut-être qu'ils ont 12 ans ou quelque chose comme ça. Et puis nous pouvons simplement appeler, par exemple, moustaches dot ns peuvent voir que je peux appeler tout avoir de l'âge. J'ai maintenant accès à la variable d'âge ici. C'est simplement le cas parce que nous sommes dans le même paquet. Cela ne devrait généralement pas être le cas. Je voulais juste mentionner cela parce que généralement, lorsque vous étendez réellement une classe particulière, il est très peu probable que vous soyez dans le même paquet. Je voulais juste mentionner cela. Et c'est une, eh bien, je ne dirais pas une limite, c'est juste une réalité fondamentalement. Mais maintenant, la vraie question, en communiquant maintenant, qu'est-ce qui est si intéressant à avoir cela ? Eh bien, réfléchissons à ça, non ? Nous avons donc la méthode du loup ici, non ? Supprimons simplement cela ou soyons encore plus intelligents. Il suffit de copier ça ou de le découper, non ? Et puis ajoutez-le à l'animal. Tout d'abord, vous allez dire, attendez une seconde, pas tous les animaux, Wolf a raison. Oui, c'est assez juste. Alors appelons que ça fait du son. Et puis on peut dire ce nom, juste, disons qu' il vient de faire un son. Nous ne pouvons donc pas le faire. Et une autre chose vraiment intéressante est que cela est défini dans la classe des animaux. Cependant, je peux toujours dire quelque chose comme des moustaches, le point point fait sonner ? Parce que les moustaches sont un chat et qu'un chat est un animal, je peux encore appeler toutes les méthodes publiques ici. Et si j'appelle ça, on peut voir des moustaches qui viennent de faire un son. C'est plutôt cool. Mais maintenant, nous allons surcharger cela parce que même si chaque animal fait un son, un chat émet un son différent de celui d'un chien, n'est-ce pas ? Ce que nous pouvons faire, c'est que nous pouvons réellement remplacer l'implémentation de cette méthode dans les sous-classes. C'est donc assez fréquent, cool. Mais ce que nous pouvons faire, c'est que nous pouvons soit commencer à taper le nom réel de la méthode comme vous pouvez le voir, soit écrire un remplacement, n'est-ce pas ? Nous pouvons commencer à écrire cela. Ensuite, vous pouvez voir toutes les méthodes possibles que nous pourrions remplacer. Nous allons bien sûr choisir la méthode du son du micro ici et cette annotation sera ajoutée. Ce n'est pas strictement nécessaire, mais il est très précieux pour vous si vous avez et je vous recommande vivement de le garder, car si vous passez par les cours réels, vous pouvez très clairement voir, Ok, donc ça a été remplacé par l'une de ses superclasses. C'est donc très important. Alors, je vais juste prendre celui-ci. Donc, je vais vraiment prendre ça et juste modifié un tout petit peu, n'est-ce pas ? Donc, je vais dire ça, juste moi dehors. Disons que je vais faire la même chose. Copiez ça au chien ici. Et je vais dire ce nom, il suffit de bouger la boue, avoir quelque chose de différent ici. Et ce que vous verrez alors si j'appelle réellement Benji, par exemple, ne fait pas de son. Et je vais aussi voir Gracie, ne fais pas de son. Que va-t-il se passer maintenant ? Eh bien, c'est très intéressant. Miaou, Woof, Woof. Ainsi, comme vous pouvez le constater, les méthodes remplacées sont maintenant appelées la place de celle par la superclasse réelle. C'est vraiment fréquent, cool. Et maintenant, c'est en quelque sorte l' idée de l'héritage, n'est-ce pas ? Nous pouvons hériter à la fois des méthodes et des champs ici dans ce qui fait que tout d'abord, tout est un peu plus bien séparé, et ensuite nous n' avons pas de code dupliqué. La vraie question est maintenant : qu'est-ce que le polymorphisme ? polymorphisme est un grand mot pour désigner un concept très, très facile à comprendre. En fait, dans le concept très facile à comprendre, c'est qu' un chien est simultanément un chien et qu'un animal devrait avoir du sens, non ? Donc, vous avez un cours de chien qui est à la fois un chien ou un objet de type ? Le chien est à la fois un chien et un animal. Assez juste. D'accord. Qu'est-ce que cela signifie ? Je peux sauver ça chez un animal, n'est-ce pas ? Je peux donc sauver l'animal, l'animal est égal à un nouveau chien. Disons simplement jeoneun point PNG. Jenny. La Guinée a peut-être 15 ans. Tout est sombre, mais c'est bon. Et maintenant, que se passerait-il si je faisais ça dans un point de taupe. Que va-t-il se passer maintenant ? Je veux dire que c'est un animal. Donc évidemment, il faut dire que Jenny vient de faire un son, n'est-ce pas ? Parce que c'est la chose la plus logique. Attendez une seconde en arrière-plan, c'est un chien. Exactement. Puis il vient de déménager. Parce que même si nous l' enregistrons chez un animal, polymorphisme permet l'objet chien de prendre plusieurs formes, ou n'importe quel objet peut réellement prendre plusieurs formes. C'est ce que signifie essentiellement le polymorphisme. Plusieurs forums dans une traduction très lâche, disons. Et ce que je peux aussi faire, c' est que je peux faire une liste d'animaux, par exemple, des animaux. Et je peux en faire une nouvelle ArrayList juste par souci d'argumentation. Importons ça. Et puis je peux juste dire animaux, pas ajouter. Et je n'ai pas seulement à ajouter un animal car Benji est bien sûr un chien, mais le chien est aussi un animal. Et puis je peux aussi ajouter Gracie, puis ajouter des moustaches. Comme vous pouvez le voir, même s' ils sont tous sauvés en tant qu'animaux, n'est-ce pas ? Si je veux les récupérer, les animaux en reçoivent un, par exemple, faire du son. Donc, ça s'en sort, oui. Oh, c'est vrai. Et la méthode Get ici vous ramène un animal. Mais encore une fois, nous avons vu que l'appel d' une méthode à ce sujet provoquait la méthode la plus spécifique possible. Donc, même si cela est sauvegardé en tant qu'animal, Gracie est sauvé en tant qu'animal ici, le son du micro va faire en sorte que Gracie, juste, c'est plutôt cool. Encore une fois, si vous ne voyez pas clairement la demande pour cela, c'est tout à fait très bien. C'est une introduction très abstraite pour cela, bien sûr. Cependant, pour le moment, ce serait pour cette conférence ici même. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 28. Interfaces de Java et cours abstraits à la syn: Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons examiner provisoirement les interfaces et les classes abstraites. Nous allons donc commencer par la classe abstraite d'abord parce que c'est un exemple très illustratif. Ce à quoi nous pouvons penser, c'est ce qui suit. Qu'est-ce qu'un chien ? Eh bien, je veux dire, vous avez déjà vu un chien ? Oui, bien sûr. Je veux dire, soit en photo, soit quelque part dans le monde, vous avez peut-être vu un chien. Avez-vous déjà vu un animal ? Maintenant, vous pouvez dire que c'est bien, je veux dire, j'ai déjà vu un chien , mais non, non. Avez-vous déjà vu un animal ? Et vous allez vous rencontrer et fusionner, non ? Parce que c'est comme, qu'est-ce qu' un animal en ce moment, ce que nous pouvons faire, c'est que nous pouvons dire animal, disons qu'un est égal à un nouvel animal, n'est-ce pas ? Avec, par exemple, comme x, p et g x et ça comme 10 ans ou quelque chose comme ça. Et alors vous pourriez être comme, à quoi ressemble un animal ? Ce que cela représente vraiment chez l' animal, c'est un concept très, très abstrait. Et des cours abstraits, non ? Vous voyez la congruence là-bas, n'est-ce pas ? Donc, vraiment, nous ne devrions pas être en mesure de créer de nouveaux objets de la classe Animal car à quoi ressemble vraiment un animal ? Les choses peuvent être classées comme des animaux, mais l'animal objet n'existe pas, n'est-ce pas ? Donc, ce que nous allons faire, c'est que nous allons créer un cours abstrait public à partir de ça. Et vous allez immédiatement voir que nous avons un problème connexe, ce qui est bien sûr exactement ici, parce que nous ne pouvons pas créer un nouvel animal s'il est abstrait, vous pouvez voir que l'animal est abstrait, ne peut pas être instancié, ce qui signifie que nous ne pouvons pas créer d'objets en classe abstraite chez le chat et le chien. Rien n'a littéralement changé car, bien sûr, l'animal est toujours là, donc ça marche. Maintenant, ce que nous pouvons aussi faire et c'est vraiment cool pour une classe abstraite, c'est que nous pouvons rendre certaines méthodes abstraites. Par exemple, la méthode du son du micro ici. Donc, nous pouvons simplement simplement supprimer cela. Et puis, ce qui va se passer, c'est que nous pouvons dire public, abstrait, nul, faire du son, n'est-ce pas ? Et maintenant, regardez ça, nous venons de finir. Nous devons donc toujours avoir une année de signature de méthode normale. Cependant, l' implémentation réelle est laissée aux sous-classes. Et si nous ne pouvions pas passer outre cela, ce que vous pouvez voir, c'est que chien de classe doit soit avoir déclaré abstrait. Donc, soit cela doit également être une classe abstraite soit nous devons implémenter les méthodes abstraites d'animal qui peuvent simplement survoler cela dans les méthodes d'implémentation , puis cela sera ajouté également. Je vais juste revenir avec Control Z ici et tout fonctionne très bien. C'est donc en quelque sorte l'idée d'une classe abstraite. Et une interface est amine, quelque chose qui est également très lié à cela. Ce que nous allons faire, c'est que nous allons simplement ajouter une interface, donc une nouvelle classe ici, puis nous pourrons sélectionner l'interface. Nous allons appeler cela l'interface pétale et l'interface IP comestible. Vous êtes dans les interfaces. Nous ne faisons que définir une signature de méthode. Donc nul, animal de compagnie Par exemple, des taux de symboles comme celui-ci, et c'est tout. Donc, pas de modificateur d'accès, juste ça. Et si cette interface est implémentée maintenant par exemple, dans les outils de droite chat, nous avons le droit, alors je suis appétissant que ce que vous verrez est une erreur très similaire à celle qu'auparavant. Mettre en œuvre les méthodes, la méthode et l'ego. Et maintenant, je dois avoir une sorte de mise en œuvre dans cette classe de chats. Pourquoi avons-nous des interfaces et des classes, vous savez, ne pourrais-je pas simplement créer un autre cours ? animal comestible et des trucs comme ça ? Oui, bien sûr, ça fonctionne aussi. Mais la limite ici est qu'on peut toujours s'étendre qu' à partir d'une seule classe. Vous ne pouvez cependant pas implémenter plusieurs interfaces différentes. C'est vraiment ce qui est intéressant ici. Et ensuite, l'interface est essentiellement ce que le nom suggère. Il vous permet d' interfacer quelque chose d'une manière particulière. Donc, quand quelque chose implémente une interface, vous avez en quelque sorte un, je veux dire, vous pourriez penser que c'est comme un contrat non écrit que tout ce qui se trouve à l'intérieur de cette interface a définitivement un certain mise en œuvre. Par exemple, je pourrais dire quelque chose comme, vous savez, juste ce nom était animal de compagnie, quelque chose comme ça, non ? Et ensuite, je peux simplement copier ça juste pour me disputer. Je vais aussi mettre en œuvre cela chez le chien ici. Donc je pédale et je vais juste ajouter ça, puis on va dire quelque chose comme s'il avait été rayé et égratigné derrière les oreilles, par exemple, non ? Et maintenant, ce que je peux faire, c'est plutôt que, par exemple, de faire une liste d' animaux, je pourrais, par exemple, aussi faire une liste d'iptables, n'est-ce pas ? Maintenant, nous avons ces animaux de compagnie qui évaluent la nouvelle ArrayList de cela, et nous pouvons les ajouter aussi, n'est-ce pas ? Les animaux domestiques ajoutent. Et puis disons simplement Benji, puis disons simplement des moustaches, n'est-ce pas ? Et maintenant, nous pouvons créer un zoo pour enfants si nous le voulions. C'est vraiment cool. Et ça n'a pas d'importance. Encore une fois, avec le polymorphisme, peu importe qu'ils soient sauvés en pétales. Une fois de plus, leur implémentation réelle est appelée Quand nous devions appeler, par exemple, Pets dot get one. Ensuite, ce qui se passerait, c'est que la mise en œuvre réelle est appelée moustaches a été corrigée au lieu des moustaches a été rayée derrière les oreilles. C'est en quelque sorte l'idée générale ici. Une fois de plus, les classes abstraites sont inter Dans la même veine que l'héritage et le polymorphisme en général. où cela peut être un peu bizarre parce que dans ces exemples, il est parfois difficile de vraiment contourner l'idée. Encore une fois, essayer un tas de choses peut vraiment aider ou suivre les tâches, est également une entreprise valable. Mais sinon, pour le moment, ce sera 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. Et je vous verrai lors de la prochaine conférence. Donc, oui. 29. PROJET 3 : Mise à jour de Trivia Game: Très bien, Bienvenue dans la troisième mission ici pour l'introduction de Java. Et il s'agit en fait d'une tâche assez simple. Comme vous pouvez le constater, ce n'est pas si long. Encore une fois, le temps qu'il faut pour faire cela peut être environ une heure environ, comme généralement une estimation très conservatrice. Il y a donc un peu de marge de manœuvre, ils sont peut-être en mesure de le faire en 30 minutes, non ? Ne vous inquiétez pas du tout. Mais pour le moment, passons par ici. Jeu de trivia avec des classes et des objets. Une fois de plus, nous voulions le même jeu de questions que celui que nous avons fait lors des deux dernières missions. Je veux essentiellement que vous modifiiez les jeux trivia qu'il utilise également les classes. Maintenant, cela peut être de n'importe quelle manière, forme ou forme qui pourrait être le cas. Pensez à la façon dont vous pourriez créer des classes personnalisées qui, vous savez, sauvegardent les réponses et les questions peuvent être ensemble. Vous pouvez peut-être utiliser une liste, quelque chose comme ça. C'est vraiment à vous de décider comment vous voulez structurer cela. Mais réfléchissez simplement à la façon dont vous pouvez rendre cela plus facile avec les classes et les objets, puis essayez cela. Bien sûr, une fois de plus, la solution sera à votre disposition une fois que vous aurez terminé, je vous suggère fortement de prendre une fissure et de vraiment essayer cela. Et je suppose que je vous verrai dans la solution. 30. SOLUTION 3 : Mise à jour de Trivia Game: Très bien, Bienvenue dans la solution pour la troisième mission ici. Et bien, je veux dire, je suppose que nous allons juste jeter un coup d'œil. Vous pouvez voir que je n'ai en fait que deux classes, une classe de jeu trivia et une classe trivia. Et la classe de jeu trivia contient essentiellement toute la logique et la boucle de jeu. Et la classe trivia contient les questions et les réponses. Jetons donc un coup d'œil à la classe triviale. Tout d'abord, permettez-moi de zoomer un peu ici pour que nous puissions voir que j' ai une question de chaîne, une réponse de chaîne et juste un constructeur qui transmet ces deux variables de réduction ici. Et puis j'ai un tas de méthodes ici, bonne réponse est fondamentalement un booléen et s'assure également que tout est en minuscules. Donc l'entrée est réellement mise en minuscules, cependant, que vous pouvez mettre en majuscules et elle compte toujours comme la bonne réponse. Nous avons ici la question imprimée, la réponse imprimée. Nous avons également validé la réponse qui apporte une réponse, Hé, c'était une réponse correcte, ou c'était une réponse incorrecte. Et c'est à peu près la classe trivia. Encore une fois, si cela ne ressemble pas exactement vôtre, c'est tout à fait très bien. Ce n'est qu'un exemple de la façon de procéder. Et puis il en va de même pour le jeu de trivia, n'est-ce pas ? Nous avons ici une liste de trivia. Ce sont donc toutes les questions essentiellement qui sont peuplées ici. Donc, c'est ce qu'on appelle, désolé, dans la méthode de démarrage du jeu, n'est-ce pas ? C'est donc la première chose qui se passe, liste de trivia peuplée. Et c'est fait ici, où nous avons juste une nouvelle ArrayList , puis nous ajoutons un tas de ces triviaux à la liste actuelle ici. Et c'est vraiment cool car cela peut maintenant être fait via une lecture, à partir d'un fichier ou, vous savez, en téléchargeant des trucs depuis Internet. Cette méthode pourrait donc très facilement être remplacée par autre chose. Et c'est vraiment la puissance lorsque vous faites cela séparément dans ces classes, juste avant que nous ayons ces variables de chaîne individuelles, il n'y avait aucun moyen de changer cela très facilement. Dans ce cas, nous pourrions modifier cette base de données en bois sur cela. Vous pourriez mettre, comme je l'ai dit, quelque chose sur Internet. Vous pouvez faire presque n'importe quoi, lire à partir d'un fichier. Et c'est vraiment ce que vous voulez faire avec les cours. Vous voulez créer ce genre de générique dans le sens où vous pouvez très facilement y ajouter et soustraire des éléments. En général, ajoutez, bien sûr, non ? Et puis il y a un tas d' autres choses ici aussi, non ? La boucle de jeu est donc la principale chose où nous avons cette boucle infinie ici, où nous passons simplement en revue chacune des questions, validant les réponses en obtenant l' entrée de l'utilisateur, puis le score si la réponse est réellement correcte. Ensuite, nous allons simplement imprimer la partition après chacune des questions. À la fin, nous avons demandé : « Hé, devrions-nous abandonner le jeu ? Et si l'utilisateur dit oui, il suffit de s'en sortir et d'imprimer le score final à la fin de la partie. C'est plutôt cool. Toutes choses considérées, c'est à peu près tout ce dont vous avez vraiment besoin. Encore une fois, si votre réponse est différente, ne vous inquiétez pas du tout. Mais j'espère que vous avez cette réponse que vous pourrez aborder et essayer de comprendre, d' accord, eh bien, comment pourrais-je faire cela ? Pourquoi cela a-t-il été fait ? Vous savez, les méthodes, ok, c'est des cours très intéressants. C'est en quelque sorte l'idée ici. Mais pour cette solution, ce serait ça. Et j'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 31. DÉSIGN° 4 : Système de gestion de banques: Très bien, Bienvenue dans la quatrième mission ici pour l'introduction de Java. Et dans cette mission, vous êtes censé créer un système de gestion bancaire. Dans l'ensemble, cela peut tout d'abord sembler très compliqué, mais pas de soucis. Je vais vous guider dans l' idée que j'ai eue ici. Le système de gestion bancaire devrait donc comporter quelque chose comme ces éléments, une personne, une banque et un compte courant. Et puis, pour ouvrir un compte courant, vous devriez passer par une banque, peut nécessiter un certain dépôt initial ici. Et les composantes ou classes individuelles dont vous avez droits selon lesquels une personne peut avoir un prénom, deuxième, un nom de famille et un âge. Peut-être que c'est quelque chose comme un numéro de sécurité sociale n' est pas nécessairement nécessaire, mais vous savez, quelque chose comme ça. Une banque peut avoir une liste de clients. Leurs comptes chèques peuvent représenter un dépassement maximal, quelque chose comme ça. Ensuite, un compte courant peut avoir la valeur actuelle et les méthodes pour retirer et déposer de l'argent dans l'ensemble. C'est en quelque sorte l'idée générale. Il y a plusieurs façons d'aborder cette question. Je suis donc très intéressé de voir ce que vous proposez. Et bien sûr, la solution sera encore une fois à votre disposition. Je pense que c'est probablement un peu plus difficile. J'imagine que quelque chose comme 1,5 heure est probablement préférable de réserver pour cela afin que vous puissiez vraiment creuser et essayer de comprendre et de faire quelque chose d'assez cool. Bonne chance. 32. SOLUTION 4 : Système de gestion de banques: Très bien, Bienvenue dans la solution pour la quatrième mission. Et comme vous pouvez le constater, nous avons trois classes différentes, peu près comme je l'ai dit dans la mission réelle. Et bien, passons par là. Nous avons donc un cours de personne assez simple, lu le prénom, le deuxième et le nom de famille, et un âge ou privé cette fois-ci, et essentiellement accessible via des ghettos ici. Et puis nous avons également un booléen ici, qui indique simplement si une personne est plus âgée que ce qui a été fourni ici, qui est très intéressant. Et le compte ici est également intéressant, non ? Nous avons un ID de compte équilibré. À ce stade, il n'est pas vraiment utilisé à ce point, mais il est très possible que vous puissiez faire quelque chose avec cela et ensuite aussi un titulaire de compte. Et cela est utilisé dans la banque pour obtenir un compte spécifique ici. On peut donc voir avoir une liste de comptes, n'est-ce pas ? Et la façon dont nous pouvons obtenir un compte est d'obtenir compte par personne. Mais c'est de cette façon que j'ai personnellement en ce moment les comptes ici. Et le reste, c'est à peu près le compte bancaire, n'est-ce pas ? Donc, si vous pouvez ouvrir ce compte, est-ce le cas ? Et cela valide essentiellement si quelqu'un 16 ans ou plus de 16 ans, et aussi si le dépôt minimum a été atteint ou non . Il y a en fait un petit bug ici, non ? Dans cette méthode, c'est très intéressant. Vous pouvez essayer de le trouver vous-même. Juste un peu un exercice intéressant aussi. Mais sinon, vous savez, dans l'ensemble, ce n'est qu' un exemple de cela. On peut juste jeter un coup d'oeil là-dessus, non ? Donc, ce que nous allons avoir, c'est que j'ai du code ici, donc nano tech n'est pas assez vieux pour ouvrir un compte bancaire et dix, disons que les euros ou les dollars ne suffisent pas. Nous avons besoin d'au moins 150, puis nous obtenons le solde du compte de Maria, soit 2000. Ensuite, essayer de retirer 3000 ne fonctionne pas parce que le montant du retrait est en fait 500 ou le dépassement en gros. Et c'est pourquoi cela ne fonctionne pas. C'est en quelque sorte l'idée générale ici. Encore une fois, il y a beaucoup de façons de faire si cela semble complètement différent du vôtre, mais vous travaillez toujours, c'est tout à fait très bien. qu'il en soit, j'espère qu'il s'agissait d'un exercice utile ou d'une deuxième affectation utile, vous terminez et je vous verrai lors de la prochaine conférence. Donc, oui. 33. Cours anonymes (Java): Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons regarder la classe anonyme. Qu'est-ce qu'un cours anonyme ? Eh bien, quand on hérite de quelque chose, on repense à la classe de chiens, non ? Il avait un nom, juste, et hérité de la classe animale. Et maintenant, ce que nous pouvons faire, c'est par exemple que nous pouvons faire une personne ici, n'est-ce pas ? J'ai donc toujours la classe de personnes de la dernière affectation. Par exemple, le personnel est égal à une nouvelle personne, mais c'est tellement nano attaque et il y a huit ans, disons juste pour discuter ici. Maintenant, tout va bien. Si maintenant je voulais une classe qui prolonge cette classe de personnes, qui est un manager. Maintenant, la seule chose que nous allons faire est de faire en sorte que lorsque vous obtiendrez le nom complet, vous obtiendrez également le nom comme Manager imprimé . Bon, alors, comment pourrions-nous faire ça ? On va faire un nouveau cours, non ? Et tout ça. Disons simplement que nous n'avons vraiment besoin que de celui-ci. Ce que nous pouvons faire, c'est que nous pouvons créer un cours anonyme. On peut donc dire que le gestionnaire de personnes est égal à une nouvelle personne. Mais disons simplement John Smith, non ? Disons 42. Et puis on met fin à ça. Maintenant, ce que nous pourrions faire au lieu de terminer cela par un point-virgule, une fois que nous aurons terminé, nous allons en fait faire un crochet sacré et finir le crochet bouclé final par un point-virgule. Vous pouvez voir qu' il n'y a pas de flèches ici. Parce qu'à l'intérieur d' ici, nous avons créé cette classe anonyme car c'est une classe qui étend la classe person. Cependant, il n' a pas de nom, il est donc anonyme. Et quand nous pouvons le faire , vous pouvez voir si je commence à écrire un substitut ici, je peux en fait remplacer tout ce qui se trouve à l'intérieur de la classe de personnes qui est surinscriptible. Préférez l'exemple, je peux dire nom complet et ensuite je peux dire quelque chose comme Manager, puis obtenir le nom complet. C'est donc maintenant ce que fait cette classe anonyme particulière. Et puis je peux, si je système la ligne d'impression, par exemple, nano dot obtenir un nom complet. Et puis je peux aussi faire la même chose pour le gestionnaire point GetName. Vous verrez que la nano-attaque va être une attaque nano. Et puis ce sera le manager John Smith parce que nous avons ajouté ce manager ici. Cet exemple n'est peut-être pas le plus illustrant. J'ai beaucoup de mal à vous montrer un exemple très illustratif de cours anonymes. C'est généralement plus loin que vous allez, vous savez, avec des interfaces, de l'héritage et des choses comme ça, cela devient très difficile si vous n'êtes pas dans un environnement réel où vous en avez réellement classes et quelques fonctionnalités. Mais c'est certainement quelque chose que nous verrons également dans la section modélisation du cours. Parce qu'il y a beaucoup de choses ici qui vont être nécessaires pour cela. Mais quel que soit le cas, au moins vous l'avez vu , même si nous n' allons pas entrer trop en détail ici, j'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 34. (Java) Enums et Enums avancés: Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette courte conférence, nous allons examiner les énumérations et aussi les énumérations avancées, globalement, les énumérations, vous pouvez les considérer comme des types de données qui ont des valeurs prédéfinies, et vous ne peut attribuer ces valeurs qu'à cette variable réelle. Alors créons, par exemple, une énumération de difficulté, n'est-ce pas ? Nous pouvons donc en faire une classe et ensuite changer cela en enum ici. Et ensuite, la façon dont une énumération est essentiellement structurée, c'est qu'elle possède les valeurs réelles qu'elle peut prendre juste à l'intérieur de celle-ci. Par exemple, facile, moyen et difficile, par exemple, comme les difficultés d'un jeu pourraient l'être. Et puis, pour créer une nouvelle variable pour cela, c'est à peu près une fois de plus une difficulté. Alors appelons cela la difficulté du jeu, non ? En dessous comme ça. Et ensuite, c'est égal à 2. Attribuez ceci, vous pouvez voir un point de difficulté, puis nous avons simplement ces trois valeurs comme options possibles. Disons donc simplement de difficulté moyenne ici. Et nous pouvons normalement simplement réattribuer ce droit ? Encore une fois, la difficulté est égale à 2. Difficulté, difficulté difficile par exemple. Et puis deux. Par exemple, nous pouvons également faire des déclarations IF à partir d' un jeu rétro, la difficulté est égale, égale. Maintenant, cela équivaut à quelque chose, par exemple, difficulté facile. Et ensuite, nous faisons quelque chose ici. C'est donc à peu près tout ce que c'est pour les enums normaux. Et il y a quelque chose d'intéressant pour ce que j'appelle des énumérations avancées. Pour cela, nous allons créer une nouvelle classe Java. Encore une fois, c'est le niveau d'outils, et qui va également être renommé en énumération ici, je vais en fait copier certains éléments de l'autre moniteur ici. Donc, bien sûr, cela est également disponible pour vous, un référentiel GitHub ou ajustez également. Vous pouvez voir que bien qu'il s'agisse d'une énumération, il y a un constructeur ici et nous avons quelques taux de champs. C'est très étrange. Oui. L'idée est donc que vous pouvez définir des énumérations. Bien sûr, il s'agit d'une énumération de diamants. Et juste pour des exemples généraux ici. Et ce qui est cool, c'est que ces derniers fonctionnent exactement de la même manière que les autres. Je peux donc dire qu'un niveau à deux niveaux est égal, disons, par exemple, le diamant de l' infobulle, n'est-ce pas ? Et ce que je peux alors très facilement faire, c'est que je peux dire niveau de ligne d'impression système, par exemple, multiplicateur de balise git, qui m'obtient ensuite le multiplicateur d'attaque de tout ce que le niveau a été affecté. Je peux donc avoir une, je ne veux pas l'appeler nécessairement parce qu'une liste est un peu différente, mais vous pouvez avoir des valeurs prédéfinies dans cette énumération ici, dans cette énumération. Il s'agit donc de l'énumération et vous pouvez également y accéder. Donc, en fait, cela finira vraiment, peut être vraiment utile. Et nous verrons certainement cet exemple lorsque nous fabriquons des outils, outils personnalisés ou Minecraft. C'est certainement quelque chose que nous allons voir. Mais sinon c'est à peu près tout pour les énumérations. Je voulais juste vous montrer ceci et mentionner que vous l' avez déjà vu auparavant. Sinon, ce serait le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile dans les neurones du nouveau, et je vous verrai lors de la prochaine conférence. Donc, oui. 35. Exceptions de Java et d'essayer et de attrayer: Bon, bienvenue dans l'introduction de Java ici pour la modélisation micro-ondes. Et dans cette conférence, nous allons jeter un coup d'œil aux exceptions et à l'énoncé « try and catch ». Donc, dans l'ensemble, ce n'est pas le sujet le plus intéressant, ni quel sujet le plus excitant ? Cependant, il peut être assez important . Néanmoins. Bien que des exceptions, nous en avons vu quelques-unes. Par exemple, quelque chose comme IndexOutOfBoundsException et NullPointerException. Il y avait donc quelques exceptions que nous avons déjà vues qui ont été lancées par le code réel. Et ce que nous allons faire, c'est que nous allons maintenant lancer notre propre exception personnalisée. Par conséquent, dans notre package, nous allons créer une nouvelle classe, qui est l'exception de test, car cela nécessite vraiment que nous ayons une exception de test ici. Nous allons simplement étendre la classe des exceptions ici. Et je vais en fait copier les deux constructeurs dont nous aurons besoin ici pour cela. Donc, bien sûr, tout cela est disponible dans le dépôt GitHub ou sous tension. Nous allons avoir un scanner où nous pourrons un scanner où nous pourrons simplement numériser rapidement certains systèmes de trucs ici. Et ensuite, nous allons simplement sauvegarder ce qui suit. Nous allons donc dire suivant int, et nous allons simplement enregistrer quelque chose dans un entier ici. Et juste par souci d'argumentation, ce que nous allons faire, c'est que nous allons lancer cette exception lorsque nous transmettons un chiffre 0 dans une méthode spécifique ici. Donc, privé, statique, vérification nulle pour 0. C'est très simple dans le chiffre. Et ce que nous allons juste faire, c'est nous allons dire si le nombre, si le nombre passait des valeurs résiduelles, alors ce que nous allons faire, c'est que nous allons lancer une nouvelle exception. Comment pouvons-nous faire cela ? Nous allons écrire une nouvelle exception de test, puis nous allons juste dire que le nombre est 0. Par exemple, quelque chose comme ça. Et c'est à peu près tout ce que nous devons vraiment faire ici. Ce que vous voyez, c'est que cela génère une erreur ici car Ajouter une exception à la signature de méthode. Nous devons donc avoir cela à cette méthode ici. Nous devons donc ajouter l'exception de test throws à la signature de la méthode, sinon cela ne fonctionne pas. Et si j'appelle ça maintenant, non ? Donc, si je vérifie 0, je, ce que vous verrez, c'est que cela doit également être ajouté à la méthode principale parce que cela n'est pas géré correctement, donc nous ne gérons pas cette exception. Donc, ce que vous pouvez faire, c'est que nous allons juste exécuter ça. Et si, par exemple, j' en tape un ici, rien ne se passe. Le programme se termine normalement si je mets un 0, vous pouvez voir l'exception et nombre de threads principaux et votre exception de test, chiffres très intéressants 0. Et ensuite, vous pouvez même voir où cela a été appelé, n'est-ce pas ? Voici donc, d'abord puis ici , l'exception qui a été lancée. C'est donc très intéressant. Tout d'abord, commentons cela et débarrassez-vous de la section artistique là-haut. Et ce que nous pouvons faire maintenant, c'est que nous pouvons dire, par exemple, disons que z est égal au point du scanner suivant int. Ou en fait, sautez le moi ici pour ça. C'est très bien. Nous pouvons maintenant faire une déclaration d'essai. Ce sera donc un essai avec les crochets bouclés. Et là, il va y avoir une prise avec une exception e à l'intérieur. Et il s'agit essentiellement de gérer une erreur, n'est-ce pas ? L'instruction try and catch est donc là pour gérer une erreur. Nous allons donc essayer ça ici. Faites une vérification pour 0 I. Et si une exception est détectée ou lancée, n'est-ce pas ? Et nous pouvons l'attraper ici. Et ensuite, nous pourrons faire quelque chose avec ça. Par exemple, nous pouvons simplement simplement faire quelque chose comme ça. Donc, obtenez un message juste pour l'instant, en gros, imprimez simplement ce qui se passe réellement ici, n'est-ce pas ? Donc, l'exception réelle, il y a bien sûr d'autres choses que vous pourriez vouloir faire ou devoir faire si une exception est détectée. Et puis vous avez enfin ça ici, ce que nous allons faire comme suit. Nous allons simplement imprimer enfin, juste pour voir que cela est imprimé, puis nous allons en fait copier la copie. Et cela va se produire, cela arrive toujours. Mais maintenant, ce qui est intéressant, c'est que lorsque vous gérez correctement les exceptions avec une instruction try and catch ici, alors ce qui se passe, c'est que le programme ne brise pas simplement ou qu'il ne se limite pas à sa fin, elle se poursuit en fait. Donc ce que vous pouvez voir, c'est que tout d'abord, quand j'appelle, quand je mets un 1 par exemple, n'est-ce pas ? Donc, un jour, vous y allez enfin, et cela arrive toujours. Ainsi, comme vous pouvez le voir, il est toujours froid et on appelle toujours cela aussi, n'est-ce pas ? Et ce qui est intéressant, c'est que lorsque l'exception est lancée, vous pouvez voir que nous imprimons le message. Mais enfin, ça arrive toujours. Et le, vous savez, cela arrive toujours, il arrive toujours. Le reste du programme continue donc. Ce qui est très important, c'est qu'en général, vous voulez que votre code échoue aussi fort que possible simplement parce que vous voulez voir les erreurs très tôt. C'est pourquoi il peut être utile de lancer des exceptions. Maintenant, accordé dans la modélisation par micro-ondes, est très peu probable que vous deviez le faire, surtout au début, n' est-ce pas ? Je veux dire, pour la plupart, je suppose pour les débutants, n'est-ce pas ? Cela ne sera pas très important pour les débutants. C'est bien plus pour les personnes avancées. Quand tu es vraiment assis là, tu es comme, Ok, je vais faire comme un mode géant maintenant, non ? Je veux faire comme la prochaine expansion thermique, disons à ce niveau quelque chose comme ça, puis faire quelques exceptions personnalisées. idée très intelligente, définitivement. Mais quel que soit le cas, c'est tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 36. (Java) Expressions de Java Java: Bon, bienvenue dans l'introduction de Java ici pour la modélisation Minecraft. Et dans cette conférence, nous allons jeter un coup d'œil à une expression lambda. Les expressions lambda peuvent donc être très compliquées. Je veux juste vous donner un très bref aperçu de ceux que nous avons et de ce que sont les expressions lamda. Donc, en général, et les vétérans optent pour trois méthodes. Il s'agit essentiellement de fonctions ou de méthodes en tant que variables. Maintenant, c'est plutôt cool quand on y pense. Et nous allons jeter un coup d'œil à ces cinq dans des détails très, très clairsemés. Nous n'allons donc pas entrer dans les détails du tout. Je veux juste que vous ayez vu ces n pour stocker ça à l'avenir. Parce que surtout dans la modélisation 4D, c'est quelque chose qui est très important en fait dans le tissu, pas tellement, eh bien, quel que soit le cas. Ainsi, un fournisseur, par exemple, ici, est quelque chose qui n'a pas de paramètres mais une valeur de retour. Et ça pourrait être écrit quelque chose comme ça, non ? Donc, aucun paramètre entre parenthèses et une flèche, puis le x peut être ce qui est renvoyé. Vous pouvez voir le fournisseur de type entier qui signifie qu' un entier est renvoyé. Et c'est à ça que ça ressemble. Ce qui est cool, c'est que cela signifie également parce que lorsque nous pouvons en faire une variable, nous pourrions également la transmettre dans une méthode, ce qui signifie que nous pourrions, nous pourrions passer ces fournisseurs là-dedans, qui peuvent avoir des fonctionnalités différentes. C'est donc assez cool en fait, cela est également utilisé pour payer beaucoup de programmation ou la modélisation forcée, surtout parce que lorsque le fournisseur, lorsque vous avez quelque chose à l'intérieur, c' est appelé uniquement lorsque la méthode GetMethod ici est appelée. Vous pouvez donc retarder chargement de certaines variables et d'autres choses comme ça. C'est à peu près l'étendue de mes connaissances dans ce domaine également. Donc, nous n' allons pas trop y aller. Et après avoir corrigé cette erreur ici par mètre, bien sûr, non ? Ainsi, le consommateur dans le nom consomme vraiment un paramètre mais ne renvoie pas de valeur. Voici un exemple pour le consommateur pour une chaîne, qui est simplement l'endroit où vous transmettez une chaîne, puis il fait quelque chose avec cette chaîne. Un objet exécutable n'est ni périmètre ni valeur de retour. Très semblable à un fournisseur, cependant, il lance une exception, donc un appel, il est possible que cela appelle également un renversement une exception. C'est l'idée générale. Vous pouvez également toujours survoler cela et vous pouvez trouver un très beau résumé de ce qu'ils sont réellement, n'est-ce pas ? Donc, ici, nous appelons l' appelable dans ce cas, alors un exécutable est quelque chose qui n'a pas de paramètres ni de valeur de retour. Ensuite, une fonction est littéralement comme une fonction qui mappe une certaine entrée à une certaine sortie est juste la fonction du cercle, essentiellement où je n' ai que le pi ici. Mais c'est à peu près tout ce qu'il y a vraiment à faire. Donc, dans l'ensemble, comme je l'ai dit, je voulais vraiment que tu traverses ça une fois que j'ai déjà vu ça, quand je dis, Hé, on va faire un fournisseur que tu ne seras pas assis là et que tu es comme, Oh, je n'ai aucune idée de ce que c'est. Non. Un fournisseur est essentiellement un type de données qui, en quelque sorte, enregistre plus ou moins dans une fonction ou une méthode. Ce n'est pas tout à fait cela, mais c'est très proche , de sorte que, vous savez, surtout pour les débutants, il suffit d'y penser comme ça. Quoi qu'il en soit, c'est en fait cela pour cette conférence ici. Je sais que c'était très court, mais comme je l'ai dit, il s'agit en fait d'un très bref aperçu plutôt que d'en expliquer vraiment tous les détails. Mais j'espère toujours que vous avez trouvé cela utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 37. (Java) Generics Java: Très bien, revenez à l'introduction de Java ici pour la modélisation Minecraft et pour cette dernière conférence de la section d'introduction de Java, nous allons jeter un coup d'œil sur les génériques. Les génériques, bien sûr que nous les avons déjà vus auparavant, non ? Une liste était générique, par exemple, où nous pouvions insérer un entier comme n'importe quelle classe, et en comme n'importe quelle classe, gros avoir les nombres, par exemple, avec une nouvelle ArrayList ici. Donc, tout a fonctionné très facilement et très bien. C'était bien, assez simple. Mais si nous avons des génériques que nous voulons utiliser nous-mêmes pour créer une nouvelle classe ici. Nous allons juste être la classe des paires. Et vous pourrez y enregistrer deux valeurs différentes. Nous allons donc simplement créer ces crochets, puis X, Y. Et l'idée est que X et Y sont maintenant des espaces réservés pour certains types de données. Nous allons donc avoir un x carré privé en premier et un mensonge privé appelé deuxième, non ? Et c'est, l'idée est que vous devez maintenant penser à cela comme, d'accord, ce sont des génériques, ce qui signifie que ce ne sont que des espaces réservés, comme je l'ai dit, n'est-ce pas ? Et nous allons simplement générer un constructeur pour cela. Donc, cliquez avec le bouton droit sur générer un constructeur. Et puis pour les deux, nous allons juste lire le constructeur. Et en fait, nous allons également faire clic droit sur Générer des getters et des setters pour les deux. Et voilà. C'est essentiellement la classe entière déjà terminée. Et vous pouvez voir qu'il utilise toujours le x et le y, car ce ne sont essentiellement que des espaces réservés pour les valeurs de données réelles ou les types de données utilisés. Ce qui est très intéressant, ce que vous pouvez également faire, c'est que vous pouvez dire qu'un certain type de données s'étendra à partir d'un autre. Nous pouvons donc, par exemple, dire étendu float, ce qui signifie que le y doit maintenant étendre le float, ce qui signifie qu'il peut s'agir soit d'un flotteur, soit n'importe quelle autre sous-classe de cette classe définie ici. C'est également très intéressant. C'est quelque chose que vous pouvez faire et cela se fait également dans la modélisation Minecraft. Et ce que vous pouvez faire aussi, faisons juste une nouvelle paire ici, n'est-ce pas ? Par conséquent, la paire, disons qu' ils sont comme un entier, un entier float pour le moment, comme ce terme égal à une nouvelle paire d'entre eux. Nous allons en dire quelques-uns comme 2250,55. Bien sûr, c'est bon. S'assurer que c'est un f ici, alors ça devrait fonctionner. Vous y allez. Cela fonctionne maintenant très bien. Et ce que vous pouvez également faire, au lieu de transmettre une certaine valeur réelle ou un certain type de données, vous pouvez également en faire un point d'interrogation. Et puis le générique va en quelque sorte le comprendre. C'est ce qu'on appelle un générique générique. Nous n'allons pas trop entrer dans les détails à ce sujet. C'est quelque chose que vous verrez également un peu dans la modélisation Minecraft. Cependant, il n'y a pas vraiment besoin de comprendre cela. C'est entièrement parce que les génériques sont certainement quelque chose de bien avancé, comme un sujet très avancé qui, même comme programmeurs qualifiés, n'aime pas beaucoup d'entre eux, ne le comprennent même pas. Comme si je ne m'incluais pas dans cette description, par exemple, je connais les génériques assez bons pour que je puisse en gros m' occuper d'eux. Cependant, faire moi-même comme un vrai cours générique, je serai honnête, c'est très, très dur, non ? C'est donc un sujet très compliqué, donc pas de soucis. Je voulais juste mentionner cela et je voulais que vous sachiez que cela existe et que vous pouvez également créer vos propres génériques. Mais ce serait tout pour l'introduction de Java dans cette section du cours. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau si vous êtes un débutant complet, j'espère que vous avez maintenant la base Java aurez besoin pour continuer avec le micro-ondes. modélisation. Bonne chance pour vous, et j'espère que vous apprécierez la section microbiotique de ce cours. 38. (base) Installation, configuration et GitHub: Très bien, Bienvenue sur le cours de tissu Minecraft ici pour 118. Et dans cette première conférence, nous allons passer en revue quelques conditions préalables dont vous aurez besoin pour commencer à modéliser Minecraft. Nous allons maintenant tout parcourir, télécharger tout ce dont vous avez besoin, les programmes, configurer le projet fabric, puis même configurer un référentiel GitHub afin que vous puissiez partager votre avec quelqu'un qui pourrait vous aider. Par exemple, si vous rencontrez un problème, vous pouvez télécharger tout votre code, puis l' envoyer à quelqu'un d'autre. Par exemple, moi dans les questions-réponses. Et puis je peux très facilement essayer de trouver l'erreur, ce qui va juste gagner beaucoup de temps entre la question et la réponse. Mais tout d'abord, si vous êtes un débutant absolu, je vous recommande vivement si vous ne l'avez pas regardé, regardant l'introduction de Java, je ne peux tout simplement pas recommander cela assez. Il va vous aider énormément. Parce que si vous n'avez pas cela, surtout en passant par la partie modélisation Minecraft de ce cours, vous vous sentirez très vite perdu. Parce qu'à ce stade, je suppose que vous avez au moins tout vu dans l'introduction de Java et que vous connaissez raisonnablement les concepts dont nous avons discuté ici. Mais quel que soit le cas, commençons par télécharger le JDK. Nous avons donc besoin d'un kit de développement Java, et ce sera le 17 de Java. En fait, ce lien est lié dans les ressources. Malgré l'utilisation de Java 16 pour l'introduction de Java, nous devons maintenant télécharger Java 17. En passant, cela ne pose aucun problème. Ceci est donc lié et cela devrait en théorie détecter ce qu'est votre système d'exploitation. Si ce n'est pas le cas, vous pouvez accéder à d'autres plateformes. Vous vous assurez de sélectionner tamarin 17, puis vous pouvez simplement sélectionner votre système d'exploitation, l'architecture ici également, puis télécharger, télécharger l'année MSI. Et lorsque vous téléchargez ceci, il s'agit simplement d'une isolation normale pour que vous puissiez l'installer sur votre PC comme n'importe quel autre programme. Et une fois que vous l'aurez fait, vous pouvez continuer pour la partie suivante, nous aurons besoin d' un environnement de développement intégré. Et pour nous, nous allons choisir Intelligent Idea. Si vous êtes encore une fois débutant, je vous recommande vivement de vous en tenir, car sinon il y aura quelques choses qui pourraient vous paraître différentes. Par exemple, si vous vouliez utiliser Eclipse ou VS Code, tout aussi très bien. Cependant, gardez à l'esprit que si vous rencontrez des problèmes là-bas, je pourrais ne pas être en mesure d' aider aussi bien que je pourrais faire avec une idée intelligente parce que je connais toutes les jambes, disons les raccourcis et tous les boutons sur lesquels vous devez appuyer lorsque quelque chose ne va pas dans l'idée, je ne connais pas à 100% le code Eclipse ou VS, alors gardez cela à l'esprit et téléchargez la version de la communauté. C'est très important. C'est gratuit, donc vous n' avez rien à payer. La version communautaire sur le côté droit ici. Il suffit donc de le télécharger une fois puis de l'installer sur votre PC, comme n'importe quel autre programme. Maintenant, nous en venons à la prochaine chose et ce sera l'exemple du tissu. Maintenant, vous pouvez voir qu'il s'agit d'un modèle public, il y a donc quelques choses que vous pouvez y faire. Vous pouvez utiliser ce modèle et simplement créer un nouveau référentiel GitHub. Ce n'est pas ce que nous allons faire. Nous allons le faire, c'est que nous allons aller au code ici et cliquer sur télécharger un zip. Cela va télécharger un fichier zip avec tous les fichiers nécessaires dont nous avons besoin. Et j'ai déjà préparé un support ici où je veux que ça aille. Je vais juste cliquer avec le bouton droit ici, extraire ici. C'est juste pour cela que j'utilise le vent rawr. Vous pouvez également utiliser sept programmes ZIP ou un autre programme ZIP pour ouvrir cela. Eh bien, maintenant, tout est ici. Je vais en fait contrôler X ça pour sortir ça et Control V pour le coller ici. Je veux juste que tout soit dans ce dossier. Et maintenant, deux choses que nous pouvons faire immédiatement. Nous pouvons supprimer la licence et le fichier README afin que nous n'obtenions pas la même licence ici, car il s'agit essentiellement de la licence du domaine public. Et ce n'est pas quelque chose que je veux personnellement. Bien sûr, vous pouvez vous y tenir comme vous le souhaitez. Et puis je recommande fortement de simplement supprimer le dossier GitHub ici, le dossier dot GitHub, car il contient essentiellement des flux de travail. Ici, vous pouvez voir les factures automatiques du projet et exécuter des tests de configuration pour celui-ci. Vous n'avez pas vraiment besoin de le faire. Vous pouvez le garder. Mais c'est quelque chose qui peut parfois être un peu déroutant, surtout pour les débutants. Je recommande donc vivement de supprimer cela et de ne pas m'en inquiéter pour le moment. Maintenant, nous avons le mod exemple de tissu ici, et c'est en fait tout ce dont nous avons besoin. Nous pouvons commencer l'intelligence pour la première fois. Maintenant, ça ne va probablement pas ressembler exactement à ça pour toi. Cependant, il aura trois composantes dont nous avons besoin. Et c'est le nouveau projet, l'Open. Et ils viennent de VCS pour ces trois boutons, essentiellement Arthur, des choses dont vous aurez besoin. Et nous voulons cliquer sur le bouton Ouvrir, puis naviguer vers ce répertoire. Donc, nous allons juste mettre ce répertoire ici et vous pouvez voir le cheval de tissu 118, et il a ce symbole ici et nous allons cliquer sur OK, puis traverser le projet, puis un nouveau la fenêtre s'ouvrira et vous pouvez voir certaines choses ont déjà commencé ici. C'est tout à fait très bien. Continuez tout simplement. Si vous devenez rouge ici, des flèches, pas de soucis du tout. On va tout arranger dans une minute. La première chose que vous allez probablement trouver si, par exemple, vous avez une version différente de Java ici, vous pouvez voir que vous utilisez une version obsolète de Java. C'est exact pour moi car plusieurs versions de Java sont installées. Maintenant, comment réparez-vous cela ? Très facile. Vous accédez à la structure du projet Fichier, et vous pouvez voir ici dans le SDK du projet, vous devez sélectionner Java 17. Et puis ici dans la langue du projet 17, appuyez sur Appliquer et OK, et il y a une deuxième chose que vous devez faire, et passons dans les paramètres de fichier pour les outils de déploiement d'exécution Gradle, et assurez-vous que cette année va projeter le SDK. C'est également très important. Cela s'applique si ce n'est pas le cas, d'accord ? Ensuite, vous pouvez frapper ce petit éléphant ici à nouveau et nous laisser passer à nouveau. Et maintenant, vous ne devriez pas obtenir de flèches dans ce cas, mais cela devrait juste passer correctement. Mais vous pouvez voir que j'ai réussi une construction ici, donc c'est vraiment bien. Et ce que vous verrez également, c'est que trois de ces dossiers orange seront générés. Et si, par exemple, nous ouvrons le dossier source , SRC signifie source. Si nous ouvrons cela, vous pouvez voir que nous obtenons également des couleurs ici. Maintenant, la prochaine chose est que lorsque j'ai ouvert ce dossier Java, vous pouvez voir que tout se développe ici. Si vous utilisez intelligent pour la première fois, ce n'est peut-être pas le cas pour vous. Passez à cet équipement ici et assurez-vous que les emballages aplatis et les boîtiers intermédiaires compacts sont désactivés. C'est peut-être le cas, comment cela vous ressemble. Assurez-vous simplement que les paquets volent et paquets ainsi que les paquets intermédiaires compacts sont désactivés et que tout vous ressemble exactement comme pour moi en ce moment, nous devons modifier quelques choses. à l'intérieur du fichier de propriétés Gradle Dot. Vous pouvez donc voir qu'il y a des propriétés définies, il y a donc quelques propriétés de tissu, il y a d'autres propriétés, puis il y a aussi quelques dépendances ou un petit intermède ici. Ce qui est très important, c'est qu'il y a deux façons de procéder. Numéro. Premièrement, vous pouvez soit prendre le mod d'exemple juste et ensuite vous serez sur les années 1800. Veuillez noter que certaines choses ne fonctionnent pas exactement comme dans 101. Donc ce nom, vous allez être les balises, l'élément avancé, qui utilise essentiellement la taxe et la génération mondiale. Vous allez avoir des problèmes à la fin du cours, à la fin du cours. Il y aura donc une vidéo de mise à jour où nous allons à jour les choses des années 1800. Cependant, si vous souhaitez suivre le cours dans son intégralité, principalement des mots ou des itérations, je vous recommande vivement de penser à choisir un cours des années 1800. Ici. J'ajouterai probablement une section à la fin du cours pour les années 1800. Et non seulement les changements, mais probablement aussi des conférences différentes qui remplaceront le, non remplacé. Mais il y aura des corollaires pour les conférences des années 1800. Donc, soit vous pouvez modifier le fichier de propriétés Gradle par ces valeurs ici, ou si ce n'est pas le vôtre, si vous ne voulez pas le faire, si vous souhaitez utiliser les années 1800, vous êtes bien sûr les bienvenus. Mais n'oubliez pas qu'il y aura des différences par rapport à ce que vous allez voir dans les conférences. Gardez cela à l'esprit et je suppose que je reviendrai à la conférence. Dans l'ensemble des propriétés du tissu, vous pouvez voir que nous avons un lien ici et nous allons regarder cette page dans un instant. Et nous spécifions simplement quelle est la version Minecraft, quelle est la version des mappages que nous utilisons ? Il s'agit essentiellement de traduire le code afin que nous puissions lire les noms de méthodes et les choses du genre. Et ensuite, la version du chargeur n'est que la version du chargeur de tissu. Ensuite, nous avons d'autres propriétés, celles que nous pouvons définir nous-mêmes et nous allons le faire dans un instant. Et ensuite, nous avons également la version en tissu que nous utilisons en bas ici. Si nous ouvrons les versions slash net Link fabric MC, vous verrez que nous avons en fait quelques mises à jour ici. Ce que nous pouvons faire, c'est que nous pouvons simplement prendre ce contrôle C ou cliquer avec le bouton droit de la souris, puis revenir ici et ensuite simplement coller. Alors, il suffit de le coller. Nous allons avoir quelques flèches parce qu' il y en a plusieurs ici. Mais ce que nous pouvons faire, c'est que nous pouvons simplement remplacer cela ici. J'appuie donc sur Control X pour le découper , puis sur Control V pour le coller à nouveau. Maintenant, nous allons passer à 0.44. Il peut s'agir d'une version différente pour vous, ce qui est tout à fait correct. Habituellement, bien qu'il y ait des différences dans les versions, il ne devrait pas y avoir de différences folles. Et s'il y en a, je vais essayer de suivre que je peux de mieux et j'ajouterai probablement une autre conférence après cela ou quelque part entre les changements. Et ensuite, ça va aussi être rattrapé par ça, non ? Et ici, nous allons simplement supprimer tous ces éléments et ensuite assurer qu' ils sont écrits correctement. Donc, en appuyant sur la touche de tabulation pour les déplacer. Et maintenant vous avez vu que nous avons essentiellement mis à jour le profit de six à 12,8 et de 431, je pense à 440, c'est tout à fait très bien. Une fois de plus, on peut cliquer sur le petit éléphant dans le coin. Et si nous développons cette fenêtre de construction, vous pouvez voir qu'elle télécharge des choses comme des fous, mais pas de soucis. Encore une fois, cela peut prendre quelques secondes. Encore une fois, peut-être une minute. J'ai vu que cela prend beaucoup plus de temps pour certaines personnes, mais cela dépend votre connexion Internet et de la qualité de votre PC. Parfois, cela peut prendre 20 minutes, je l'ai déjà vu, mais c'est très rare. Très rare. Alors, tu y vas. 21 secondes, c'est déjà fait. Et maintenant, nous pouvons commencer à aller de l'avant et à voir ce que nous pouvons changer pour notre propre MOD. En gros, toutes nos modifications vont se produire dans le fichier de propriétés Gradle dot. C'est très facile pour nous de le faire. Et l'idée générale est que nous devons modifier les propriétés de notre modèle ici, puis modifier quelques éléments ici dans notre structure de dossiers ou notre structure empaquetée. L'essentiel est qu'en ce moment nous utilisons cet exemple de MOD où il y a, bien sûr, pas tout à fait ce que nous avons. Nous avons un calcul spécifique que nous voulons. Donc, si je double-clique sur cet exemple de classe simulée, vous pouvez le voir comme exemple mod. Il y a même quelques commentaires ici. C'est très joli. Mais dans l'ensemble, nous devons changer quelques choses ici. La première chose, c'est que je veux que cela soit dans mon propre paquet. Ce que je fais, c'est que je vais monter ici et je vais juste changer ça compte net et je ne sais rien de Mc, c'est le paquet. Je veux que ce soit un vivement recommandé de ne pas appeler ce travail de coton parce que vous êtes dans un coulomb joule. Et deuxièmement, il suffit d'utiliser votre nom net. Et puis, cours de MC, par exemple, je vous recommande fortement de le faire parce que c'est très bizarre d'utiliser le nom de quelqu'un d'autre si vous créez votre propre code parce que cela va devenir déroutant pour gens qui sont comme vous n'ont pas écrit ça, c'était par Cotton Row et c'est comme, eh bien, ce que je peux faire ici, c'est ça va bien sûr avoir un soulignement rouge. Je vais juste survoler ça et vous pouvez voir passer à emballage Cotton Joe MC cours. Je vais simplement cliquer dessus et vous pouvez voir qu'un nouveau package a été créé. Et c'est maintenant bien fait. Ce que je ferai alors, c'est que je vais prendre ce package mixte et déplacer directement dans le refacteur de package de cours EMI EMC. Et voilà. Maintenant, je peux supprimer le MC de tissu ici, il suffit d'appuyer sur la touche de suppression, puis de confirmer. Et ce que je peux faire, c'est que je peux maintenant cliquer dessus avec le bouton droit de la souris. C'est très important. Ne changez pas simplement ce nom ici. Cliquez avec le bouton droit sur Refactor Rename. Et puis ce sera la classe de mod de cours MC. Maintenant, c'est ce que je ferai référence dans les conférences à venir et dans les réponses à certaines questions comme étant la classe principale. C'est donc la classe principale. Les classes principales, celle qui implémente l' interface plus initialiseur, sont très importantes. C'est ce que je appellerai que votre classe principale de mod supprimera également tous les commentaires ici parce qu'ils ne sont pas nécessaires. Ensuite, je vais introduire un nouveau domaine ici. Et c'est une chaîne finale statique publique appelée ID de soulignement mod. Et il va y avoir une nouvelle chaîne, appelée cours MC, car il s'agit de notre identifiant de modèle. Maintenant, plus l'identification est très importante. Une fois de plus, écoutez attentivement ici, plus l'ID ne peut contenir que des minuscules, tirets de soulignement et des chiffres, rien d'autre, pas d'espace ni de caractères majuscules. C'est donc très important. Pas de caractères majuscules. Je l'ai vu plusieurs fois pour votre ID de modèle, vous ne pouvez pas contenir de majuscules. Et puis, au lieu d' appeler l'ID du modèle ici, nous allons simplement dire plus d'ID. Maintenant, tout va bien ici et dandy. C'est donc tout ce que nous devons faire dans les cours de mathématiques du CMR. Passons maintenant à l'exemple mixage car nous allons avoir une erreur ici, car cela essaie toujours d'utiliser le mode exemple. Pas d'inquiétude, on va juste dire cours MC. Vous pouvez voir dès que je l'ai tapé, il nous est proposé. Je peux donc compléter cela avec un onglet, puis ouvrons l' importation ici et vous pouvez voir qu'ils obtiennent une erreur ici également. Nous pouvons simplement supprimer cette importation et toutes les flèches ici devraient disparaître. Eh bien, nous allons à nouveau vers la plus grande propriété. Et ici, nous avons la version mod. Je recommande vivement ce que vous devez faire, c'est de mettre la version micro à l'avant ou à l'arrière. Par exemple, vous pouvez dire que quelque chose comme ceci est la version 0.01 dash 118. Donc, l'utilisateur est, sait, ok, c'est la version 0.01 pour votre MOD. Et puis pour la micro version 118, ils peuvent même grouper bien sûr va juste être force IMC net.com row dot et ensuite le nom de base de l'archive. sais pas vraiment à quel point c'est important, mais ce sera juste pour nous, tissu verset 2018, n'est-ce pas ? Et maintenant, cela a été modifié. C'est très bien. Et maintenant, nous devons modifier autre chose, et c'est dans le dossier des ressources ici. Alors ouvrez-le et vous pouvez voir qu' il s'agit en fait d'une icône d'ID de modèle. Nous pouvons réellement supprimer cela. Nous n'en avons pas besoin pour le moment. Et il y a un fichier Fabric plus JS et une illustration mixte d'ID de modèle. Tout d'abord, nous allons passer à la modération du tissu. Et ici, nous devons préciser beaucoup de choses. La première chose que nous devons faire, c'est changer l'idée du mode ici, bien sûr, en cours MC. C'est le modèle que nous avons choisi ici, n'est-ce pas ? donc que ce soit exactement la même chose partout. Et puis le nom d'Ahmad, je vais juste choisir MC cours fabric mod. C'est très bien. Nous pouvons également ajouter une description ici. Ainsi, nous pouvons, par exemple, dire mod, enseigner aux autres. Tissu matin, tissu, microphonique. Bien sûr, les auteurs païens sont des cours d'accueil. Encore une fois, entrez votre propre nom. Maintenant, moi, je ne suis pas l' auteur de votre modèle, et ensuite vous avez un contact, par exemple, je peux changer cela pour venir sur le net puis sur les sources. Je vais probablement changer cela un peu parce que, bien sûr, pour l' instant , nous n'avons pas encore de dépôt GitHub, mais nous le ferons bien sûr dans cette conférence également. La licence que je vais choisir, la licence MIT que je pense personnellement est le meilleur format qui est généralement juste, vous savez, elle est toujours open source que le point d'entrée ici. Nous devons changer cela aussi bien que vous pouvez le voir, c'est le nombre net et le cours de Rho nught Mc et ensuite pas d'exemple plus sur le mod de cours MC. Il est très important encore une fois que vous ayez changé cela. Exactement comme vous l' avez ici. Vous pouvez voir le cours MC net out and row, le modèle de cours MC. C'est très important. Il en va de même pour les mixins. Nous avons changé l' ID du modèle ici en cours MC. Et maintenant, tout ce qui a été fait ici à l'Icahn ne fonctionne pas pour le moment. Nous pourrions bien sûr ajouter une nouvelle icône ici. Nous n'allons pas faire ça pour le moment. Alors ouvrons plus je les mixins, Jason. Et ce que vous pouvez voir est le numéro un, ce que nous voulons, c'est cliquer avec le bouton droit de la souris sur Refactor Rename , puis changer l' ID du modèle ici en cours MC. Et ensuite, le paquet que vous pouvez voir ici doit également être modifié. Le comptable Joe au cours MC, mixant, c'est très bien. Ensuite, l'exemple de mélange ici est également correct. Ce n'est qu'un exemple des mixins réels. Nous allons y jeter un coup d' œil dans la conférence ultérieure, car les mix-ins peuvent être assez compliqués. Donc, pour l'instant, nous allons simplement ignorer le tout ici. Il en va de même pour celui-ci. Nous allons juste l'ignorer et dire que c'est très bien. Mais maintenant, toutes les modifications que nous devons apporter ont été apportées. Nous avons spécifié l'ID MOD du cours RMC, échangé le nom ici, nous avons changé les choses dans le mod tissu Jason, très important, vous ne changez pas le nom de ce Jason. Vous ne changez que le nom de ce Jason a aussi une chose très importante. Et maintenant, nous avons toujours les éléphants. Cliquons donc une fois de plus et voyons tout faire en 940 millisecondes. C'est très rapide. Et comment pouvons-nous commencer dans Minecraft va aller en haut à droite ici dans le Gradle, développer le fabric des tâches, puis exécuter le client à développer le fabric des tâches, puis exécuter le moins que vous ne voyiez un double-clic dessus. Et à l'avenir, vous aurez cela ici. Et ensuite, vous aurez également une sorte de bouton de lecture sur lequel vous pouvez simplement cliquer. Et ça va aussi marcher. Mais pour le moment, nous allons juste attendre quelques choses. Cette flèche ici est tout à fait normale car nous sommes dans un environnement de développement, nous ne nous sommes pas connectés à Minecraft, donc nous allons avoir cette erreur. C'est tout à fait très bien. Et Minecraft aura déjà commencé, espérons-le, et vous pouvez vraiment l'entendre. Je vais en fait baisser la musique parce que cela peut parfois être un peu distrayant. Et voilà. Donc le tissu est en fait dans, nous pouvons voir que le modèle de tissu fonctionne également très bien. Lorsque cela se produit, vous en avez réellement terminé, nous avons mis en place l'environnement de développement. Quittons le jeu. Et nous allons faire deux autres choses. Premièrement, ce que je veux que vous fassiez, c'est que je veux que vous cliquiez également sur ces sources Jen ici. Il suffit donc de double-cliquer dessus. Cela va générer les fichiers source pour Minecraft et fabric, juste pour que nous puissions les examiner plus en détail. En gros, je vais vous montrer ce que cela signifie que dans les futures conférences, il sera très important que nous ayons accès aux fichiers sources de Minecraft et de Fabric. Parce qu'il y a beaucoup d' excellents exemples sur la façon de faire les choses là-dedans. Maintenant, cela prendra un peu plus de temps, mais pas de soucis, soyez patient, attendez cela et nous verrons fois que tout aura été fait, voilà. Donc, presque une minute et ensuite les sources de Jen sont terminées. Vous pouvez également cliquer sur télécharger des ressources Juste au cas où vous auriez parfois besoin de le faire. Parfois, vous ne le faites pas. Parfois, les ressources, généralement, devraient être déjà téléchargées, mais il peut y avoir des problèmes. Et une fois cela fait, vous pouvez le fermer, puis vous assurer de sélectionner le client Exécuter ici. Vous pouvez également sélectionner le client Minecraft ici. Vous pouvez sélectionner l'un ou l'autre d'entre eux, ou vous choisissez généralement celui-ci. Et ensuite, vous pouvez redémarrer les microphones avec ce bouton Exécuter ici. heure actuelle, tout a été mis en place. Passons maintenant à la façon d' ajouter le référentiel GitHub. suggère fortement de ne pas ignorer cette étape pour créer un référentiel GitHub car si à l'avenir vous rencontrez un problème, je me fournit simplement votre référentiel GitHub avec, par exemple, un journal des erreurs et disons Hé, ça n'a pas fonctionné, ça va rendre ma vie et ta vie beaucoup plus facile parce que je vais pouvoir répondre plus rapidement à un problème ou à une question que tu pourrais avoir. Alors, comment pouvons-nous faire cela ? Tout d'abord, vous devez avoir un compte GitHub. Je recommande vivement d'en faire un sur GitHub. C'est totalement gratuit. C'est très bien. C'est un site Web utilisé par presque tous ceux qui codent. Il y en a quelques autres, mais je recommande vivement de créer un compte GitHub. Une fois que cela est fait, vous pouvez ensuite entrer dans l' intelligence ici et accéder à VCS, puis dire partager un projet sur GitHub que nous devons choisir un nom. Je suis d'accord avec le cours de tissu dash mois 18, c'est très bien. Je vais choisir de rendre ça privé. Vous n'en avez pas forcément besoin. L'origine à distance est également correcte. Je ne vais pas ajouter de description pour le moment. Je vais dire « Partager ». Maintenant, vous pouvez voir que le compte ne peut pas être vide, assez juste. Je vais donc ajouter un compte et vous pouvez voir la connexion via GitHub. Je vais juste appuyer dessus et il ouvrira ensuite ce compte JetBrains. Je vais dire autorisé dans GitHub et vous pouvez voir que j'ai été autorisé parce que je suis déjà enfermé ici. Maintenant, je vais aller ici et vous pouvez voir github.com slash cotton row puis dire partager. Maintenant, en bas, vous pouvez voir que ça commence à faire des choses. Et là, cela suggère essentiellement de la haine. Que voulez-vous pousser ? Comme ? L'idée est que nous avons deux choses différentes. Vous avez un engagement et une poussée, et beaucoup de choses vont devenir rouges. Ainsi, les fichiers deviennent rouges et nous dirons la validation initiale. On va dire « Add ». Et puis il va continuer à faire des choses ici en bas à droite. Et vous pouviez voir le projet partager avec succès sur GitHub. Je crois que je peux simplement cliquer dessus et voilà. Donc maintenant, en fait, le parcours de chevaux obtenir un référentiel a été créé sous colonnes barre oblique de ligne cours 118. Et cela sera également disponible pour vous. Ainsi, dans chacune des conférences, vous trouverez essentiellement un lien vers la branche pour cette conférence particulière afin que vous puissiez toujours jeter un coup d'œil au code comparer et vous assurer que tout vous avez fait, c'est correct, comme nous l'avons fait ici. Je recommande également vivement, surtout lorsque nous abordons les sujets les plus complexes, je vais commencer à copier beaucoup plus de code car ce n'est pas amusant de voir quelqu'un écrire 300 lignes de code. Et puis, en gros, il suffit regarder quelqu'un, d'accord, que ce n'est pas vraiment très intéressant. C'est bien mieux pour moi de copier quelques trucs et d' expliquer ce qui est écrit. C'est en fait à quel point la configuration du référentiel GitHub est facile ici. Une fois que c'est fait, vous pouvez voir en bas ici que j'ai maintenant la branche principale et si je devais changer quelque chose, donc je vais , par exemple, ajouter un Hammond, les commentaires, non ? Vous pouvez voir que le fichier devient bleu. Cela signifie qu'un changement s'est produit. Comment puis-je maintenant marquer cela ? Eh bien, je peux aller sur cette tablette de validation ici et dire, oui, tous les vieux changements, n'est-ce pas ? Je le voulais, je voulais les marquer. Et puis je vais dire que j'ai ajouté un commentaire. Ce que je veux faire, c'est que je vais m'engager. Ce changement a maintenant été engagé. Si je retourne à la fenêtre du projet, vous pouvez voir qu'elle n'est plus bleue, mais elle n'est pas encore en ligne. Parce que ce que je dois faire, c'est que je dois aller ici sur ce bouton-poussoir, vers la flèche qui pointe vers la poussée en haut à droite. Et puis il est écrit Maître d'origine. Cela signifie essentiellement que vous allez pousser les modifications que vous avez apportées sur votre machine locale. Que l'origine et l' origine sont essentiellement en ligne et là vers la branche principale, poussez. Et vous pouvez voir, espérons-le, ce qui peut arriver est poussé par un engagement vers le maître d'origine. Et si je retourne maintenant ici et que je recharge ça, vous pouvez voir qu'un commentaire vient d'être validé. Si je ne veux pas entrer trop en détail sur le fonctionnement de Git et tout ça. Cependant, il est très important que vous le mettiez en place. Je le recommande vivement. Je ne peux pas le recommander davantage. Obtenir de l'aide de moi ou de l'une ou l'autre ou même d'autres personnes vous facilitera grandement la tâche si vous disposez d'un référentiel GitHub que vous pouvez partager. Donc, s'il vous plaît, faites-le et il est également très important que tous ces fichiers soient là. Vous devez avoir le fichier Gradle w, vous devez avoir le fichier Gradle Builder, les propriétés Grail, toutes ces choses doivent être là. Très, très important, non ? Mais quel que soit le cas, c'est déjà le cas pour cette conférence. Je comprends que c'est assez vaste. Nous avons fait beaucoup de choses, mais si Minecraft fonctionne maintenant, félicitations, vous avez commencé à vous soucier du deuil. Ce sera un voyage fou et cool en cours de route. Et je suis sûr que vous apprendrez beaucoup. Si, à un moment donné, vous rencontrez des problèmes, hésitez pas à utiliser les questions-réponses pour poser une question. Sinon, je vous recommande fortement de tout vérifier à nouveau pour les erreurs d' orthographe et de m' assurer que vous avez tout fait comme moi. Et j'espère que tout pourrait fonctionner. Mais c'est tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. 39. (Bases) Créer un objet personnalisé: Bon, bienvenue au cours de tissus pour 118 ans. Et dans cette conférence, nous allons ajouter notre propre article personnalisé. C'est donc très excitant. Nous commençons par ajouter des articles car ils sont un peu plus faciles que d'ajouter des blocs. Mais commençons tout simplement. Que doit-on faire ? Eh bien, à l'intérieur de notre package de cours MC, nous allons cliquer avec le bouton droit de la souris sur un nouveau package. Quel élément pour que la structure du package en général soit hautement subjective et qu'elle puisse changer. Il s'agit essentiellement d'une organisation individuelle. façon dont vous souhaitez organiser cela, vous pouvez le sélectionner comme vous le souhaitez. Je recommande vivement de m'en tenir à quelque chose que vous aimez. Fondamentalement, vous et si vous avez une équipe, votre équipe, tant que vous pouvez tout trouver, c'est très bien. Je vais m'en tenir à la façon dont je fais pour insérer le paquet d'article. Nous allons cliquer avec le bouton droit sur une nouvelle classe Java appelée plus d'éléments. Il s'agit donc d'une nouvelle classe ici et cette fenêtre apparaîtra si vous avez initialisé le référentiel GitHub. Donc, en gros, il s'agit du fichier GitHub et généralement ce que vous voulez, c'est que vous voulez dire Oui, Ajouter, puis il deviendra vert. Il s'agit donc essentiellement d'un nouveau fichier qui a été ajouté. Si vous n'avez pas configuré de référentiel GitHub, cela n'apparaîtra pas et tout va bien. Donc, pour ajouter un nouvel article, nous devons l'enregistrer. Maintenant, il y a deux choses que nous devons faire. Nous devons avoir un corps statique public ou enregistrer plus d'articles. Et cela va juste dire la ligne d'impression du système. Et ça va dire quelque chose comme s'inscrire, enregistrer des éléments pour des éléments mod, des éléments mod ou plus MC cours mod cette mélodie. Cela sera donc appelé côté INSEAD de notre méthode non initialisée pour initialiser les éléments statiques que nous avons dans cette classe. Cela est en fait strictement nécessaire , car sinon les articles ne seront pas correctement enregistrés en gros. Ensuite, nous aurons un élément statique privé ou enregistrez un article, enregistrez un élément avec un nom de chaîne et un élément, Item. Vous verrez maintenant que cet article est rouge ici, pas de soucis. Ce que vous pouvez faire, c'est que vous pouvez cliquer dessus, appuyer sur Alt et Entrée pour importer l' article Minecraft net, classe d'articles. Comme vous pouvez le constater, nous obtenons toujours une erreur ici, car bien sûr , nous devons retourner un article qui ne s'inquiète pas du tout. Ce que nous allons faire, c'est que nous allons retourner le registre, pas nous inscrire avec l'élément point de registre tout en majuscules AMA, nouvel identifiant de net Minecraft util, MC cours MOD qui nom de l'ID du modèle. Ensuite, après la première virgule entre parenthèses. Encore une fois, le kras du registre n' est pas encore importé, alors cliquez sur tout cela dans deux importants dans Minecraft UTI Registry, Registry. Et cet appel enregistrera essentiellement l'élément sous notre espace de noms qui se trouve sous notre identifiant de modèle avec le nom donné ici comme premier paramètre. Et il va s'agir de cet objet. Il s'agit donc essentiellement d'une méthode aide pour nous aider à enregistrer nos articles. Et quel type d'articles allons-nous fabriquer ? Eh bien, nous allons les créer ou les recalculer. Eh bien, c'est déjà du calcium dans les biens et les pépites, et ils sont crus ou recalculés. Et puis, plus tard, Oracle peut bloquer et tout ce jazz. Alors, comment fabriquer un article ? On va donc dire finale statique publique. Donc, encore une fois, ce n'est que des choses de base, non ? Donc cette statique, afin que nous n'ayons pas à créer une nouvelle classe d'éléments supplémentaires. Et puis final pour que nous ne puissions pas le changer par la suite. Et ce sera le rappel des revenus soulignant l'anglais. Et cela va être égal à enregistrer un article. Vous pouvez voir que je reçois déjà ça et le premier est une corde. Ce nom sera généré automatiquement ici. Vous n'avez pas besoin de taper ça. Zoomez un peu. Vous pouvez voir que cela est un peu différent de ce que j'ai écrit. Cela génère donc automatiquement, vous n'avez pas à taper cela. Et il s'agit d'un lingot de soulignement Oracle , puis d'une virgule, puis d'un nouvel élément. Donc, vous aurez déjà quelques suggestions c, Nous voulons un article normal ici, nouvel article avec les nouveaux éléments de tissu, les paramètres, ce groupe, cet élément, groupe ce Misc, écrivez celui-ci. Et puis, à la fin, ici, un point-virgule. C'est tout ce qu'il faut faire pour créer un nouvel article ici. Dans ce cas, nous fabriquons essentiellement un nouvel article, le nom ou le calcium anglais. L'oracle entre, venez ici. C'est le nom de la variable bien sûr, doit toujours être écrit en majuscules et souligner les scores de limite séparés essentiellement. Et tout cela doit être en minuscules, tout comme l'ID du modèle. Donc le nom ici, la chaîne ici, toujours en minuscules. Et généralement, je recommande vivement en tenir à une façon d'écrire ceci. En gros, avoir le soulignement ici, c'est bien, non ? Dans New Item nécessite des paramètres d'article et vous pouvez voir que nous venons l' appeler la méthode du groupe et de l' attribuer au groupe d'éléments divers, sorte que cet élément soit effectivement ajouté au groupe divers. Et je peux en fait mettre un point ici aussi après. Et ça a mis plus de choses à ça. Vous avez un peu plus de connaissances en Java. C'est un modèle de construction et vous pouvez voir que je peux faire quelques choses ici, un changement, quelques choses pour le moment. Nous allons simplement nous en tenir à la sélection essentiellement du groupe pour qu'il s' agisse de groupes divers. Et c'est à peu près tout ça. On va s'en tenir à ça pour le moment. Mais vers la fin de la conférence, nous allons en faire un autre pour que vous puissiez voir comment cela fonctionne. Certaines personnes ont été un peu confondues. Comment ajouter un deuxième élément pour devoir créer une nouvelle classe d'éléments en mode, Non, Pas de soucis. Nous allons simplement rester dans notre classe de mod de cours MC dans la méthode initialisée, où nous allons maintenant appeler plus d'éléments qui enregistrent des éléments en mode. Et nous pouvons supprimer les informations de l'enregistreur. Ça va bien se passer. Et maintenant, nous devons nous aventurer dans le dossier des actifs et créer essentiellement les fichiers JSON. Eh bien, les fichiers JSON sont quelque chose qui est, je veux dire, je ne dirais pas forcément ennuyeux, mais cela peut devenir très ennuyeux car pour chaque bloc et pour chaque élément que vous ajoutez, vous devrez les ajouter fichiers JSON. Nous allons passer en revue les fichiers JSON de l'article ici. Et puis la prochaine conférence, lorsque nous parlerons de blocs, nous allons aussi les parcourir, donc pas de soucis du tout. Ainsi, dans le dossier des ressources, cliquez avec le bouton droit sur un nouveau répertoire appelé cours MC. donc s'agir de votre ID MOD. S'il vous plaît, assurez-vous que cela est bien écrit. Tout ce que je fais ici en ce moment doit être écrit correctement. Sinon, cela ne fonctionnera pas. Dis ça encore une fois. Assurez-vous que la structure de votre dossier est correctement écrite. Vérifiez cela huit fois, vraiment, je le veux dire cours MC, cliquez avec le bouton droit sur un nouveau répertoire appelé lang. C'est donc le premier répertoire dont nous aurons besoin. Et puis il y en a un autre appelé modèles. Et puis il y en a une autre dont nous aurons besoin, c' est-à-dire les textures. Mais très important, Lang modèle avec un S à la fin et textures avec un acide à la fin. Le dossier modèles comportera également deux répertoires, l' un appelé cassé. C'est singulier. Et ce que je peux faire, c'est que je peux prendre ce dossier et lorsque j'appuie sur Ctrl et que je le fais glisser dans le même dossier, je peux en faire une copie et simplement dire cet élément. Maintenant, nous allons prendre les deux et en faire une copie dans le dossier textures, car nous allons avoir besoin d'un bloc, d'un dossier d'éléments. Mais c'est pour le moment à quoi cela devrait ressembler. Assurez-vous que tout se trouve au bon endroit afin que rien de tel que le dossier modèles se trouve dans le dossier des ressources. Tout doit se passer comme ça. Ressources, atouts, modèles de cours MC, textures M, corps C, QC, Lang. Maintenant, à l'intérieur du dossier des jambes, nous allons cliquer avec le bouton droit sur Nouveau fichier et souligner Grayson it Enter et, bien sûr, ajouter ceci au référentiel GitHub si vous en avez un. Et maintenant, il s'agit du fichier de traduction. Cela va donc traduire le nom des éléments dans différentes langues. Maintenant, pour nos besoins, nous allons seulement utiliser e et nous souligner, Jason, parce que nous voulons seulement traduire cela en version anglaise. Cependant, vous pouvez très facilement trouver les autres types de langues prises en charge, puis les traduire dans celles-ci également. Nous devons le faire, c'est que nous devons mettre des crochets bouclés ici, puis une ficelle. Il s'agira donc d'un élément que MC cours, qui recalque le lingot de soulignement puis un côlon ou un score de calcium, qui recalque le lingot de soulignement, puis un côlon ou un score de calcium, un espace de soulignement sans nul. là que tu y vas. Cette année est donc le nom non traduit. Il s'agit essentiellement de la clé de traduction. Vous pouvez le penser comme cet article car il s'agit d'un article parce que c'est un cours MC, car il s'agit de notre identifiant de modèle. Et puis le lingot de silicium ici est le nom donné dans la classe mod items ici. Mais c'est l'idée générale. Et cette chose va suivre essentiellement presque n'importe quelle autre chose aussi, les blocs, les choses différentes. Donc oui, c'est alors le nom traduit. C'est donc le nom que vous verrez lorsque vous survolez l'article réel dans l'inventaire, juste sous l'élément du modèle , cliquez avec le bouton droit sur un nouveau fichier ou pré-calc, soulignez verrez lorsque vous survolez l'article réel dans l'inventaire, juste sous l'élément du modèle , cliquez avec le bouton droit sur nouveau fichier ou pré-calc, le lingot que Jason est important comme ça et s' assure également que cela est écrit correctement. Maintenant, le Malcom peut être un mot dur, alors vérifiez simplement qu' il est écrit correctement. Il entre et je vais le montrer une fois, en gros, en écrivant ça. D'habitude, je n'écris pas ça parce qu' il n'y a pas besoin de le faire. La plupart des fichiers JSON seront identiques à tous les niveaux. Fondamentalement, ce que vous allez avoir à avoir crochets bouclés, puis un deux-points parent, textures de virgules générées par la barre oblique d' élément, des deux-points, des crochets précoces, du calque 0, des noyaux Olin, des cœurs MC. Donc votre devise : Tout un objet, flash ou Malcolm ou recalc mon soulignement anglais. Que se passe-t-il ? Eh bien, le parent s' assure simplement qu'il s' affiche comme un article normal à l'intérieur de votre stock. Ensuite, les textures fournissent simplement des textures pour cet article particulier plus tard, 0 signifie simplement, hé, nous allons utiliser un seul calque. Nous n'avons pas à nous inquiéter trop, mais c'est exactement comme ça que cela va devoir être écrit. Ensuite, cela spécifie l'emplacement à l'intérieur de votre dossier de textures. Nous allons également voir un plongeon approfondi dans les fichiers JSON après la conférence en bloc. J'ai parfois l'impression qu'il est bon de jeter d'abord les bases générales. Donc, fondamentalement, faire en sorte que les éléments se terminent des blocs, puis parlent de chacun des fichiers JSON individuels dans une conférence ultérieure également. Cela va aussi se produire, non ? Donc, comme il s'agit de boues d'article, lingot de silicium, cela doit disparaître, la texture n'est pas passée aux textures du cours MC dans le dossier des éléments et elle doit être nommée Henri Calcium lingot dot PNG. Donc, bien sûr, je l'ai déjà préparé. Je vais juste copier ça ou un PNG, d'accord ? Et bien sûr ajouté au référentiel GitHub. Et bien sûr, tout cela est disponible pour vous au poignet. Le référentiel GitHub et les extras sont également disponibles pour le téléchargement sous forme de fichier zip. S'il y en a plusieurs et s' il ne s'agit que de simples textures, elles seront probablement aussi des textures uniques. ce moment, c'est tout ce dont nous avons besoin pour ajouter correctement l'article à notre MOD. Nous pouvons donc maintenant commencer le jeu et voir si cela fonctionne. Assurez-vous que vous avez sélectionné Exécuter le client où le client Minecraft est ici, l'un ou l'autre va bien. Ensuite, appuyez sur le bouton Exécuter, Exécuter. Et puis, il suffit d'attendre que ça commence. Très bien, nous nous trouvons à Minecraft ici. Assurez-vous simplement que votre propre créatif, bien sûr, que nous puissions facilement voir si cela fonctionne ou non. Et voyons juste une fois que nous sommes en jeu. Nous sommes donc dans le jeu et voyons simplement. Passons donc à l'onglet divers et passons en bas ici. C'est là. Le calcium déjà en bon, absolument incroyable. Et j'adore la texture aussi. Donc, pour toute transparence, passant, les textures, vous pouvez réellement les utiliser, mais elles sont sous une licence spécifique. Je vais vous montrer dans une seconde, mais c'est vraiment cool que vous partiez, l'article a été ajouté avec succès, mais ici nous avons l'avis de crédits, donc c'est très important. Toutes les textures ont été réalisées par nano-attaque et elles sont distribuées sous licence internationale CC BY SA à quatre points zéro. Assurez-vous de suivre cela. Si vous souhaitez les utiliser dans votre propre référentiel, il suffit d'y ajouter ce fichier. Je suis sûr que tout ira bien, mais assurez-vous que c'est fait. Sinon, vous portez réellement atteinte au droit d'auteur. Je veux juste m' assurer que c'est le cas. Sinon, les textures ici sont toutes excellentes et vous pouvez les utiliser. Ne vous inquiétez pas du tout. Juste pour vous montrer immédiatement comment ajouter un deuxième élément ici, nous allons essentiellement copier ceci, donc je vais sélectionner tout cela et appuyer sur Control D pour le dupliquer. Et ce que nous allons faire, c'est que vous pouvez voir qu'il faut juste changer ça un peu. Il faut bien sûr changer le nom ici, en pépite de calcium orale. Et ensuite, ici aussi, nugget. Et maintenant, le deuxième objet est déjà dans le jeu de votre cours doit également avoir un nouveau modèle d'objet. Donc, ce que nous allons faire, c'est que nous allons copier celui-ci en le faisant simplement glisser dans le même dossier tout en maintenant la touche Contrôle, n'est-ce pas ? Donc, quelque chose comme ça. Ensuite, nous pouvons immédiatement renommer cela en Oracle com nugget. D'accord ? Et puis à l'intérieur d' ici aussi, pour une pépite de calcium, nous allons prendre la pépite de calcium, très robuste ici aussi. Très bien. Et puis dans le fichier en soulignant nous Jason, nous allons copier ceci. Donc, en gros, ce que j'ai fait, c'est que j'ai juste , vous savez, appuyez sur Control C , Control C, Control V, Control V pour le coller plusieurs fois afin que tout fonctionne ici et la pépite, et puis ici bien sûr aussi pépite. Et maintenant, c'est tout ce que nous devons faire pour ajouter un deuxième article et chaque nouvel article est fondamentalement le même. C'est juste un autre élément final public statique ici avec un nouveau nom. est donc très important que ce nom soit toujours unique. S'il y a des noms utilisés plusieurs fois, cela ne fonctionnera pas. Donc, juste pour l'achèvement, voyons si cela fonctionne. Très bien, les amis ont du noir dans Minecraft. Passons donc à l' onglet divers et voyons, voilà, l' oracle vient frapper. Il a également été ajouté au jeu. Donc, tout a parfaitement fonctionné. N'est-ce pas génial, n'est-ce pas ? Et c'est tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Tout le code pour vous est bien sûr disponible dans le référentiel GitHub ou en individuel, sur linkedIn et dans les ressources. Je vous verrai donc lors de la prochaine conférence. Donc, oui. 40. (Bases de la création d'un bloc personnalisé: Bon, bienvenue au cours de tissus pour 118 ans. Et dans cette conférence, nous allons envisager d'ajouter blocs personnalisés à Minecraft. Ou bien, les blocs personnalisés sont similaires à l'ajout d'éléments personnalisés, mais ils nécessitent quelques fichiers JSON supplémentaires. Mais tout d'abord, bien sûr, nous devons les coder. Ainsi, à l'intérieur de notre package de cours MC, cliquez avec le bouton droit sur un nouveau package appelé bloc. Et puis, à l'intérieur, nous allons créer une nouvelle classe Java appelée blocs MOD. Maintenant, cela nécessitera une fois le vide statique public appelé méthode des blocs de mode de registre qui va simplement sortir quelque chose comme enregistrement de monologues ou de cours MC mod, mod ID que nous sommes Je vais devoir faire appel au cours de simulation de cours MC. Mais cela nécessitera aussi, je vais créer deux méthodes d'aide différentes ici. Le premier sera l' élément statique privé appelé « bloc de registre ». Maintenant, la raison pour laquelle je vais le faire est que lorsque nous créons un bloc dans un élément n'est pas créé pour lui et que nous devons créer un élément pour lui. Le premier paramètre est donc le nom de la chaîne, puis le bloc, le bloc, puis le groupe d'éléments, le groupe. Et puis nous allons aussi tout ici rouge, tout va bien. Cliquez dessus et entrez pour l'importer, modifier et entrer l'important, très important que nous importions la classe de blocs correcte. Vous pouvez voir le bloc Minecraft net, très important. Et puis le groupe d'éléments, la même chose, juste Alt et Entrée. Et ensuite, ça va être important. Et puis ici, nous allons retourner points de registre, l'élément de point de registre avec un nouvel identifiant, cours MC MOD ce nom d'ID de mod. Et une fois de plus, après la première virgule entre parenthèses , nouvel élément de bloc, cet élément de bloc temporel. droite peut appuyer sur la touche Tab pour compléter automatiquement cela, en passant le paramètre de bloc ici. Et puis encore une fois de nouveaux paramètres de tissu. Encore une fois, il suffit de compléter automatiquement avec tabulation. Il y a groupe, puis passe dans le paramètre de groupe. Et puis les trois parenthèses , puis un point-virgule pour terminer la ligne et ils vont la méthode de bloc de registre est complètement terminée. Et ensuite, nous allons avoir une méthode qui appelle essentiellement cela. Donc, pour le bloc, nous devons enregistrer un bloc et bien sûr aussi le bloc. Nous avons donc un bloc statique privé ou la méthode de bloc de registre, qui sera un bloc de nom de chaîne, un bloc, puis, bien sûr, un groupe d' éléments, un groupe. Et la première chose que ça va faire, c'est qu'il va appeler la méthode Register a block item avec le bloc de noms et le groupe. Et puis la deuxième ligne ici va juste être retournée une fois de plus, enregistrez ce registre. Cette fois, enregistrez ce blocage. Le bloc ici avec un nouvel identifiant. Identificateur MC, mod de cours, nom d'ID de mod. Et puis après les premières parenthèses bloquent à nouveau. Ainsi, le code ici est bien sûr, également disponible pour vous. Vous pouvez jeter un coup d'œil au référentiel GitHub ou tout aussi. Dans l'idée ici, c'est que pour chaque bloc, nous allons essentiellement appeler la méthode de bloc de registre afin que nous puissions immédiatement avoir un élément qui est enregistré pour cela également. Et puis, ce que nous allons faire, c'est qu'on va faire un nouveau bloc ici, passer tout en revue, voir si ça marche ou non. Et puis, après l'ajout du premier bloc, ils vont également ajouter un deuxième bloc. Donc, bloc statique public, bloc final ou bloc de soulignement Malcolm 40k, qui est égal au bloc d'enregistrement avec le nom une fois de plus, bien sûr, recalquer bloc de soulignement ou écrit en minuscules. Et ce nom est de nouveau généré automatiquement. Et nous allons créer un nouveau bloc. Vous n'êtes qu'un bloc normal. Avec cette fois les réglages de tissu rock, vous pouvez voir cela. Donc, cela copie essentiellement un matériel ici. Ce sera matériel, en fait du matériel connu. Et puis nous allons dire qu'en fait le bloc, maintenant le bloc aura du métal pour moi pas tellement de métal matériel. Et puis une fois de plus, vous pouvez voir tous les différents paramètres que nous pouvons définir. Il y en a beaucoup, comme vous pouvez le constater clairement, certains d' entre eux doivent passer à travers. Par exemple, vous savez, casser l'outil BI. Vous pouvez voir que si je devais ajouter la balise d'outil ici, et vous pouvez voir qu'il s'agit en fait d'une frappe rouge aussi. Nous ne pouvons donc pas utiliser celui-là. Par conséquent, ceux qui ont des percées ne devraient pas utiliser les autres que nous pouvons utiliser. Ne vous inquiétez pas. Ainsi, par exemple, on peut utiliser quelque chose comme cette force, qui est essentiellement la dureté et la résistance. Essentiellement, combien de temps faut-il pour briser ce bloc. Nous voulons toujours appeler la méthode de l'outil requiert pour chaque bloc. Fondamentalement, c'est très important. Ensuite, après avoir obtenu le bloc, nous devons également passer dans le groupe d'articles. Donc, groupe d'articles divers ici même dans ce cas. Mais au cours de la prochaine conférence, nous allons également voir comment ajouter notre propre groupe d'articles personnalisés. C'est pourquoi il est très important que nous ayons un périmètre possible ici pour nous faciliter un peu la vie. ce moment, il s'agit en fait du bloc défini. Allons à notre cours de MC et passons ici. Donc, ce sera les blocs blocs de mode de registre de points. Assurez-vous que cela est appelé après les éléments. C'est juste l'ordre dans lequel j'aime le faire. Je ne pense pas spécifiquement que cela soit toujours nécessaire, mais c'est tout simplement logique. Parfois, la commande ici est très importante pour le moment. On va juste s'en tenir à ça. Et en fait, ouvrons d' abord D dans le fichier JSON de soulignement. Et voyons voir. Alors, quel serait le bloc ? Eh bien, c'est en fait assez simple. Cours AMC à point de bloc qui recalque le bloc de soulignement. Et puis bien sûr encore une fois le nom traduit ou le bloc Malcolm ici. Donc, bien sûr, cela commence maintenant par un bloc et c'est qu'Oracle peut bloquer ici est encore une fois juste le nom donné dans les blocs de boue. Maintenant, les fichiers JSON sont un peu différents car nous avons besoin d'un nouveau dossier. Ainsi, à l'intérieur des ressources et d'une armada D, dans notre cas MC, cliquez avec le bouton droit sur un nouveau répertoire appelé Bloc states. également très important que cela soit écrit correctement. Nous allons donc avoir besoin d'un nouveau fichier appelé recalc Underscore block, l'ego adjacent. Et je vais le faire une fois de plus manuellement, puis je vais vous expliquer. Nous avons donc besoin de crochets bouclés, puis nous aurons besoin d'une variance. Assurez-vous que cela est écrit correctement, le tout entre crochets. Et puis des guillemets vides, des crochets bouclés, un modèle, Olin, un cours MC, un bloc tombé ou une vache vient un bloc de soulignement, n'est-ce pas ? C'est exactement comme ça. Maintenant, c'est une situation de bloc très intéressante. Comme je l'ai dit, nous allons voir cela dans une prochaine conférence. Je vais passer en revue ce que chacun de ces JSON signifie réellement. L'idée générale est qu'il existe différentes variantes que nous pouvons définir. Actuellement, nous n'avons rien à trouver car notre bloc n'a pas de propriétés d'état de bloc. Il existe donc différentes propriétés que nous pouvons définir ultérieurement, ce que nous verrons dans la section intermédiaire du cours. Ensuite, nous pouvons pointer vers différents modèles. Donc, pour notre cas, nous avons besoin d'un modèle sous l'ancien appel du bloc ou d'un bloc de calcium. Ainsi, à l'intérieur du dossier de modèles Block, cliquez avec le bouton droit sur le nouveau fichier pour un trait de soulignement de calcium blog.js, JSON. Et le modèle de bloc se présente comme suit. Cela va ressembler au modèle d'article. Donc, les crochets bouclés et ensuite le cube oblique de bloc parent soulignent tout cela simplement, ce parent dit simplement, hé, les textures vont être les mêmes tout autour. Ensuite, nous allons encore avoir les textures ici. Record des deux-points. Et puis tous les blocs de côlon de cours MC tombés ou un bloc de soulignement de calcium. Vous pouvez donc voir encore une fois que nous avons une texture et ce sera la texture des six côtés du cube, mais c'est pourquoi tout est en cube. Et puis c'est sous le bloc ou le déblocage du cours MC. C'est encore une fois le nom du fichier que nous devons posséder. C'est donc à peu près tout ce qu'il y a à faire. Et nous allons également copier cela. Je l'ai déjà préparé. Bien sûr, vous pouvez également l' obtenir en téléchargement, mais assurez-vous également de suivre la licence dans les crédits ici. Toutes les textures sont donc sous licence particulière. Alors assurez-vous de suivre cela aussi si vous l'utilisez dans un cadre public, n'est-ce pas ? Et nous avons également besoin d'un modèle d'article. C'est le problème avec les blocs. Il nécessite en fait trois fichiers JSON différents, tous nommés de la même manière. Jason d'un bloc 6, un modèle Jason et un modèle d'objet Jason. En fait, je ne vais pas copier ça. Je vais en faire un nouveau. Ainsi, dans le dossier des modèles d'éléments, cliquez avec le bouton droit de la souris ou recalquez le loc de soulignement Jason. Et cela ressemble en fait différemment des autres modèles d'article, car un modèle d'article en bloc est en fait différent. Il va donc y avoir des crochets bouclés. Et ensuite, il y aura un côlon parent, bloc de cours MC ou une barre oblique de déblocage, ou un bloc de soulignement calcique. Maintenant, ici, il fait référence au modèle de bloc et fait en sorte que l'article au lieu de l'inventaire soit affiché de cette manière 3D que blocs sont généralement affichés dans l'inventaire. Mais encore une fois, nous verrons cela un peu plus en détail dans une conférence ultérieure lorsque nous parcourrons tous les fichiers JSON. Mais maintenant, nous avons les trois fichiers JSON. Nous avons fait la texture et la traduction et quels blocs enregistrent la méthode UX mobile est également appelée. Voyons donc si cela fonctionne. Très bien, nous sommes à Minecraft, alors allons-y. Le plus tôt que l' Oracle peut bloquer, et si je le pose là, c'est aussi le cas. Donc, tout fonctionne très bien. Je voulais donc mentionner une petite chose rapide. Il y a essentiellement deux sections où vous pouvez rencontrer un problème. Soit la texture à l'intérieur du monde ne fonctionne pas. Donc, une fois que j'ai posé le bloc, il se peut qu'il y ait une année de texture rose noire , ou la texture à l'intérieur de l'inventaire ne fonctionne pas. Il y a peut-être deux choses différentes qui se passent. Si la texture dans le monde ne fonctionne pas, il est fort probable que le bloc reste le fichier JSON. C'est trop boiteux. Si la texture de l' inventaire ne fonctionne pas, c'est le modèle d'article Jason, à blâmer. Et si les deux ne fonctionnent pas bien, cela peut être l'une de ces raisons. C'est très important. C'est essentiellement l'idée générale, n'est-ce pas ? Et juste pour qu'il soit montré comment ajouter un nouveau bloc, je le sélectionne et appuyez sur Control C puis sur Control V pour le coller. Et ensuite, nous allons changer cela pour Oracle ou ici, et encore une fois ici aussi, non ? Le nom est également très important. Le reste, si vous voulez changer ces choses que vous pouvez, bien sûr, les changer. Disons, par exemple, le volume ou qu'il n'est pas fort. Et en fait, ce n'est pas du métal ou du métal. C'est plutôt comme de la pierre. C'est également très bien. Et ça, je suis vraiment très content. Maintenant, le bloc est dans le jeu, mais il n'a pas encore de texture et tout ce jazz. Mais nous devons également ajouter un bloc C Jason pour cela, un modèle de bloc JSON et un produit lait Jason. Maintenant, ce que je fais habituellement, c'est que je prends juste l'un des Jason déjà existants et que je le copie comme ça, non ? Faites-le glisser en maintenant la touche Contrôle enfoncée, puis vous pouvez modifier le nom ici. Donc, Oracle ou, et ensuite la même chose ici aussi. Recalc OR, puis la même chose pour le modèle de bloc, non ? Au lieu de pouvoir bloquer Oracle, nous allons avoir un précalc ou un an. Et puis cela va pointer vers le rappel ou la texture au lieu de la texture du bloc. Et puis la dernière chose sera que le modèle d'article va également être renommé ou ici. Et ensuite, ici aussi. C'est généralement comme ça que je vais ajouter de nouveaux blocs, non ? Il suffit de copier sur un seul. L'exemple de base, puis le même ici dans la langue, va juste dupliquer cela, ajouter la virgule ici, puis s'assurer que cela fonctionne bien ou, ou tout fonctionne bien. Ensuite, je vais également ajouter la texture, qui est bien sûr disponible pour vous ou téléchargeable également. L'ego et maintenant le calcium ou le bloc sont également ajoutés au jeu. Donc, juste pour l'achèvement, voyons si cela fonctionne. Bon, nous sommes de retour dans Minecraft, alors passons à l' onglet divers et voyons qu'il y a déjà du calcium ou maintenant aussi dans le jeu, posons-le, tout fonctionne parfaitement. C'est également l'un des avantages. Si vous avez déjà un bloc de travail et que vous copiez sur les fichiers JSON, généralement lorsqu' il fonctionne pour un bloc, il fonctionnera également pour l'autre bloc. C'est encore une fois, plutôt cool, n'est-ce pas ? Mais ce sera déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Tout le code est disponible dans les ressources, et je vous verrai lors de la prochaine conférence. Donc, oui. 41. (Bases) Ajouter le groupe d'objets personnalisés: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter notre propre groupe d'articles personnalisés à Minecraft. Maintenant, il s'agit en fait d'un exercice très facile et ne nécessite pas beaucoup de changement de code. À l'intérieur de notre package d'éléments, nous allons cliquer avec le bouton droit sur la nouvelle classe Java appelée groupes d'éléments de mode. Et puis à l'intérieur d'ici, nous allons créer un nouveau groupe d'éléments finaux statiques publics. Tout bien sûr. Il ne s'agit donc que du nom de la variable ici, et il est égal à l'élément de tissu. Le générateur de groupe a créé un nouvel identifiant, mod de cours MC qui identifie le modèle AMA cheval comme nom de chaîne. Ensuite, après les premières parenthèses, nous allons faire en sorte qu'un fournisseur ouvre et ferme des parenthèses suivies de cette flèche avec une nouvelle pile d'articles. Ensuite, nous allons passer plus d'objets ou un lingot de calcium, puis nous finirons par un point-virgule. Il s'agit donc maintenant d'un groupe d'éléments. Si nous voulions en ajouter une seconde, nous pourrions simplement copier cela. Juste, je suis un cours 2, je suppose que quelque chose comme ça. Alors, bien sûr, changez aussi le nom ici, n'est-ce pas ? C'est très important, mais c'est ainsi que vous pouvez en ajouter un deuxième et ensuite vous pouvez simplement y faire référence. Mais pour nos besoins, nous allons simplement en ajouter un. Et puis, bien sûr, comment appelons-nous cela ? Eh bien, au lieu de la classe plus de blocs, nous pouvons simplement remplacer l' article divers ici par plus de groupes d'articles ce cours. Et ensuite, la même chose se passe ici. Donc je vais juste copier ce contrôle C, Control V. Et puis la même chose vaut pour les autres éléments ici s'appelleront les divers. Nous allons juste passer dans le groupe de cours ici. Et ça va bien se passer. En outre, il suffit de supprimer cela aussi. Vous y allez. Maintenant, tout est bien rangé. Et bien sûr, la pile d' éléments ici, cela fait référence à la chose réelle qui est affichée dans l'onglet réel, n'est-ce pas ? Maintenant, ce sera un article de bienvenue ou une Angleterre en coton qui sera exposée. Vous pourriez, par exemple, également dire que si vous vouliez qu' un bloc de coton soit affiché, vous pourriez également mettre cela dedans et cela fonctionnerait également. Mais nous allons rester avec le lingot, ça va aller. Et ensuite, ce cours ici est très important car nous voulons également ajouter la traduction à cet effet. Donc dans l'oreille et soulignez-nous le fichier JSON, nous allons juste aller tout en bas. Cela va être très intéressant cet objet, puis regrouper la porte g. Le g réellement écrit en majuscules. Très intéressant avec votre cours MOD ID MC dans notre cas. Et puis, bien sûr, c'est le nom que nous avons donné là. Et ce sera juste l'onglet Cours. Ça va bien se passer. Il s'agit maintenant du nom qui s' affiche lorsque nous survolons l'onglet. Et encore une fois, ce cours ici, exactement ici. Donc maintenant, après avoir ajouté ceci et ajouté dans les blocs d'autres éléments, classes, Voyons si cela fonctionne ou si des réponses dans Minecraft et voyons. C'est donc une très bonne indication si nous avons une deuxième page ici, et vous y allez. L'onglet Cours, l'onglet Cours et tous nos articles ou notre boîte se trouvent à l'intérieur. Mais c'est vraiment génial et nous pouvons les sortir et les utiliser comme nous le souhaiterions. C'est vraiment cool. Mais à l'avenir, bien sûr, nous allons utiliser l'onglet Cours. Je recommande donc fortement de créer votre propre onglet également. Il s'agit donc essentiellement d'un abus dans toutes les conférences futures. Mais pour le moment, c'est tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprendra le nouveau, et je vous verrai dans la prochaine conférence. Donc, oui. 42. ASSINGMENT 5 : Blocs et objets personnalisés: Bienvenue dans la première mission du cours de tissu pour 118. Et votre devoir consistera à ajouter une ligne ou un élément calcique aux éléments de mode. Et bien sûr, tous les fichiers JSON nécessaires ainsi que les textures. Les textures vous seront fournies. Veuillez noter qu'ils sont licenciés sous vols internationaux CC BY SA 4. Par conséquent, si vous souhaitez les utiliser dans votre projet, dans un projet ouvert, assurez-vous d'y accorder un crédit approprié. Et puis aussi, vous êtes censé faire deux blocs, une fente profonde ou une fente de calcium ou, et le vol de calcium ou de bloc. Une fois de plus, les textures sont fournies sous la même licence. Les textures sont également fournies et tout est également écrit sur cette page, vous devriez voir le devoir écrit quelque part comme une véritable affectation. Je devais deviner que cela ne devrait pas prendre plus d'une ronde, soit environ 20 minutes. Peut-être devriez-vous revenir en arrière et regarder les conférences précédentes une fois de plus. Nous allons vraiment solidifier cela. Mais sinon, cela ne devrait pas prendre trop de temps. Et je dirais, bonne chance et je vous vois dans la solution. 43. SOLUTION 5 : blocs et objets personnalisés: Examinons donc la solution pour ajouter les deux verrous, la gouttelette ou le calcium ou dans le disque rock peut bloquer. Bien sûr, il s' agit essentiellement d'un exercice consistant à copier ces éléments, changer les noms ici et à s' assurer que nous choisissons la force du groupe d'éléments ici, bien sûr. Et puis dans les éléments du modèle, ajouter le calcium Rory, encore une fois, il suffit de le copier et de changer le nom ici. Et puis, bien sûr, seuls les fichiers JSON sont assez simples. Ils sont essentiellement exactement les mêmes que les autres, pointant simplement vers un modèle différent dans ce cas. Tous ces éléments sont bien sûr, et dans un seul but une fois de plus disponibles dans le référentiel GitHub que vous puissiez jeter un coup d'œil à chacun d'eux individuellement. Et je crois que je les aurai également à télécharger. Dans l'ensemble, ça ne devrait pas être trop fou. Cela devrait être un exercice assez facile à suivre pour vous. Et j'espère que vous y êtes parvenu. Si des questions se posent cours de route ou ont surgi en cours de route, n'hésitez pas à poser des questions à l'aide du système de questions et réponses de discussion. J'espère que vous apprendrez quelque chose avec cette mission et je vous verrai lors de la prochaine conférence. Donc, oui. 44. (Bases de la recette personnalisée: Ou je me réjouis de revenir au cours de tissus pour 118 ans. Dans cette conférence, nous allons examiner une recette personnalisée. Pour les recettes personnalisées dans l'ensemble, vous pourriez dire : « Eh bien, elles vont probablement être très compliquées. Cependant, ce n'est pas le cas en fait. Certaines personnes d'entre vous ont peut-être déjà joué avec des données dans le passé. Et c'est à peu près la même chose. Nous allons donc dans notre dossier de ressources. Et au lieu de le placer dans le dossier des ressources, nous devons en créer un nouveau au lieu du dossier de ressources appelé data. Et puis, à l'intérieur, nous allons créer un nouveau dossier avec notre modèle. Dans notre cas bien sûr, MC cours. Et puis à l'intérieur de là, nous voulons créer le dossier recettes. Encore une fois, il est très important que tout soit écrit exactement comme il est, sorte que cela doit correspondre exactement à votre identifiant de modèle et les recettes également être écrites comme ceci ou en minuscules. Je voulais juste le mentionner encore une fois. Et à l'intérieur d'ici maintenant, toutes nos recettes vont disparaître. Maintenant, à quoi ressembleront-ils ? Eh bien, je vais écrire une recette. Vous êtes juste par souci d'argument, cependant, je vais cliquer avec le bouton droit sur Nouveau fichier et nous allons appeler cela le bloc de soulignement de revenu Oracle, soulignement de index.js. Et ce qui arrive parfois, c'est qu' en bas, ici, vous pouvez voir Jason Minecraft recette Jason, que fondamentalement le schéma est automatiquement détecté, mais vous pouvez également y aller, n'est-ce pas ? Donc pour certains fichiers JSON, je vais juste ouvrir celui-ci. Par exemple, vous ne voyez aucun schéma JSON. Vous pouvez toujours y aller en rouge et cliquer dessus , puis rechercher une recette et des configurations. Vous avez une recette de données micro-ondes. Il y a donc des trucs ici. Vous n'en avez pas nécessairement besoin. Le seul avantage que vous obtiendrez, c'est que si vous commencez à taper des choses en C, vous obtiendrez quelques suggestions ici. Mais dans un instant, je vais vous montrer comment vous pouvez copier des recettes à la vanille, vous pouvez copier des recettes à la vanille, ce qui rendra notre vie beaucoup plus facile. Donc, pas de soucis là-bas. Nous commençons donc par les crochets bouclés, puis par un type. Maintenant, le type est essentiellement de quel type d'artisanat il s'agit. Et vous pouvez voir qu'il y a beaucoup de choses pour cette cuisine de camphre en forme, sans forme et durable, la fusion, la forge, le tabagisme et la coupe de pierre. ensemble, ce que nous allons jeter un coup d'œil , c'est essentiellement la forme, l'informe, la fusion et le dynamitage sur le reste sont à peu près les mêmes. Il n'y a pas beaucoup de différence dans chacun d'entre eux. Tout d'abord, nous allons jeter un coup d'œil à une recette de forme. Il s'agit donc d'une recette de forme. En fait, nous devons définir un modèle ici, mais il s'agit essentiellement d'une liste, et il contient généralement trois chaînes. Et généralement, ces trois cordes ont une longueur de trois. Ces bagues représentent donc la table d'artisanat. Donc si je fais ça, c'est vrai, donc je les remplis tous avec des extras de cendres pour discuter ici, alors ce que vous devriez remarquer, c'est que, bien, c'est trois par trois. C'est littéralement le banc d'artisanat. Et c'est tout à fait exact. Le motif ici représente donc le banc d' artisanat. Donc, si je devais le faire, par exemple , je devrai remplir l'extérieur et laisser la fente du milieu vide. Et puis, vous savez, vous pourriez faire la même chose avec quelque chose comme ça. Il s'agit donc d'une idée générale sur la façon dont vous pouvez faire ce schéma. Maintenant, vous n' avez pas nécessairement trois cordes, et elles ne doivent pas nécessairement avoir une longueur trois. Donc, quelque chose comme ça, qui serait la porte, par exemple. Parce que vous pouvez dessiner la porte soit sur le côté gauche de la table d'artisanat, sur le côté droit de la table d'artisanat. Et cela s' occuperait essentiellement de cela. Là encore, un peu d' expérimentation est bien sûr très intelligente. Et aussi vers la fin de la conférence, nous allons jeter un coup d'œil aux recettes à la vanille afin que vous puissiez également les copier à partir de celles-ci. Ensuite, nous devons définir une clé. Maintenant, la clé ici est très intéressante car, bien sûr, cela doit relier quelque chose, non ? Qu'est-ce que l'alarme Hashtag ? Je ne sais pas exactement. Nous devons donc définir cela. On va faire le hashtag deux-points , puis encore une fois des crochets bouclés. Et à l'intérieur d'ici, nous allons définir un objet. Il s'agira bien sûr de noyaux MC ou d'un trait de soulignement calcique. Et cela signifie maintenant que le hashtag ici est censé être cet objet particulier. Mais ne soyez pas trop fou, alors nous pouvons obtenir un résultat ici à la fin. Et ce sera le cours MC. Ou un bloc de soulignement calcique. Car rien de trop fou ne devrait être ici. Tout cela devrait être une façon assez sensée mettre l'OriC bienvenue à Ingrid ici comme clé. Et ensuite, c'est essentiellement en train d'être reconnu. Hé, nous devons mettre neuf ou des ingles de calcium pour en neuf ou des ingles de calcium pour avoir un ou un bloqueur de calcium. Maintenant, la question va se poser. Qu'en est-il de l'inverse ? Donc, si je mets un Oracle peut bloquer dans le banc d'artisanat, comment puis-je en retirer neuf ou un lingots de calcium ? Eh bien, je vais juste copier celle-ci. tous les fichiers récents Bien sûr, tous les fichiers récents seront à votre disposition. Nous allons donc jeter un coup d'œil à ça en C. C'est maintenant un type sans forme. Au lieu d'un modèle, nous avons maintenant des ingrédients. Et vous pouvez voir que nous n'avons un seul ingrédient ici. L'Oracle peut bloquer et il se transformerait en neuf pour Calcium England. Vous pouvez donc également spécifier ici un nombre qui, d'ailleurs, fonctionne également pour la recette en forme. ne s'agit pas là d'un problème. Cela fonctionne donc aussi. Ce sont donc deux exemples de ces éléments façonnés dans la recette sans forme. Jetons maintenant un coup d' œil à la fusion et au dynamitage. Je vais aussi les copier. Ici, nous y sommes. Donc, vous pouvez voir que le type ici n'est que grenaillage, puis voici juste la fusion. Et encore une fois, il faut définir un ingrédient. Dans ce cas, vous ne pouvez définir qu'un seul ingrédient. Vous n'avez, bien sûr, qu'une seule fente d'entrée dans le haut fourneau ou le four normal ? Alors, vous pouvez dire, hé, quel est le résultat ici ? Vous pouvez même définir l'expérience que vous obtenez de chaque éperlan ici, puis aussi le temps de cuisson. Donc, combien de temps cela va prendre pour les tiques. Vous pouvez voir que le grenaillage est bien sûr plus rapide que la fonte réelle. Un. Une autre chose que je voulais aussi vous montrer, c'est, par exemple, que j'ai ici cette pile de diamants d'une autre recette personnalisée. Et vous pouvez voir que j'utilise à la fois mes propres objets ainsi que des objets Minecraft. Et vous pouvez voir qu'il n'y a aucun problème avec cela. Il suffit de spécifier l' noms Minecraft ici , puis le nom de l'élément. C' est donc à peu près tout ce qu'il y a à faire pour fabriquer des objets qui ne sont pas les vôtres. Vous pouvez fabriquer des objets Minecraft qui fonctionnent parfaitement bien, mais c'est également un exemple de cela. Et maintenant, avant d'y jeter un coup d'œil, passons en bas afin que nous puissions examiner toutes les données et les fichiers de ressources de Minecraft en descendant dans la fenêtre du projet, l'extérieur bibliothèques, en ouvrant cela puis en descendant. Et vous pouvez voir que, fondamentalement celui-là, ici. Nous avons donc cartographié le projet Minecraft, Minecraft et ainsi de suite. Celui-ci devant la grande liste noire qui se ressemblent tous, à droite, au-dessus que nous avons celui-là. Nous allons ouvrir cela et vous pouvez voir qu'il y a un dossier de ressources, un dossier de données et même un dossier réseau. Dans le dossier net, tout le code est écrit dans ce que nous pouvons également jeter un coup d'œil à tout le code. Mais nous n'allons pas le faire pour le moment. Nous sommes intéressés par le dossier de données, Minecraft, puis les recettes. Et vous voyez, je pourrais maintenant jeter un coup d'œil à chacune de ces recettes qui n' auraient même pas d' importance ici, n'est-ce pas ? Je pourrais donc jeter un coup d'œil à n'importe quoi. Mais par exemple, Oh, comment fonctionne la fusion du charbon ou oh, c' est comme ça que ça marche. D'accord. Assez juste. On peut aller voir le composteur. Comment fabriquez-vous cela ? Oh, oui, bien sûr, c'est comme ça que tu as conçu ça. Vous pouvez voir que vous avez accès à tout ce que vous voudrez peut-être ici. Autrement dit, vous devriez pouvoir presque tout faire en ce qui concerne les recettes que vous aimeriez avec cet équipement, vous avez accès à n'importe quoi. Je vous recommande vivement si vous voulez en prendre un. Disons donc, par exemple, que le saumon cuisinier ici vous êtes comme, d'accord, je veux prendre ça. Ce que vous faites, c'est que vous venez d'appuyer sur Contrôle C. Ensuite, vous pouvez revenir à votre propre dossier de recettes Control V pour le coller. Et ensuite, vous l'avez là-dedans. Et ensuite, vous pouvez fondamentalement le modifier comme vous le souhaitez. Mais c'est l' idée générale de la façon de le faire. Je vais simplement le supprimer à nouveau parce que nous n'aurons pas besoin de celui-ci. Ça va aller de toute façon, après avoir ajouté tous ces éléments, voyons si ça marche ou si nous-mêmes dans Minecraft. Voyons d'abord si nous pouvons ou non fabriquer le bloc avec l' oracle à venir et c'est parti. Nous pouvons très facilement le faire. Et ce que vous constaterez également, c'est que dès que vous aurez les recettes faites une fois, vous pouvez voir qu'elles sont également disponibles ici dans les livres de recettes. C'est plutôt cool. Voyons si je peux sentir le vol, comptez-les aussi ici. Et bien sûr, je peux, et cela devrait fonctionner dans le four normal ou dans le haut fourneau. Maintenant, oui, celui-ci est vraiment plus rapide, donc ils vont assez facilement. Et vous avez vu que je peux aussi après l'inverse. Donc, comme ça fonctionne aussi. C'est plutôt cool si je le dis moi-même. Maintenant, bien sûr, tous les blocs que nous avons, il pourrait y avoir d'autres recettes manquantes. Nous allons en faire dans la prochaine tâche, qui sera en fait après la prochaine conférence, où vous devrez essentiellement ajouter le reste des recettes ici. Et ils seront, bien sûr , également disponibles. Donc, pas de soucis là-bas. Et bien sûr, vous avez toujours accès aux recettes ici. Donc, en théorie, il devrait s'agir d'un exercice très, assez simple. Mais pour le moment, c'est tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et appris quelque chose de nouveau s'il l'a fait. Et je vous verrai lors de la prochaine conférence. Donc, oui. 45. (Bases) Boucles de blocs personnalisés avec des tables de film: Ou je me réjouis de revenir au cours de tissus pour 118 ans. Et dans cette conférence, nous allons examiner les tables de perte personnalisées à travers ce que nos tables de routage personnalisées définissent essentiellement les choses qui tombent d' un bloc lorsque vous l'exploitez. Nous avons donc dans nos blocs, l'Oracle peut bloquer et l'orbitale OK. Et si espérons-le, vous avez effectué la première affectation, vous aurez également l'ardoise profonde ou plus et la ligne , une colonne ou un bloc. Maintenant, nous allons maintenant implémenter gouttes pour le bloc et le, ou, le, ou bien sûr, est spécial ici car il va y avoir des différences vous ayez ou non un outil qui a une touche de cellule dessus. Et si c'est le cas, alors bien sûr, le bloc ou le bloc tombe. Sinon, le brut ou le calcium tomberont. Bien qu'il y ait quelques choses dont nous avons besoin. Une fois de plus, dans notre dossier de données, dans le dossier de cours MC, cliquez avec le bouton droit sur un nouveau répertoire appelé tables de soulignement de butin. Encore une fois, il est très important que cela soit écrit exactement comme ça. Puis à l'intérieur de là dans un nouveau répertoire appelé blocs. Mais je vais créer un nouveau fichier ici appelé Oracle come underscore block dot-dot JSON. Ce qui est très important, c'est que ce nom ici doit correspondre au nom donné ici. Mais c'est différent des recettes parce que les recettes ne dépendent pas vraiment d'une chose particulière. Nous avons pu définir le résultat sur le côté de celui-ci, alors que cette fois dans les tables de luge, le nom du fichier doit à nouveau correspondre au nom donné ici. Très important, non ? Nous allons juste passer par là, donc nous allons avoir un type. Et ce sera le bloc de côlon Minecraft car il s' agit bien sûr d'une table de butin de blocs. Ensuite, nous allons avoir un testament. Et c'est une liste. Et puis, fondamentalement, des crochets bouclés ici encore, des rôles, des rôles un. Ensuite, nous avons quelques entrées ici, ce qui est une autre liste. Et à l'intérieur, nous allons avoir un type d'objets Minecraft. Nous voulons donc déposer un article ici. Le nom de cet élément est deux-points de cours MC ou un bloc de soulignement Malcolm, n'est-ce pas ? Cela peut donc vous paraître assez fou et c'est tout à fait très bien. Parce que, dans l'ensemble, l'essentiel des tables de luge est qu' elles peuvent être assez compliquées. C'est certainement un exemple d'un symbole très, disons facile ou 1. Cependant, ils peuvent certainement devenir beaucoup plus compliqués. Par exemple, l'ancien, je vais en fait copier ça ici. Un récapitulatif ou, et vous pouvez voir que c'est un peu plus compliqué que vous pouvez le voir clairement, que même si nous n'avons qu'une seule entrée, il s'agit maintenant d'alternatives de type, qui signifie que En gros, il y a deux alternatives. Nous avons soit un article où, si une condition particulière est remplie, nous allons choisir celui-ci. Sinon, nous n'avons qu' un article avec un montant particulier ici. Ces tables lubrifiées peuvent devenir très compliquées, très rapides, comme vous pouvez le voir clairement. Et l'idée générale est qu'il y a une bonne ressource. Il y avait en fait deux bonnes ressources que je peux recommander vivement. L'une des ressources est l'entrée Wiki ici. Il s'agit donc de l'entrée de table de butin Minecraft Wiki. Je vous recommande vivement d'y jeter un coup d' œil car vous pouvez examiner toutes les différentes choses qui s'y trouvent. C'est donc essentiellement ainsi que cela est décrit. Maintenant, dans l'ensemble, c'est un peu compliqué à lire pour la première fois, mais je vous recommande vivement si vous voulez vraiment des tables de routage absolument personnalisées, vous devrez jeter un coup d' œil à cela et simplement à Jetez un coup d'œil et parcourez cela essentiellement, puis il y a une autre chose et c'est le générateur de table de butin par un missile GitHub IO. C'est incroyablement utile et vous pouvez simplement choisir tout ce que vous voulez, n'est-ce pas ? Donc, vous pouvez dire que je voulais piéger pour tomber seulement s'il y a des choses spécifiques. Par exemple, vous pouvez avoir une chance aléatoire ici. Encore une fois, la vérification de l'emplacement, même l'outil de correspondance. Il y a beaucoup de choses que vous pouvez faire ici, et je le recommande vivement lorsque vous regardez ce lien également, en générant des trucs, assurez-vous que vous avez 11, 18 ans et plus ici parce qu'il y a parfois des différences entre la version. Maintenant, si vous n'avez pas besoin de quoi que ce soit , disons, hors du royaume de la vanille, alors vous pouvez bien sûr aller les bibliothèques externes ici, vers celle-ci ici, net Minecraft, projet minecraft à, et ainsi de suite et ainsi de suite dans le dossier de données, les tables de butin Minecraft. Et ensuite, jetez un coup d'œil à toutes les tables de luge que possèdent également les blocs normaux. Par exemple, je veux dire, que pourrait-il être ? La poitrine n'est pas vraiment intéressante car la chute de la poitrine a été manipulée différemment dans ce cas. Mais où en avons-nous d'autre ? Je veux dire, qu'est-ce qui pourrait être intéressant ? Vous pourriez, l'herbe pourrait être intéressante, non ? En fait, le bloc d'herbe est juste ici. Encore une fois, nous avons des alternatives, n'est-ce pas ? Si vous avez une touche de soie dessus, vous obtenez le bloc d'herbe, sinon vous obtenez de la saleté. Je recommande donc une fois de plus, s'il y a quelque chose qui existe déjà dans la vanille, suffit de jeter un coup d'œil aux bibliothèques externes vous facilitera la vie. Mais le simple fait d' ajouter ces tables pour perdre des tables n'est pas tout ce que nous devons faire maintenant, c'est très important. Ne sautez en aucun cas cette étape. Sinon, ça ne marchera pas, n'est-ce pas ? Nous devons donc ajouter des balises également. Nous n'avons pas encore parlé de balises, mais nous le ferons très bientôt. Cependant, pour le moment, nous pouvons simplement les considérer comme une sorte de liste d'éléments, de blocs ou de tout ce que nous pouvons penser qui a un objectif commun ou qui est regroupé d'une manière ou d'une autre. Ainsi, à l'intérieur de notre dossier de données, nous allons cliquer avec le bouton droit sur un nouveau répertoire appelé Minecraft. Maintenant, vous en avez peut-être déjà entendu parler. Maintenant, à l'intérieur, nous allons créer un nouveau répertoire appelé tags. Et puis, à l'intérieur, nous allons créer un nouveau répertoire appelé blocs. Et puis le dernier, mais non le moindre en termes de leur, nous aurons également besoin d'un nouveau répertoire appelé mineable. Mineable en fait ils il y a et maintenant je vais copier sur les étiquettes ou mineables ici. Et je vais vous expliquer dans un instant, nous avons également besoin de trois balises ou de blocs. Bien sûr, tout cela est disponible dans le référentiel GitHub ou un individu. Et cela se trouve également ici même dans les bibliothèques externes, directement dans le dossier de données, nous allons dans les blocs de balises, vous pouvez voir mineable. Il y a exactement ces quatre fichiers JSON. Et puis dans le dossier de la boîte ici, les quatre autres sont, les trois autres sont également disponibles. Qu'est-ce que cela signifie ? Eh bien, nous devons être en mesure de définir l'incapacité ou nos blocs. Cela signifie que si vous pouvez jeter un coup d'œil à ce taux, j'ai déjà ajouté le bloc de comorbidité oracle, le recalc et le bloc bruts et l'ardoise profonde ou un télécom ou à la pioche adjacente. Cela signifie que ces blocs sont exploitables avec des actes de cochon. Cela devrait être logique, cela devrait être assez sensé ici. Rien de trop fou. Maintenant, la même chose vaut pour les besoins Diamond a besoin de minerai de fer, a besoin d'un outil en pierre. Nous pouvons définir le niveau d' outil dont il a besoin pour exploiter cela. Donc, l'outil de fer ici, je l'ai fondamentalement défini comme ayant besoin d'outils en fer. Au moins, chacun de ces blocs ne serait pas exploitable uniquement avec un outil en pierre. C'est donc très intéressant. Il a donc besoin de minerai de fer, et c'est essentiellement ce dont vous avez besoin pour ajouter des choses supplémentaires ici. Vous pouvez littéralement en ajouter un nouveau ici, n'est-ce pas ? Je ne connais donc pas le test de cours MC. Et puis, fondamentalement , assurez-vous que nous avons une virgule ici aussi. Et c'est à peu près tout. C'est donc tout ce que vous devez faire. Assurez-vous que tous les blocs que vous définissez à l'intérieur de ces fichiers de balises sont réellement valides. Vous ne pouvez donc pas comme j'ai fait le test. Si cela n'existe pas, il se peut que vous rencontriez une erreur. C'est donc très important, mais vous aurez besoin de ces balises et vous devrez définir tout ce qui se trouve à l'intérieur de votre butin pour qu'ils lâchent leur butin, c'est une chose très importante. Je vous recommande vivement de le faire. Et encore une fois, bien sûr, tout cela est disponible pour vous. Sinon, créer ces fichiers n' est pas si compliqué que vous pouvez le voir clairement, ils ne sont pas si fous. Mais pour le moment, voyons si cela fonctionne ou plus vite dans Minecraft. Essayons donc de le miner avec la pioche en pierre et vous pouvez voir que cela prend déjà beaucoup de temps. Et ça, c'est, cela ne devrait pas donner de résultat. Et bien sûr, ce n'est pas le cas. Lorsque vous utilisez la pioche en fer, elle fonctionne et elle tombe également ici. Mais essayons la même chose ici. Et vous pouvez voir que nos bruts ou nos télécoms tombent. Et nous pouvons également essayer cela avec l'écriture X néther par exemple. Je veux dire, ça prend tellement de temps. C'est une très bonne indication, généralement bien sûr, que cela ne fonctionne pas, n'est-ce pas ? Et puis le diamant, bien sûr, fonctionne aussi parce qu'il fonctionne, en gros, en fer ou au-dessus, c'est l'idée générale ici. C'est donc plutôt cool. Et puis, pour l'amour de la fin, une pioche en diamant avec une touche de soie. Et vous pouvez voir que maintenant il supprime le système Oracle CRM ou ici aussi, n'est-ce pas ? Une dernière chose que je voulais mentionner est que si vous n'avez pas appelé l'outil The requiert ici, cela pourrait également ne pas fonctionner aussi bien. Il s'agit donc d'une autre condition préalable très importante. Je voulais juste mentionner cela parce que je ne suis pas sûr à 100% si je l'ai mentionné ou non dans le tutoriel du bloc, mais cela est certainement nécessaire aussi pour chacun de vos blocs. C'est donc très important. Mais sinon, ce serait pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 46. ASSISES 6 : Recettes personnalisées et tables de tournages: Très bien, Bienvenue dans la deuxième mission ici pour la partie Minecraft de ce cours. Et dans cette mission, vous êtes censé faire les choses suivantes. Maintenant, bien sûr, vous avez également devant vous les tâches réelles , espérons-le. Mais l'idée est que vous devriez ajouter tables de butin à la fois pour le bloc, l'ardoise profonde ou un fauçon ou pour la ligne, une colonne ou un bloc. Ceux-ci devraient être assez simples, car nous avons vu deux exemples qui sont presque exactement les mêmes. Eh bien, cela devrait être, je pense, assez simple. Et puis, en ce qui concerne les recettes, je veux vraiment que vous fassiez quelques choses. Je veux que vous ajoutiez la recette de grenaillage et de fusion pour les deux blocs. C'est le numéro un. Et numéro deux, je veux que vous puissiez le faire, je veux que vous puissiez obtenir des pépites d' un lingot, puis aussi fabriquer des pépites en lingot. Et puis, enfin, pour les recettes, je veux que vous utilisiez n'importe quelle recette en utilisant des articles à la vanille. Il peut s'agir de tout ce dont votre esprit peut rêver, vous savez, d' obtenir 64 diamants pour deux tiers de blocs ou quelque chose comme ça pourrait être n'importe quoi, tant qu'au moins cela prend dans les articles Minecraft de la recette, je suis d'accord avec ça. Ce serait essentiellement ça. Si quelque chose n'est pas clair, vous devriez bien sûr avoir les tâches à votre disposition pour vérifier les deux fois, mais bonne chance et vous amuser sur le devoir. 47. SOLUTION 6 : Recettes et tables de tournages: Très bien, jetons un coup d'œil à la solution pour le devoir ici. Bien sûr, le bloc de calcium du vol était assez simple. J'espère que c'est à peu près la même chose que la normale ou le recalc. Débloquer. C'est ici. Laisser tomber le disque rock peut bloquer cela devrait, espérons-le, quand il est très facile ici. Et puis l' ardoise div ou un calcium ou est presque identique à la normale également. On est en bas, il fait tomber le calcium Rory par ici. Il laisse tomber l' ardoise profonde ou un calico ou ce n'est qu' un petit changement que vous devrez faire dans la table d'oracle ou de butin, Jason. J'espère que ce n' était pas trop fou. Mais jetons un coup d'œil aux deux recettes de grenaillage. Bien sûr, vous n'êtes que l'ingrédient qui doit vraiment changer. Donc, bien sûr, le résultat sera toujours des lingots. Et puis, pour la fusion, l' amine est presque la même. La seule chose qui, ici, les changements pour le dynamitage à la fusion, c'est le temps de cuisson. Et là encore une fois, les objets C'est presque tout ce qu'il y a à faire, les pépites pourraient être un peu plus intéressantes car bien sûr l'une d'elles est une recette de forme et l'autre est Une recette sans forme qui renvoie également un compte neuf. Cela aurait donc pu être très intéressant ici. Et puis, bien sûr, il n'y a pas de solution pour votre solution personnalisée. Tant que cela fonctionne, c'est très bien. Vous pouvez bien sûr, toujours jeter un coup d'œil aux diamants empilés de l'étoile néthère ici, ce qui est une idée ou un exemple d' une chose possible que vous pourriez faire aussi, mais ce sera c'est pour cette solution ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 48. (Bases) Créer un objet avancé: Très bien, bienvenue au cours de tissus pour 118. Et dans cette conférence, nous allons nous pencher sur un point avancé. Qu'est-ce qu'un article avancé ? Où appeler les articles avancés sont des articles qui ont leur propre classe d'articles. Donc, si nous entrons dans notre classe plus Adams, nous pouvons voir que ni le lingot Northern nugget ni la rangée ni calcium n'ont leurs propres classes car ce sont tous de nouveaux objets ici. Maintenant, cela va changer. Au lieu de notre package d'articles, nous allons cliquer avec le bouton droit sur un nouveau package appelé personnalisé. Et puis à l'intérieur de là, nous allons cliquer avec le bouton droit de la souris sur la nouvelle classe Java, et ce sera l'élément de barre de descente. Maintenant, quelques choses à mentionner ici. Habituellement, vous souhaitez terminer cela avec le nom de l'élément ici, quel que soit le nom de votre article, puis vous terminez par l'article, juste pour que vous puissiez facilement voir qu'il s'agit en fait d'un article. Cela va maintenant étendre la classe d'articles. Nous allons donc choisir celui-ci ici. Et puis nous survolerons ce constructeur de creed qui correspond super. Et maintenant, nous sommes très satisfaits de la façon dont le SR et l'extérieur. Nous pouvons maintenant utiliser cette classe. Bien sûr, nous voulons toutefois y ajouter des fonctionnalités personnalisées. À savoir, lorsque je clique avec le bouton droit de la souris sur cet élément, je veux essentiellement vérifier chaque bloc en dessous d'un bloc lequel je viens de cliquer et voir s'il y a des objets de valeur là-dedans. Alors, comment allons-nous faire cela ? Eh bien, commençons par cliquer sur le bouton central de la souris sur la classe d'éléments, et vous trouverez ici un tas de choses que vous pouvez écraser. C'est donc le numéro un en appel. Encore une fois, si vous n'êtes pas familier avec Java, pour jeter un autre coup d'œil à l'introduction de Java, je l'ai fortement recommandé car maintenant que nous entrons dans un territoire de plus en plus avancé, je vais essentiellement supposer de plus en plus que vous sachiez simplement ce qu'est l'héritage, moins sur un concept de base et une méthode primordiale. Vous n'êtes pas assis là et vous êtes comme, je ne sais pas ce que cela signifie, mais vous en avez au moins une idée générale. Mais nous pouvons remplacer les méthodes et créer nos propres fonctionnalités pour elles. Comme vous pouvez le constater, il existe de nombreuses méthodes que nous pourrions remplacer en théorie. Et c'est aussi l'une des choses sympas. Donc, ce que je peux faire, c'est que je peux commencer à taper override. Et vous obtiendrez également toutes les suggestions que nous pouvons remplacer. Maintenant, il y en a beaucoup. Ainsi, les États-Unis, par exemple, sont la méthode du clic droit sans cliquer avec le bouton droit sur le bloc. Il y a quelque chose comme l'infobulle d'ajout, qui en tant qu'infobulle que nous verrons également dans une prochaine conférence, la coche d'inventaire, qui est exécutée à chaque tick, Cet article est dans votre inventaire. tick d'utilisation. En fait, je ne suis pas sûr à 100 pour cent, mais je pense que cela est exécuté chaque fois que vous avez cela dans votre main principale et que vous cliquez avec le bouton droit de la souris sur quelque chose comme ça. Bien que aussi, si nous devions simplement importer ceci et je clique sur le bouton central de la souris sur le Super ici. Parfois, ils ont des indications au-dessus d'eux, donc quelques commentaires. Ce n'est pas toujours le cas, mais, eh bien, mais ce que nous allons utiliser, c'est que nous allons utiliser les États-Unis sur une méthode de bloc. Comme vous pouvez le voir, nous allons simplement le taper et double-cliquer, puis cela générera cela. L'ajout de remplacement ici est une annotation et ce n'est pas strictement nécessaire. Cependant, cela vous donne sur une glandes normales à travers cette classe l'idée que, oh, d'accord, donc c'est une méthode remplacée. C'est pourquoi c'est ici. C'est donc très important. Et maintenant vient le code personnalisé que nous allons écrire en gros. Et cela a encore une fois beaucoup à voir avec la connaissance de Java. Et nous allons commencer par vérifier si nous sommes ou non sur le client ou le serveur. Parce que dans ce cas, ce que nous voulons réellement faire, c'est que nous voulions faire quelque chose ici uniquement sur le client. Ce n'est pas toujours le cas. Habituellement, nous voulons commencer à se produire sur le serveur, mais c'est parfois le problème. Nous allons entrer un peu plus en détail, mais pas trop. Pour l'instant, ce que nous avons, c'est que nous avons ce contexte ici, il y a beaucoup de choses. Ainsi, par exemple, le monde, qui est exactement ce dont nous avons besoin, la saisie semi-automatique avec onglet. Et puis on va dire que c'est un client. Et je reprends habituellement la méthode. Cela n'a pas vraiment d' importance si vous prenez ou non la méthode ou le champ est tout à fait correct. Et maintenant, ce que nous savons, c'est que si nous sommes à l'intérieur de cette déclaration if, nous sommes certainement sur le client, donc c'est plutôt bien. Maintenant, ce que nous voulons, c'est que nous voulons la position du bloc sur lequel on a cliqué et que nous l' obtenons en tant que bloc Pause. Et c'est juste l'élévateur de position. Et cela est égal au point contextuel obtenir un chemin bloqué comme vous pouvez le voir. Et puis nous voulons le joueur, cette couche d'entité de joueur, qui est égal au point de contexte get player ici. Et ensuite, nous pouvons aussi avoir juste un booléen, qui sera le bloc trouvé. Celui-ci vérifie simplement si nous avons trouvé le bloc ou non. Nous allons le faire dans un instant. Mais l'idée est, une fois de plus, lorsque je clique avec le bouton droit sur un bloc, je voulais vérifier chaque bloc situé en dessous de ce bloc, descendant jusqu'au socle rocheux. Et en gros, en vérifiant, est-ce que ça a trouvé un objet précieux ? Ces objets précieux que nous allons bien sûr définir dans un instant. Mais pour le moment, faisons simplement une boucle for. Donc, pour int I est égal à 0, je suis plus petit ou égal à la position cliquée. C'est vrai, pourquoi vraiment y avoir ? Et puis j'ai plus, plus. Et ce que nous voulons faire, c'est que nous voulons faire quelque chose de très intéressant. Nous voulons obtenir le bloc ci-dessous. Donc, le bloc, le bloc, le bloc en dessous. Et ce sera le monde contextuel à points points-points. Mais pour obtenir l'état de bloc en position, cliquez dessus vers le bas, puis passez dans l'œil. Et ensuite, nous allons chercher le bloc. Donc, et bien sûr, l'importation de cette classe. Maintenant, c'est peut-être assez fou. Eh bien, réfléchissons à ça. Tout d'abord, nous sommes en train d'obtenir le monde qui devrait être trop fou. Ensuite, nous obtenons un état de blocage particulier. Maintenant, nous n'avons pas encore parlé de blocs et d'états de blocs. Cependant, l' essentiel est que les états de blocs sont la représentation de blocs à l'intérieur du monde. Bien qu'un bloc soit un peu comme une idée parfaite d'un bloc, l'état du bloc est celui qui existe réellement à l'intérieur du monde qui possède des coordonnées et possède des propriétés différentes, par exemple. Cela permet d'obtenir l'état du bloc à cette position particulière. Et puis, bien sûr, lorsque nous avons la position sur laquelle nous avons cliqué, nous descendons juste devant moi, ce qui, pour la première fois, n'est rien. Et alors que nous augmentons i, alors que la boucle for continue, nous descendons de plus en plus. C'est donc essentiellement toujours le bloc ci-dessous. Et puis, ce que nous pouvons faire, c'est que nous pouvons vérifier si c'est un livre précieux ? Et pour cela, nous allons en fait créer une nouvelle méthode pour cela. Parce que cela fait vraiment, parce que cela rend les choses un peu plus faciles. Nous allons donc dire que le booléen privé est un verrou précieux. Et puis on va juste passer dans le pâté de maisons ici. Et ensuite, nous pouvons renvoyer un booléen. Et ce que nous allons faire, c'est que nous allons juste dire que bloc est égal à des blocs dot col, ou par exemple, du charbon ou, ou LOC est égal à des serrures point cuivre, ou ajoutons simplement quelques autres. Donc, le bloc est égal à un diamant Langston ou un dernier mais non le moindre, ajoutons également le minerai de fer. Donc, bloque le fer ou l'ego. Et maintenant cette méthode ici, si c'est froid et qu'un bloc est transmis, si c'est l'un de ces quatre blocs, alors elle retournera vrai. Et ce que nous allons faire, c'est que nous allons dire si c'est un bloc précieux ici, puis passer dans le bloc en dessous, non ? Alors ce que nous voulons faire, c'est dire que ce que nous voulons faire, c'est que nous voulons afficher les coordonnées réelles de ce bloc. Nous voulons également transformer le bloc trouvé en vrai. Et en fait, ce que nous voulons faire, c'est que nous voulons sortir de cette boucle for-car nous avons trouvé le premier bloc de valeur et c'est essentiellement fait. C'est donc l'idée générale. La première chose que nous voulons faire ici, comme je l'ai dit, c'est la sortie des coordonnées. Pour cela, nous allons également créer une nouvelle méthode. L'idée est donc que tout d'abord écrivons cela, puis prenons la chose écrite et en fabriquons une méthode. On peut donc dire joueur SendMessage. Il s'agit en fait d'une façon très intéressante de le faire. Ensuite, nous allons dire Nouveau texte littéral. Cependant, un texte littéral ici. Il s'agit essentiellement d'une chaîne. Nous pouvons trouver où nous pouvons mettre des trucs. On peut dire quelque chose comme trouvé. Et puis nous pouvons dire bloc, bloc en dessous cela comme élément qui obtient le nom, qui obtient une chaîne. C'est donc un peu fou, mais ça obtient le nom réel du bloc. Et ensuite, nous pouvons dire à la position particulière, puis à la position particulière. Car la position particulière va être quelque chose de lac. Ouvrez les parenthèses, puis passez à la position cliquée point GetX. Plus une virgule. Position cliquée. Pourquoi ? Puis plus une fois de plus une virgule, puis plus position cliquée point obtenir z ou z. Et puis fermez la parenthèse dans la chaîne ici. Et puis, après le composant de chaîne littérale, nous voulons un faux ici l'ActionBar. Maintenant, vous pouvez voir que c'est très peu maniable Rayleigh. C'est donc comme si, tout d'abord, ça n'a pas l'air bien. C'est très peu maniable. Ce que nous pouvons faire, c'est que nous pouvons simplement sélectionner toutes ces méthodes d' extraction du refacteur. Et c'est ce que nous allons faire. Et vous pouvez voir que maintenant, nous avons réellement extrait tout cela. Et il vient, en gros, de faire tout le travail pour nous. Maintenant, il suffit de définir un nom. Nous allons définir ce nom pour générer ordres précieux ici. Et puis à l'intérieur de la méthode réelle, ce que je veux faire, c'est que je veux peut-être changer les noms ici pour pouvoir cliquer sur Control and Shift fx, quelque chose comme par exemple, les chemins de blocs ici. Et puis le reste, je pense qu'il est défini. Donc, bien sûr, nous pourrions changer cela encore plus, n'est-ce pas ? Mais pour le moment, je pense que tout va bien se passer. Cela affichera simplement les coordonnées de tout ce que nous lui donnons. Ça a l'air plutôt bien. Maintenant, ce que nous allons obtenir ici, c'est nous allons avoir un certain temps une dispute parce que bon, joueur pourrait être nul. Vous pouvez donc voir que le lecteur d'arguments peut être nul pour affirmer. On peut aussi changer autour d'un tas de choses. Le moment est venu. Je ne m'inquièterais pas à ce sujet. Et il y a une autre chose que nous voulons faire, bien sûr, et c'est que si le bloc n' a pas été trouvé, alors nous voulons également produire quelque chose. Mais par exemple, quelque chose comme le joueur dot-dot-dot SendMessage. Et ensuite, nous allons faire celui-ci le composant de texte traduisible radar. Ensuite, définissons également le mot d'action faux. Donc, généralement, je recommande vivement d'utiliser les caractères lisibles des composants de textes ici chaque fois que possible. Vous pouvez donc utiliser un composant de texte traduisible ici également. Cependant, cela ne rend pas cela un peu plus difficile à faire correctement, mais vous pourriez le faire. Je recommande vivement de l'utiliser dans la mesure du possible, où nous définissons essentiellement une clé que nous pouvons ensuite mettre dans le E et nous souligner le fichier adjacent. Donc, pour nous, je vais le faire comme cet article, bien sûr MC. Je vais donc m'en tenir à ça. Et ensuite, nous allons prendre le nom de la tige de descente de l'objet, sans connaître les objets de valeur de soulignement. Laissons le nom que nous allons définir dans un instant à la fin nous souligne fichier adjacent, mais ce sera tout. Et puis, en dehors de cette déclaration, nous allons en fait dire des contextes qui sont empilés. Il s'agit donc de la pile d'articles réelle, l'article que nous avons dans notre inventaire, des dégâts par points. Nous voulons endommager cela d'un montant 1. Nous allons dire les contextes, le point get player. Et puis le dernier paramètre sera un consommateur. Je crois que cela va être un joueur consommera exactement les entités de joueurs. Nous allons donc juste appeler ce joueur. Et puis nous allons dire que le joueur dot sind, sind tool et l' état des briques d'outil avec le point du joueur devient la tête active. Mais cela peut aussi être assez fou pour vous, mais pas de soucis. Eh bien, tout ce qui fait, c'est simplement dire, hé, l'article réel avec lequel nous venons de cliquer avec le bouton droit de la souris, nous allons endommager le montant d'un. Cela va donc diminuer sa durabilité. Et puis on passe juste le joueur, c'est tout à fait très bien. Ensuite, la dernière chose ici est le type d'animation de saut d'outil qu'il doit envoyer lorsque l'endommagement de cette pile d'éléments va réellement entraîner la rupture de l'élément. Maintenant. Et c'est essentiellement la classe entière ici. Mais c'est plutôt fou. Et encore une fois, sans un arrière-plan Java va probablement être très complexe. Je vous recommande vivement d' avoir cela, bien sûr, tout cela disponible dans le référentiel GitHub ou chez un individu tout aussi bien pour y jeter un coup d'œil, essayer, vous savez, pour le mettre dans vos propres mathématiques et Essayez-le un peu. Il suffit de changer un tas de choses, voir ce qui pourrait arriver. Et n'oublions pas de l'ajouter à notre fichier E et à notre fichier de traduction ici. Je vais juste ajouter ça tout en bas. En fait, cela va dire ce qui suit. Cela va simplement dire qu'il n'y a pas d'objets de valeur. C'est donc tout ce que celui-ci dit ici. Et maintenant, ce qui est génial, c'est que si nous avions, par exemple, un autre fichier linguistique, nous pourrions le traduire dans une autre langue. C'est pourquoi le texte traduisible est généralement ce que vous souhaitez utiliser. Gardez cela à l'esprit. Maintenant, le simple fait d'avoir ajouté cette classe, bien sûr, ne suffit pas. Nous devons également l' enregistrer dans notre classe d'objets mods, et nous allons également le faire. Il suffit donc de copier le résultat du rock. Comme je l'ai dit, je suis généralement contente des vieux objets, car ils sont presque toujours les mêmes. Il s'agit de la tige d'abattage. Et là aussi, bien sûr, la canne de vidange. Et au lieu d'un nouvel article, c'est très important. Il s'agit d'un nouvel article de canne de dessilage. C'est donc la principale chose que nous devons faire ici. C'est tellement important que tu le fasses. Nous voulons également définir le maximum de dégâts ici. Donc, les dégâts maximum seront, disons 32. Nous pouvons donc l'utiliser 32 fois avant que la tige d'arrosage ne se brise, car bien sûr, nous l' endommageons ici même à l'intérieur de la méthode d'utilisation sur bloc. Donc cela devrait être tout à fait correct en ce moment aussi, ajoutons cela au fichier de soulignement de l'un utiliser JSON. Donc, la tige de soulignement et ensuite ici aussi, bien sûr, la tige de descente, de descente sans le trait de soulignement. Enfin, nous avons besoin du modèle d'article ainsi que de la texture de l'article. Il suffit donc de copier le rôle ou le calcium de cette tige de descente , puis de votre tige de descente. Mais encore une fois, c'est la façon normale que je prends pour l'utilisateur, généralement ajouter des éléments lorsque j' ai déjà des modèles existants ici est beaucoup plus facile que tout autre chose. L'écrire est absolument fou. Et s'il y a des fautes de frappe dans les vôtres, vous pouvez bien sûr toujours jeter un coup d'œil au dépôt GitHub ou aux juristes. Et nous allons aussi copier par-dessus la tige d'arrosage . C'est là que tu y vas. Bien sûr, également disponible. Veuillez noter toutefois que vous suivez la licence ici. Donc, dans l'ensemble, c'est tout à fait très bien. Et je dirais que nous sommes maintenant prêts. Jetez un coup d'œil à savoir si cela a fonctionné ou non a fonctionné ou fans de Minecraft peuvent voir que la canne a été ajoutée avec succès au jeu. Et ce que vous découvrirez aussi, c'est que je ne peux pas l'empiler. C'est tout à fait exact car nous avons bien sûr ajouté le maximum de dégâts. Et si vous ajoutez des dégâts maximums, l'empilement ne fonctionnera plus. Maintenant, passons ici et faisons simplement un clic droit et vous pouvez voir en haut ou y trouver une heure pour leur, euh, non, aucun objet de valeur trouvé ici. Et vous pouvez voir que la durabilité réelle diminue au fur et à mesure que je continue à cliquer ici. Voyons voir, on peut peut-être trouver un diamant avant qu'il ne se brise. Ne serait-ce pas assez fou ? Nous ne l'avons malheureusement pas fait. Mais c'est là que tu y vas. Maintenant, à rompre et maintenant nous avons les autres itinéraires, bien sûr également disponibles. Nous pouvons donc simplement passer par là et voir si nous pouvons trouver quelque chose ci-dessous. Mais c'est à peu près l'idée générale de la tige d' abattage, n'est-ce pas ? Mais ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. S'il reste des questions concernant l'article avancé, n' hésitez pas à poser la question. Sinon, je vous verrai lors de la prochaine conférence. Donc, oui. 49. (Bases de la création d'un bloc avancé: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons créer un bloc avancé. Ainsi, comme nous l'avons vu la dernière conférence avec l'élément avancé, nous allons maintenant faire un bloc avancé pour notre package de blocs , cliquez avec le bouton droit sur le nouveau package appelé Personnalisé. Et puis, à l'intérieur, nous allons créer une nouvelle classe Java appelée bloc SPD. Maintenant, cela va étendre la classe de blocs, en nous assurant que nous choisissons le bon bloc Minecraft, bloc , bloc et survole ce constructeur de creed correspondant super. Et comme avant de pouvoir le bouton central de la souris, cliquez sur la classe de blocs et jetez un coup d' œil à toutes les méthodes possibles que nous pouvons remplacer dans notre classe de blocs personnalisée. Et comme vous pouvez le constater, il y a beaucoup de choses que nous pourrions remplacer ici. Et je peux aussi mettre dans le mot « override ». On verra qu'il y a beaucoup de choses ici. Maintenant, une chose que je voulais mentionner c'est que les choses qui ont cette barre sont fondamentalement dépréciées, n'est-ce pas ? Donc, si je jette un coup d'œil à cela, vous pouvez voir que celle-ci est dépréciée ici. Habituellement. Ce que cela veut dire, c'est que vous pouvez simplement remplacer ces méthodes, mais vous ne devriez pas les appeler. C'est donc l'idée générale du bloc et de la classe d' éléments, ce qui est obsolète. Je ne veux pas dire qu'ils sont obsolètes et qu'ils ne sont pas disponibles dans les versions futures. Dans ce cas, il s' agit en fait de ne pas les attraper. Et cela inclut le super par exemple. Mais nous allons voir cela dans un instant. Que va faire le bloc SPD ? Eh bien, le bloc SPD va avoir deux fonctionnalités différentes. Premièrement, si vous marchez dessus, vous obtenez l'effet de vitesse ajouté à votre personnage. Et juste pour que vous l'ayez vu, la fonctionnalité de clic droit, lorsque vous cliquez avec le bouton droit sur le bloc, nous allons simplement envoyer un message dans le chat. C'est ce qui va être ça. Alors, faisons tout d'abord la méthode du tremplin qui est appelée, appliquée. Et vous pouvez voir que vous y allez. Et ce que nous allons faire ici est très simple. Nous allons tout d'abord vérifier si le monde est client et qu'il est très, très important. Nous allons ajouter un point d'exclamation devant lui pour dire que nous ne voulons pas être sur le client, nous voulons être sur le serveur. Comme lorsque vous ajoutez, par exemple, un effet d'état, vous ne pouvez le faire que sur le serveur. Ensuite, nous allons vérifier si l'entité qui y est intervenue est une instance d' entité vivante, car seules les entités vivantes peuvent avoir des effets de statut qui leur sont appliqués. Et ensuite, nous pouvons, sans problème, obtenir l'entité vivante ici et simplement y jeter l'entité. Donc, l'entité Dot cast. Et puis généralement, il se remplit d'entité vivante est déjà là. Et nous pouvons prendre l'entité vivante et nous pouvons appeler la méthode Add status effect. Et ce que nous pouvons faire, c'est créer une nouvelle instance d'effet de statut, comme vous pouvez le constater. Et cela prend en compte l'effet de statut, c' est-à-dire des effets de cette vitesse et d'une durée jusqu'à 100. La durée ici est, bien sûr, en tiques, de dix secondes. Cela changerait bien sûr cela également. C'est évidemment à vous de décider. Mais c'est en fait toute la méthode dont nous avons besoin pour l'effet pas sur la vitesse ici. C'est littéralement ça. C'est tout ce que nous devons faire. Mais maintenant, jetons également un coup d'œil à la fonctionnalité du clic droit. Et c'est la méthode d'utilisation du propriétaire. Et vous pouvez voir que c'est l'un de ceux qui ont le barré qui est déprécié. Nous allons donc nous assurer de ne pas appeler le super-héros. Et nous allons dire les résultats de l'action. Ce succès, tout va bien se passer. Juste ici. Vous y allez. Et puis ici, ce que nous allons faire, c'est que nous allons dire si le monde, c'est le client, l'ego. Et puis à l'intérieur d'ici, nous allons dire la main égale et la main principale. Et ensuite, nous ferons une autre chose ici. Alors, que se passe-t-il ? Pourquoi est-ce que je fais ça ? Eh bien, nous allons copier un petit commentaire que je me suis déjà préparé. L'idée est que la méthode inutilisée est appelée parfois. Lorsque vous cliquez avec le bouton droit sur le bloc, il est appelé deux fois sur le serveur, un pour chaque main, puis deux fois sur le client pour chaque extrémité. C'est ce qui est très intéressant. Alors ce que nous allons faire, c'est qu'on va juste sortir, c'est pourquoi pas l'ego, ça va aller. Mais ce n'est qu'une fois de plus des joueurs et message avec un petit texte. C'est quelque chose que nous avons déjà vu, bien sûr. Et c'est à peu près juste une idée. Je voulais juste avoir cela ici aussi, juste au cas où vous voudriez avoir une fonctionnalité de clic rouge de votre bloc, vous utiliserez la méthode inutilisée. Et c'est très important de garder à l'esprit ici, par exemple, si vous deviez modifier quelque chose dans le code, savoir que cela arrive deux fois pour chaque main est en fait très important. Gardez cela à l'esprit, s'il vous plaît. Et c'est à peu près avec la classe de blocs SPD terminée. Nous n'avons pas besoin de faire autre chose ici. La prochaine chose que nous devons faire est d'entrer dans notre classe de blocs de modèles, puis, bien sûr, de créer le bloc réel et de l'enregistrer. Donc, on va juste copier le bloc brut ou le bloc de calcium. Et nous allons créer ce bloc de soulignement rapide et facile ici, puis bien sûr ici aussi, un bloc de soulignement rapide. Et juste ici, c' est maintenant le bloc SPD, le nouveau rock rapide ici. Encore une fois, il est très important de s'assurer que c'est correct et pas seulement un bloc normal. Très, très important. Sinon, il suffit d'ajouter les fichiers JSON. Et ils sont bien sûr disponibles dans le référentiel GitHub ou en individuel. Je vais juste les copier parce qu'ils sont tout simplement normaux tous les jours. Les dossiers Jason, n'est-ce pas ? Il n'y a rien d'intéressant ici. Le modèle de bloc ressemble exactement au même ordre que les règles Brockman que nous avons vu que le modèle d'article est à peu près le même que n'importe quel autre modèle d' article de bloc ici. Ensuite, nous copierons également sur la texture, qui est bien sûr également disponible pour vous, veuillez ne pas utiliser le fichier de crédits pour la licence spécifique de ces textures, mais sinon c'est tout. Ajoutons également la traduction. Bien sûr, n'oublions pas cela. allons juste copier celle-ci et nous allons juste dire que c'est le bloc. Et puis voici la même chose. Speedy Block, l'ego. Et maintenant, tout a été mis en place. Voyons donc si cela fonctionne. Ou les fonds remboursés et la microfinance peuvent voir que le bloc SPD a été ajouté au jeu et je peux le définir pour que la texture soit tout simplement normale. Comme je l'ai dit, non ? Même si ce genre de chose semble un peu latéral à l'endroit où il modifierait la texture. Ce n'est pas le cas en fait. C' est quelque chose que nous allons voir dans une prochaine conférence. Et nous allons simplement, par souci d'argumentation, de le poser pour que la flèche regarde dans la direction dans laquelle nous allons aller juste pour qu'elle soit un peu plus agréable. Et dès que je passe au-dessus du bloc, vous pouvez voir que l'effet de vitesse m'est appliqué, et c'est maintenant dix secondes. Maintenant, si je reste debout là-dessus, veillez à ce qu'il continue de m'appliquer les faits et de les réinitialiser à 10 secondes. Et puis je peux simplement courir avec un effet de vitesse. Et c'est à peu près tout ça, non ? En fait, nous devons revenir ici est une passe de résultat réelle. Et puis l'appel réel deux fois pour le serveur et le client fonctionnera réellement. Ce n'est donc qu'un peu une différence. Voyons donc simplement si cela fonctionne aussi. Très bien, donc maintenant si nous cliquons avec le bouton droit, vous pouvez voir que je reçois un message dans le chat pour la main principale et pour l'offense. Et nous pouvons également placer des blocs à côté. C'est également une chose très intéressante. Je vous recommande vivement de jouer avec les résultats réels que vous retournez. Parce que, selon ce que vous retournez, ils auront un autre type d' interaction lorsque vous cliquez avec le bouton droit de la souris. Vous pouvez donc voir quand je place un bloc vers le bas, en cliquant sur ce bloc, vous pouvez voir qu' il n'est en fait appelé que pour la main principale. Alors que lorsque je clique avec rien dans ma main principale, il est appelé pour les deux. Jetez un coup d'œil à ce que vous pouvez changer en changeant ce que vous retournez dans cette méthode, n'est-ce pas ? Mais c'est déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprend que le nouveau, s'il le faisait, j' apprécierais beaucoup une critique de votre part. Sinon, je vous verrai lors de la prochaine conférence. Donc, oui. 50. (Bases de la fabrication d'un objet de nourriture personnalisé: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter un produit alimentaire personnalisé à Minecraft. Il s'agit maintenant d'un processus très simple et nous n'aurons même pas besoin d'une classe d'articles personnalisée pour cela. Nous allons créer une nouvelle classe personnalisée, et c'est dans notre package d'éléments, et c'est dans notre package d'éléments cliquez avec le bouton droit de la souris sur la nouvelle classe Java. Et c'est la classe des composants alimentaires MOD. Et cela contiendra tous nos composants alimentaires parce que nous devons l' ajouter dans notre article. Pour le moment, allons simplement ici et ajoutons cela, pour dire un composant alimentaire statique public appelé navet. Parce que ce que nous allons ajouter un navet ici. Et cela équivaut à un nouveau constructeur de composants. Vous pouvez voir juste là, je vais appuyer sur la touche Tab pour compléter cela automatiquement. Et ensuite, vous pouvez voir qu'il s'agit d'un modèle de constructeur une fois de plus, afin qu'il puisse ajouter plusieurs choses différentes. La première chose que je veux faire, c' est que je veux ajouter la faim, mais cela va restaurer un morceau de viande dans notre bar à faim. Et puis le modificateur de saturation est essentiellement la saturation, la saturation que vous avez en arrière-plan, pour ainsi dire. Ensuite, nous devons en finir avec un projet de loi. Et puis la composante alimentaire ici est construite. Maintenant, ce que vous pouvez également faire, c'est que vous pouvez également ajouter un effet de statut ici, comme vous pouvez le voir. Je pourrais donc ajouter un effet de statut que c'est exactement la même idée qu' auparavant avec le bloc SPD. Il suffit donc de passer une instance d'effet de statut. Par exemple, en ce qui concerne les effets, statut n'affecte pas en tant que génération ou quelque chose comme 200 prises. Et puis ici, nous devons en fait passer beaucoup de choses, ce qui est la chance que vous avez d'obtenir cet effet ici. Ce n'est donc qu'un exemple ici. Nous n'allons pas le garder comme ça, mais vous l'avez vu. En fait, c'est très, très simple. Ou des exemples de vanille, ce que vous pouvez faire c'est que vous pouvez appuyer deux fois sur Maj en succession rapide, puis vous ouvrez cette fenêtre de recherche. Vous pouvez rechercher la classe des composants alimentaires, vérifier cela, inclure des articles hors projet, puis ici l'article. Cliquez ici et vous pouvez voir tous les composants alimentaires que Minecraft possède déjà. Et vous pouvez également voir toutes les différentes choses qui se trouvent ici. Il y a donc comme tout ce qui se trouve déjà devant vous et vous pourriez juste jeter un coup d'œil à la façon dont tout cela fonctionne, maintenant en avez deux, nous avons ajouté le composant alimentaire. Nous devons maintenant ajouter l'article alimentaire dans notre catégorie d'articles modèles. Ce que je vais faire, c'est que je vais copier sur la rangée ou un calcium. Et ce sera le navet. Et juste ici aussi, on se présente. Et c'est un nouvel article normal, une année tout à fait normale. Et puis, après le groupe, nous allons ajouter de la nourriture. Et ce sera le mode des composants alimentaires que le navet. Et c'est à peu près tout ce dont nous avons besoin pour faire le produit alimentaire. Maintenant, nous devrions pouvoir manger cela gros quand nous avons faim dans le gibier. Maintenant, bien sûr, nous devons encore ajouter à la fois la traduction ici dans l'année, nous soulignons le fichier JSON, ainsi que bien sûr l'ajout de la texture et du fichier JSON du modèle d' élément. Le fichier JSON du modèle d'élément n' est évidemment qu' un modèle d'élément normal Jason qui pointe vers une texture ici. Et la texture est juste ici, donc pas de soucis. Et maintenant, tout a été ajouté. Voyons donc si cela fonctionne. Ou bien les fermes qui, de retour dans la microfinance , peuvent voir que le terme a été ajouté au jeu, alors commençons à le manger et voilà. Il remplit exactement une barre de faim. Donc, la faim est fondamentalement un symbole de rencontre juste là. C'est donc à peu près tout ça. Et oui, c'est vraiment facile d' ajouter un aliment personnalisé à Minecraft, non ? Et il y en a déjà pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprend les nouveaux, tous les coins, bien sûr disponibles dans le référentiel GitHub ou un individu tout aussi bien. Mais je vous verrai lors de la prochaine conférence. Oui. 51. (Bases de la réalisation d'un élément de combustible personnalisé: Très bien, continuons avec le cours de tissu pour 118. Et dans cette conférence, nous allons ajouter un produit de carburant habituel à Minecraft. Maintenant, il s'agit également d'un processus assez simple et simple. Mais nous allons entrer dans notre classe plus d'objets et nous allons simplement copier le navet ici. Et puis ce sera le trait de soulignement du charbon. Et là aussi, bien sûr, le trait de soulignement du charbon. Ce n'est donc qu'un morceau de charbon. Et nous allons enlever la nourriture bien sûr, car dans ce cas, le vers causal ne doit pas être comestible. Et ce que l'article a de nouveau été ajouté. Mais maintenant, bien sûr, nous devons ajouter la fonctionnalité d'un combustible. Et pour cela, nous allons aller dans notre package de cours MC, cliquer avec le bouton droit sur un nouveau package appelé util. Maintenant, ce n'est pas strictement nécessaire pour créer cette classe. Vous pouvez aussi appeler la méthode immédiatement dans notre masse de mod de cours MC, mais j'aime que tout soit séparé. Il s'agit donc de la classe registries. Et à l'intérieur, nous allons créer deux méthodes statiques. Le premier est un vide statique public et public appelé truffs mode registre. Et cela va appeler l'autre méthode qui va être un vide statique privé ou enregistrer des carburants. Et chaque fois que nous ajoutons un carburant à notre modèle, nous pouvons essentiellement l' appeler ici. Et nous allons enregistrer les carburants en mode registre. Et ensuite, nous allons écrire dans quelque chose comme la ligne d'impression système, mais nous nous inscrivons pendant que vous le voulez, ou le cours MSE plus MC, RID. Et puis nous allons dire moins de registre, exactement celui-ci, qui est le registre est égal à vous enregistrera cette instance. Et puis on peut simplement dire ajouter un point de registre. Et puis un plus d'éléments pointent un ruban entier, puis une valeur de 400 caisses. Maintenant, le calcul se déroule comme suit, à droite, pour 400 c'est encore 400 et prend bien sûr, pour un 100 divisé par 20, soit 20 secondes, c'est exactement le quart d'un charbon normal. C'est donc essentiellement cela. Et puis, bien sûr, nous devons également appeler cela dans la méthode initialisée. Donc plus de registres qui enregistrent des objets en mode. Et si quelque chose d'autre justifie un enregistrement , nous pouvons également ajouter cela dans les registres modernes. C'est plutôt cool. Et c'est essentiellement tout ce que nous devons faire pour que le ruban de charbon devienne un nouvel article. Bien sûr, nous devons encore ajouter la traduction ici. Donc, copions ça et appelons ça, appelons un trait de soulignement. Et puis, bien sûr, ici, cool sliver. Et ensuite, pour l'objet, je vais copier le navet ici. C'est le charbon qui souligne le foie. Ensuite, ici, le charbon et bien sûr le foie aussi. Juste un fichier de modèle d'article normal. Et nous allons simplement copier la texture ici aussi. Et maintenant, tout a été ajouté. Voyons donc si cela fonctionne ou si c' est le cas et nous nous retrouvons dans micro-événements, nous pouvons voir que le ruban de charbon a été ajouté avec succès au jeu. Et voyons simplement. Vous y allez. Nous pouvons même passer en cliquant ici. Et comme spécifié, il faudra 20 secondes pour brûler puis consommer une nouvelle cause du foie d'ici. C'est plutôt bien. Et c' en fait à quel point il est facile d'ajouter un produit de carburant personnalisé à Minecraft où que ce soit déjà pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprend le nouveau, s'il l'a fait ou apprécie beaucoup une critique de votre part. Sinon, je vous verrai lors de la prochaine conférence. Donc, oui. 52. (Bases) Ajouter des conseils personnalisés à outils personnalisés: Ou bien un retour au cours de tissus pour 118 ans. Et dans cette conférence, nous allons ajouter une infobulle personnalisée qui est un élément de canne de descente. Cela peut donc être fait pour n'importe quel objet. Ce que nous allons faire, c'est que nous allons simplement remplacer une autre méthode ici. Il s'agira donc de la méthode append Tooltip. Et cela va se faire très facilement. La seule chose que nous devons vraiment faire est que nous voulons faire en sorte que lorsque vous survolez l'élément, vous obtiendrez quelque chose comme l'effet de la touche Maj pour voir plus d'informations. Ensuite, lorsque vous appuyez sur Maj, vous obtenez plus d' informations sur cet élément. Ce que nous allons faire, c'est que nous allons faire une déclaration si et nous allons appeler un écran, photo a décalé vers le bas et ensuite faire une autre déclaration pour cela aussi. Et ensuite, comment ajouter un nouveau, quelque chose de nouveau à l'infobulle, nous allons simplement faire un outil pour ajouter, puis créer un nouveau composant de texte traduisible ou un nouveau texte ici. Et puis nous passerons dans un e. Dans ce cas, il s'agira de l'article MC cours de tige de soulignement tige de soulignement, cette infobulle, ce changement de vitesse. Maintenant, bien sûr, vous pouvez rendre vos clés aussi longues ou courtes que vous le souhaitez. Je vais m'en tenir à ça. En fait, je pense que c'est tout à fait très bien. Nous allons également mettre l' infobulle ici. Et ce que nous allons faire, c'est que nous allons changer cela. Vous n'incluriez pas le quart de travail ici. Copions cela encore une fois et passons à notre oreille et soulignons le fichier adjacent. Et mettons ça tout en bas ici. J'ai l'impression que c'est un bon endroit pour cela. Et puis, lorsque nous appuyons sur Maj vers le bas, ce que nous pouvons faire, c'est que nous pouvons dire clic droit pour trouver des objets de valeur. Les objets de valeur, ils vont. Et puis l'autre, il va falloir simplement supprimer le quart de travail ici. Et puis, ce sera juste le repos. Et maintenant, nous allons essayer quelque chose de très intéressant. Ainsi, nous allons être un symbole de paragraphe E, un vol, un symbole de paragraphe R ou plus d'informations. Et il y a deux façons de procéder. C'est donc quelque chose que je veux expliquer. Le symbole de paragraphe commence à créer un, le, commence à faire du texte une couleur différente. Maintenant, généralement le symbole de paragraphe e devrait fonctionner, mais parfois il y a des bogues associés. Et je voulais juste vous en montrer les deux versions. Donc, parfois, cela fonctionne. Donc, le E commence essentiellement à jaunir et ensuite les paragraphes sont, ce jaunir et ensuite les paragraphes sont, fait que tout est réinitialisé à nouveau. Mais c'est en fait tout ce dont nous avons besoin pour l'infobulle. Voyons donc si ça marche ou s' il a un deck et Minecraft. Et si je survole ça, vous pouvez voir appuyer sur Maj pour plus d'informations. Et quand j'appuie sur Maj ou sur tout un Maj vers le bas, cliquez avec le bouton droit pour trouver des objets de valeur. Donc, tout ce qui fonctionne parfaitement pour cela est exactement ce que nous voulons. Et même à la coloration ici fonctionne parfaitement bien. C'est génial, n'est-ce pas ? Je vais également lier un article Wiki sur les codes de mise en forme de Minecraft. Je recommande vivement de jeter un coup d'œil là-dessus, mais ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai au cours de la prochaine conférence. Oui. 53. (Basics) Tout sur les étiquettes: Vers le cours de tissu pour 118. Et dans cette conférence, nous allons jeter un coup d'œil aux balises. Maintenant, ce que nos étiquettes vont faire, je ne parle pas d'étiquettes que vous avez placées sur les animaux comme l'étiquette nominative. Je parle d' étiquettes comme nous l'avons déjà vu pour les balles mineures. Et nous allons essentiellement quels outils vous avez besoin ou vos blocs. Et ce que nous allons faire, c'est que nous allons ajouter une nouvelle classe qui nous permet également d'utiliser des balises. Cela rendra notre MOD plus compatible avec d'autres mathématiques. Ainsi, dans notre package util, nous allons cliquer avec le bouton droit de la souris sur la nouvelle classe Java, et il s'agit de l'écriture de classe de balises mode. Nous allons devoir suivre des cours statiques ici. Le premier est une classe statique publique, quatre blocs. Ensuite, la seconde est une classe statique publique appelée items. Et dans la classe des blocs, bien sûr, les balises de bloc vont puis la classe items, l'objet Texaco. Mais pour cela, nous allons avoir besoin d' une méthode statique privée ici. Donc, l' identifiant de point de balise statique privée du bloc de type, dans ce cas, s'assurer que nous choisissons bloc de micro-ondes net ici créerait une étiquette. Et cela va avoir un paramètre de nom de chaîne ici. Et cela va renvoyer la fabrique de balises qui a cassé cette création. Puis un nouvel identifiant avec le mod de cours EMC, ID du mod et le nom du paramètre. Ensuite, nous pouvons simplement copier celui-ci sur n. Il s' agit maintenant d'une balise Harmon créée comme celle-ci. Et au lieu de transmettre notre ancien identifiant de modèle, nous allons passer juste un c minuscule, car il s'agit d'un espace de noms sous lequel les balises communes vont être définies. Et ce que nous pouvons faire, c'est que nous pouvons simplement intégrer cette copie de ces deux méthodes dans la classe items. Et il suffit de remplacer cela par l'article de l'article net ici. Et puis, bien sûr, un ensemble de blocs, c'est un article. Et puis, au lieu de bloquer, il s' agit également d'un élément. Cet article également. Et puis le reste va très bien. Comme vous pouvez le constater, c'est tout ce que nous devons faire ici. Et maintenant, nous pouvons définir ces taxes. Il y a donc deux choses que vous pouvez faire. Vous pouvez, numéro un, définir vos balises dans cette classe, et c'est très bien. Et vous pouvez également les définir dans votre testament, dans vos données pour. Et ce qui est très important, c'est que même si nous allons créer une étiquette personnalisée spécifique à nous. Ensuite, nous allons également avoir quatre balises communes que nous allons utiliser. Nous avons toujours besoin des étiquettes ici. Donc, les fichiers JSON de données, nous en avons toujours besoin, mais nous n'avons pas nécessairement besoin d'avoir cette classe ici. C'est uniquement pour que nous puissions accéder à nos balises personnalisées à l'intérieur du code. Le premier exemple sera donc un identificateur de point final public statique du type de bloc, que nous allons appeler le trait de soulignement de la tige de soulignement descente détectable. blocs de soulignement. Cela remplacera essentiellement la méthode booléenne à l'intérieur de la tige de descente, où nous avons actuellement codé en dur ce qui est un objet précieux ici. Et nous allons rendre cela extensible avec la balise, ce qui permet, par exemple, d'autres modes ou à d'autres fabricants de packs d' ajouter différentes choses à cette balise. Et c'est la beauté de tout ça. Nous allons donc dire créer une balise avec exactement le même nom en minuscules. Donc, la douille, le soulignement de la tige, la bulle technologique, les blocs de soulignement protecteurs. Et mettons en forme cela un peu différemment. y a donc un jour. Et ce que nous allons faire, c'est que nous allons également ajouter deux autres balises de blocs ici. L'un d'entre eux sera les blocs de soulignement des résultats OriC. Et l'autre sera le soulignement Oracle ou. Et ce que vous auriez deviné, c'est que ce sont des étiquettes Aman. Eh bien, faisons-le simplement comme ça. Et ce sera les blocs de soulignement Oracle . Et puis nous allons juste copier ça pour le pire. Maintenant, la raison pour laquelle nous allons les avoir est si un autre MOD, publicités ou un calcium aussi, ils pourraient partager le, qu'ils peuvent partager cela. Et nous allons voir cela dans un instant avec les articles, car les articles sont vraiment fréquents, utiles et cool. Ce que nous allons avoir, c'est un identifiant final public statique. Encore une fois, tapez élément ici dans ce cas, et il s'agit de lingots de soulignement de recalc égaux à une nouvelle balise ou résultat commun. Soulignez celui de l'Angleterre. Il suffit de dupliquer cela avec Control D, et voici les pépites. Et la même chose ici aussi. Rappelez-vous les pépites. Et nous allons utiliser si nous allons utiliser ces lingots ici aussi. Encore une fois. Avoir cela dans cette classe rend simplement toutes ces balises accessibles à l'intérieur du code n' est pas strictement nécessaire. où c' est nécessaire, c'est juste dans un instant parce que maintenant dans l'article de la tige de descente, ce que nous allons faire est en fait au lieu d'avoir ce code dur ici, nous allons renvoyer ce qui suit. Nous allons dire des balises de mod qui bloquent. Et puis importez ceci avec anciens blocs détectables de tige de descente d'entrée qui contiennent un bloc, contient un bloc. Vous y allez. Et cela va retourner vrai si le bloc qui est passé ici se trouve à l'intérieur de cette balise. Maintenant, notre propre étiquette. Nous devons ajouter dans le cours MC, cliquer avec le bouton droit sur un nouveau répertoire appelé balises, puis cliquer avec le bouton droit sur un nouveau répertoire appelé blocs. Puis à l'intérieur de là. Ou je vais le faire, c'est que je vais aller ici et copier le nom ici. Contrôlez C ou cliquez avec le bouton droit sur un nouveau fichier, Control V pour le coller en point JSON. Et puis nous avons ceci, je vais en fait copier le contenu parce qu'il y en a un peu là-dedans. Cela est évidemment disponible dans le référentiel GitHub ou dans un autre. C'est donc essentiellement tout ce que j'ai mis là-dedans, y compris mon propre Oracle com ou bien sûr. Et ensuite, ce que nous pouvons faire après ou ensuite c'est que nous pouvons également ajouter les balises Harmon. Et nous allons le faire en allant dans les données, cliquer avec le bouton droit sur un nouveau répertoire appelé C, voir c minuscule, rien d'autre. Et je vais en fait copier l'intégralité du dossier ici. Donc, encore une fois, il ne s'agit que de balises, de blocs, d'éléments. Donc, tout ce qui est normal et les noms ici doivent aussi correspondre aux noms ici. Et ce que nous allons faire, c'est que nous allons réellement utiliser une de ces balises. Plus précisément, l'étiquette des lingots Oracle à l'intérieur. Et ça va être fou. Notre recette, c'est exactement quelque chose qui est vraiment cool. Parce que ce qui peut arriver, c'est que si nous avons, par exemple, quelque chose comme Oracle peut bloquer du lingot au lieu d' avoir un article ici, nous pouvons en faire une balise. Et puis ce sera bien sûr c car il s'agit d'un espace de noms différent et au lieu de l'Angleterre, c'est des lingots. Nous pouvons donc spécifier une étiquette , puis normalement la balise où elle se trouve, en mer et c'est un objet. C'est donc très important d'ailleurs, que cela ne prenne que des étiquettes d' élément ici. Il cherche donc simplement une étiquette d' élément ou des lingots de recalc. Et alors tout ce qui se trouve à l'intérieur d'ici serait viable comme recette possible de rafting. génial, c' est que s'il y a trois masses différentes qui se mélangent, alors en théorie, notre bloc pourrait être fabriqué avec l'un ou l'autre d'entre eux. C'est donc en quelque sorte l'idée générale. Et permet également à plus de stimulateurs cardiaques rendre notre modèle un peu plus compatible avec d'autres mathématiques. C'est donc très important. Et bien sûr, cette année, non ? Cela nous permet simplement de rendre cette façon plus, beaucoup plus facile, extensible, et nous permet également à plus d' artisans de la paix de rendre cette mesure aussi extensible. Parce que, bien sûr, dans notre cas, nous n'avons pas ajouté quelque chose comme 10 ou, ou de titane ou quelque chose comme ça. Si un autre modèle ajoutait qu' un fabricant de pack plus ou même ce mod pourrait simplement dire, hé, si cela, si le cours MC modèle, il suffit d'ajouter cela aussi. C'est vraiment cool. Mais c'est en fait tout ce que nous devons faire pour nos chars. Donc numéro un, voyons si la tige de descente avec la nouvelle méthode de bloc est précieuse fonctionne. Et voyons également si nous pouvons encore fabriquer des blocs de calcium à partir de lingots ou d' inférences dans Minecraft. Voyons donc, cliquez avec le bouton droit de la souris. Et là, nous l'avons. Il y a du minerai de cuivre. Et continuons simplement. Peut-être allons-nous aussi trouver de l'ardoise profonde, cuivre ou du fer ou je suis sûr que nous en trouverons à un moment donné, bien sûr, la durabilité ne diminue pas. Oh, le lapis-lazuli, pour que nous n'ayons vraiment pas eu ça avant. Maintenant, voyons simplement si nous pouvions trouver quelque chose d'autre ici quelque part, aucun objet de valeur trouvé. La durabilité ne diminue pas car nous sommes actuellement en mode créatif. Cela tient également compte d'autres domaines. Sommeil profond, taux de lapis, de lazuli ou est-ce là ? C'est là. On y va donc. C'est vraiment génial. Et voyons simplement. Alors rappelez-vous d'être venus bien et ils partent, nous pouvons encore fabriquer le bloc RCA, comme si rien ne s'était jamais passé ici. C'est donc assez fréquent, cool, réputé ou EBIT pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprendra le nouveau. Tout le code est disponible dans le référentiel GitHub ou en individuel. Et je vous verrai lors de la prochaine conférence. Donc, oui. 54. (Bases) Ajouter des étages et des plaques: Ou je souhaite la bienvenue au cheval en tissu pour un 118. Et dans cette conférence, nous allons commencer notre série de conférences sur ce que j'ai généralement appelé un non-bloc. blocs. Bien sûr, cela n'a pas beaucoup de sens. Cependant, ce que nous voulons ajouter essentiellement, ce sont des escaliers, des dalles, des boutons, plaques de pression, des clôtures, des clôtures, portails, des murs, des portes et des trappes. Et nous allons le faire lors des quatre prochaines conférences. Ils présentent toutes des similitudes, mais il y a des mesures cruciales et importantes que vous devez prendre pour certaines d'entre elles. Commençons donc tout simplement. Et le premier avis que je veux donner au début est que je vais certainement copier tous les fichiers JSON ici. Vous devrez donc absolument ouvrir le référentiel GitHub ou les juristes et les copier également. Je recommande vivement de les écrire. Vous verrez que dans un instant n' est pas vraiment possible. C'est possible, mais vous pourriez passer une demi-heure à faire quelque chose de mieux. Nous allons donc voir cela, pas de soucis du tout. Et ce que nous allons faire, c'est qu' on va juste copier deux fois sur le bloc SPD. Et le premier sera l'escalier de soulignement de calcium OriC. Et ce sera aussi l' escalier de soulignement des 40 km. Et ce sera le laboratoire de soulignement des revenus Oracle. Et ce sera aussi la dalle de soulignement Oracle come. Maintenant, aucun de ces deux n'est, bien sûr, des blocs rapides. Donc, l'escalier oracle com doit être des bouvillons et la dalle est censée être une dalle. Maintenant, vous verrez que le verrou de dalle fonctionne parfaitement. Aucun Roy ne se rappelle déjà à l'étage avec le nouveau bloc d'escaliers ne fonctionne pas parce qu'il a un accès protégé. Qu'est-ce que cela signifie ? Eh bien, si nous cliquons sur le bouton central de la souris dessus, nous pouvons voir que la preuve que le constructeur ici est réellement protégé. Par conséquent, ce que nous devons faire, c'est que nous devons faire un cours personnalisé, ce qui est un peu bizarre. Personnellement, je ne suis pas sûr à 100 %. C'est plus large, c'est le cas. Cependant, c'est ce que c' est, donc nous devons le faire. Changeons également ce matériau en métal car au bout du compte, il s'agit d'un calcium. Et après cela, accédez au package personnalisé, cliquez avec le bouton droit de la souris sur la nouvelle classe Java. C'est le modèle d'escalier. Et nous allons prolonger ça depuis le bloc d'escaliers. Survoyons cela et créons une correspondance de constructeur super. Ensuite, nous allons passer de la protection au public. Et maintenant, c'est fini. Et nous n'aurons plus jamais à regarder la classe plus de blocs d'escaliers. Mais chaque fois que nous allons créer un nouveau bloc, c' est-à-dire un bloc d'escaliers, nous allons utiliser cela à la place. Et vous pouvez voir que le premier paramètre est en fait un état de bloc. Donc, ce que nous devons passer ici, c'est juste les blocs ou blocs de mode. Il s'agit donc essentiellement de dot git default state. Donc, en gros, ce que nous devons passer ici, c'est le bloc dont les escaliers sont faits. Mais c'est l'idée générale. Mais pour cela, vos livres sont enregistrés et seront prêts à être utilisés. Cependant, bien sûr, cela ne peut jamais être aussi simple. Parce que vraiment comme le kicker pour tous les blocs non bloqués vont être les fichiers JSON. Eh bien, comme je l'ai dit, je vais tous les copier pour toujours et, bien sûr, je les expliquerai également. « Nous allons copier sur la dalle et les bouvillons », dit Jason, et s'il vous plaît, ne tombez pas de votre siège lorsque vous voyez cela parce que c'est beaucoup. Commençons donc par une dalle parce que ce n'est pas trop mal du tout. Ce que vous pouvez voir, c'est que maintenant nous avons une variance différente, n'est-ce pas ? Nous avons trois types de dalles différentes : le bas, le double et le haut. Et chacun d'entre eux pointe vers un fichier Jason de modèle différent. Cela pointe vers la dalle Jason, cela pointe vers le bloc Oracle , car bien sûr, si vous avez deux dalles, cela ressemble simplement à un bloc normal. Et puis celle-ci pointe vers la dalle, mais sur la partie supérieure ou la moitié supérieure du bloc réel. C'est l'idée générale. Ce type est ce qu'on appelle ici une propriété d'état de bloc. Nous allons examiner ces variables dans une conférence plus en détail pour l'instant, nous pouvons simplement considérer ces variables comme ayant une sorte de valeurs qu'elles peuvent prendre. Et en fonction de leur valeur, nous modifions le modèle sur lequel les états de bloc pointent de prélèvement. C'est presque tout ce qu'il y a à faire. Maintenant, pour les escaliers, nous avons en fait plusieurs blocs différents par propriétés. Et c'est pourquoi ça ressemble à ça. Et je vais continuer à faire défiler et vous direz que c'est de la folie. Oui, il y a 209 lignes. C'est la raison pour laquelle vous devriez copier cela à 100%, en aucun cas vous ne devez écrire cela, car c'est une folie absolue. Maintenant, une astuce que je veux partager avec vous est que si vous utilisiez un identifiant de mode différent ici. Vous pouvez le sélectionner et appuyer sur Control R pour le remplacer, puis le remplacer par votre ID MOD. Fondamentalement, cela touche Remplacer tout. Et vous pouvez voir que tout d'un coup, partout, il a remplacé la chose réelle par la mélodie que nous avons mise ici. C'est Control Z pour revenir ici. Et il en va de même pour le calcium. Donc, si vous utilisez Arnold Titanium par exemple, vous pouvez simplement les remplacer tous et cela fonctionnerait également. Où n'oubliez pas de renommer également les fichiers JSON. Mais cela rend tout plus facile. Et vous pouvez également le faire en passant, lorsque vous sélectionnez le dossier ici et appuyez sur Control Shift R, puis le, ce fichier de remplacement apparaît et vous pouvez voir que je pourrais maintenant remplacer ou un calcium dans tout ces dossiers ici. Même chose, puis remplacez-le par du titane, par exemple Remplacer tout. Et cela fonctionnerait également. Mais c'est un conseil très important et je vous recommande vivement de le faire si nécessaire. Donc maintenant, nous devons copier les fichiers du modèle de bloc et c'est là que ça devient assez fou. Et c'est aussi, vous verrez maintenant pourquoi je dis : Eh bien, nous allons tout copier parce qu'il s'agira de cinq fichiers différents. Maintenant, ce n'est toujours pas trop mal Toutes les choses envisagées, mais c'est encore beaucoup. Ouvrons d' abord les dalles pour que vous puissiez voir que, dans l'ensemble, ce qui est écrit ici n' est pas trop fou. Nous avons essentiellement trois textures différentes que nous pointons partout, tant pour l'ordinateur portable que pour la dalle, ces textures seront les mêmes, quel que soit le cas, car nous voulons toujours que cela ressemble au bloc oracle. Et la seule différence entre les deux basés sur les fichiers est le parent ici. L'un ou l'autre est un ordinateur portable Slab Horse, c'est vraiment tout. Et quand il s'agit des escaliers, alors qu'ils ont l'air un peu différents, mais aussi très similaires, nous avons trois textures différentes que nous avons pointées. Et encore une fois, la seule chose qui change ici, ce sont les regards, les escaliers intérieurs et les escaliers extérieurs, ou le parent est à peu près tous les changements ou toutes les différences dans le modèle Jason ? Eh bien, ce ne sont que les quatre blocs du modèle normal de Jason. Cela pointe vers la dalle normale ici et cela indique le fichier JSON normal ou télécom juste ici. Donc, pas de soucis là-bas. Et ce qui est fou, c'est que nous n'avons pas besoin d'ajouter textures car les escaliers et les dalles loup utilisent simplement la texture du bloc oracle. C'est vraiment cool. La seule chose que nous devons ajouter est une traduction. Bien sûr, ce que nous allons faire, c'est que nous allons juste copier ça ici. Je vais dire, ou un revenu de vache. Les escaliers de soulignement seront l'Oracle Malcolm. Il y a et puis ça va être la dalle de rappel. dalle. Veuillez également noter que ces escaliers avec un S, si pluriel et dalle singulier, c'est très important ici aussi. Mais en fait, je sais que vous ne me croirez pas, mais c'est tout. Ce qui est fou va certainement être là. Les fichiers JSON du bloc indiquent Jason. Et cela va continuer pour tous nos différents blocs non que nous allons ajouter n. Je recommande donc fortement de jeter un coup d'œil à ceux du référentiel GitHub et de copier ceux qui sont finis. Et ensuite, ce sera beaucoup plus facile. Mais maintenant, voyons si cela fonctionne. Ou je fonctionne de nouveau dans la microfinance, je peux voir l'oracle venir et les esclaves ont été ajoutés au jeu. Et nous pouvons les poser et simplement faire un beau, Eh bien, je veux dire, en gros, ce que nous voulons avec eux, nous pouvons juste les poser et tout fonctionne aussi, non ? Nous pouvons voir les escaliers intérieurs et extérieurs ou le travail. Vous pouvez placer cela en haut et en bas ici et les assembler pour créer un bloc normal. Comme vous pouvez le constater, tout fonctionne ici. C'est plutôt cool, non ? Mais ce sera déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et que vous avez appris quelque chose de nouveau, et je vous verrai lors de la prochaine conférence. Donc, oui. 55. (Bases) Ajouter des boutons de pression et des plaques de pression: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter des boutons et des plaques de pression personnalisés et continuer avec les blocs non bloqués. Passons donc à notre classe de blocs Mort et nous allons simplement copier deux fois sur la dalle de télécommunication OriC. Et commençons tout de suite. Il va donc s'agir du bouton Oracle Come. Et c'est bien sûr là encore une fois le cas. Et puis l'autre, ce sera la plaque de soulignement de la pression de soulignement des télécoms. Et encore une fois, la même chose juste en minuscules ici. La pression souligne en retard. Maintenant, le bouton Calc ici va bien sûr être un bloc de boutons, ce qui nous donne également une erreur. Et la dalle d'un bloc va être une pression ou plutôt le plaisir joué Brock sera un bloc de plaque de pression, ce qui, bien sûr, va également comporter une erreur. Cela signifie que nous devons créer deux nouvelles classes personnalisées ici. Ainsi, dans notre package personnalisé, le bloc de boutons mode, qui va étendre la classe de blocs de boutons en pierre. Nous allons survoler ce constructeur de creed correspondant super. Je veux changer cela en public ici. Donc, pas de soucis là-bas. Et ensuite, nous n'avons plus jamais à regarder ce cours. Et puis dans le package personnalisé une fois de plus. Le bloc de la plaque de pression de mode ici. On le prolonge par le bloc de la plaque de pression. Et nous allons encore survoler cela et rendre cela public. Maintenant, il utilise les classes normales de vanille. Nous allons utiliser le bloc de boutons mod stone ici. Et puis ici, nous allons utiliser le bloc mod de pression joué. Maintenant, le premier paramètre de cela va être une règle d'activation. C'est ce qui va être le numéro. Ils fuient tout. Donc, fondamentalement, tout ce qui passe au-dessus de cette plaque de pression va l'activer. En fait, le bouton central de la souris clique dessus et le bouton central de la souris clique sur le bloc de la plaque de pression. Et vous pouvez voir que nous avons la sortie Redstone. Il s'agit essentiellement de la méthode responsable ou qui vérifie quel est le type réel. Vous pouvez donc voir que ce .tab est en cours de changement ici. Donc, en tant qu' instruction switch et que vous avez tout ou mamans, cependant, si vous voulez créer votre propre type d'activation personnalisé, une fois de plus, je le recommande vivement. Vous avez besoin de connaissances Java pour le faire. Mais ce n'est pas trop fou. Ce que vous pouvez faire, c'est que vous pouvez faire, en gros, vous n'avez même pas besoin de faire votre propre activation car l'activation de tout ce que vous pouvez voir est une énumération. Vous n'avez même pas besoin de le faire. Ce que vous pouvez faire, c'est que vous pouvez simplement remplacer cette méthode dans votre classe de blocs de plaque de pression personnalisée , puis avoir ce qui suit ici. Mais vous pouvez voir que les entités non spectaculaires, et vous passez essentiellement dans une classe particulière ici. Alors, quelle est la classe de ce que nous allons obtenir ? Et il s'agit d'une liste d'animaux particuliers ou de foules particulières que nous examinons ensuite. Et c'est l'idée générale. Donc, dans ce cas, tout ce qui est une entité vivante, n'est-ce pas ? Donc, il bouge tout ce qui est une entité vivante, puis on en retournera 15. Si l'entité qui est au-dessus de cette classe d'entités vivantes, sinon nous pouvons également passer quelque chose d'autre ici. C'est donc quelque chose à garder à l'esprit si vous ne le voulez pas, c'est tout à fait très bien. Mais je recommande vivement quelques connaissances Java pour cela. Sinon, vous allez probablement vous battre avec ça un peu. Eh bien, les blocs sont maintenant enregistrés. Cependant, bien sûr, encore une fois, malheureusement, les dossiers Drazen sont la chose qui va être la folie. Et dans ce cas, le fichier JSON de bouton pour l'état du bloc va en fait être la folie. Vous pouvez voir. La plaque de pression n'a qu' une alimentation fausse ou vraie. Et puis, soit nous avons la plaque pression ou la plaque de pression. C'est assez simple. Comme vous pouvez le voir, le bouton est fou. Encore une fois, car nous pouvons baser sur le sol ou sur le mur. Nous pouvons l'avoir orienté vers l'est, l'ouest, le sud ou le nord. Et il peut être allumé ou éteint. Donc c'est fondamentalement ce que fait cette folie, c' est en fait assez fou. Donc, dans l'ensemble, cette année ne fait que pivoter le bloc, et cette année fait que la texture tourne également avec le bloc afin qu'il ne tourne pas de manière indépendante. C'est l' essentiel de tout cela. Mais encore une fois, c'est plutôt fou. Ne tapez pas cela. Cela est disponible dans le référentiel GitHub ou dans l'individu. Bien sûr, cela sera également disponible dans les bibliothèques externes ici, que nous avons déjà vu auparavant. Je recommande donc fortement de simplement copier cela si nécessaire. Et bien sûr, vous pouvez toujours utiliser l' astuce pour le sélectionner et appuyer sur Control R pour remplacer quelque chose. Ensuite, vous pouvez remplacer, par exemple, l'année MOD ID. Et vous n'avez pas à le faire beaucoup de fois individuellement. Mais passons en fait au fichier JSON en soulignant immédiatement parce que c'est quelque chose que j'ai tendance à oublier parfois. Donc, ne faisons pas de cela une habitude. Nous allons dire que le bouton Oracle Comma et Oracle peuvent exercer une pression sur la plaque. Et ce sera le recalc et le bouton et le péricarde de pression sur non pas un trait de soulignement mais une plaque normale, l'ego et ensuite les modèles de blocs que nous avons vus, bien sûr, une fois encore, il y a un moins, plus, mais heureusement pour le bouton et la plaque rétro, il y en a encore cinq. Jetons donc un coup d'œil à ces derniers, car encore une fois, ils ne sont pas si intéressants que ça. Toutes choses prises en compte. Vous pouvez voir que le bouton ici n' a qu' un parent différent à chaque fois et que la texture est toujours pointée vers le bloc déjà Kalikimaka. C'est donc à peu près tout ce qu'il y a à faire. Il en va de même pour ça. Les pointes vers Oracle peuvent bloquer la texture. Et il a simplement la pression vers le haut ou la plaque pression vers le bas en tant que parent. C'est vraiment la seule différence ici. Et pour les modèles d'article, il y a quelque chose de très particulier pour le bouton. Mais ce n'est pas trop fou parce que nous avons un modèle de bloc d' inventaire de boutons spécifique, lequel de cela pointe, mais non plus rien à quitter. Mais dans l'ensemble, ce n'est pas trop fou. Et encore une fois, nous n'avons pas besoin d'ajouter de textures ici car les textures vont toujours l'être, l'Oracle peut bloquer l'un ou l'autre de ces blocs. Mais maintenant, voyons si cela fonctionne. Ou un pharmacien de microfinance peut voir les deux. La plaque de pression ainsi que le bouton ont été ajoutés. Et il suffit de cliquer sur le bouton. Bien sûr, ça marche et ici c'est la même chose. Et parce que nous avons tout mis, même les entités d'élément ici, tomber dessus fonctionnera toujours. C'est donc assez fréquent, cool. Et c'est en fait à quel point il est facile ajouter l'un de ces blocs là où je suis, mais ce sera déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelques nouveautés. N'oubliez pas, bien sûr, que tout le code est disponible dans le référentiel GitHub ou dans un individu. Et je vous verrai au cours de la prochaine conférence. Oui. 56. (Bases) Ajouter des clôtures de clôture et des grates de clôture et des murs de clôture et: Cours de tissu pour 118. Et dans cette conférence, nous allons ajouter des clôtures, des clôtures , des portes et des murs personnalisés, Minecraft. Cela va donc se poursuivre avec les blocs non bloqués comme j'aime les appeler. Eh bien, passons à notre classe plus de blocs et copions trois fois la dalle personnalisée. Nous allons donc avoir des extrémités calciques orales bien sûr. Et ça va être un Oracle qui viendra ici aussi. Et ensuite, nous allons avoir une porte de soulignement de clôture. Et ici bien sûr aussi, ou un calcSum des ailettes de soulignement ET une porte. Et ensuite, ici, nous allons avoir une paroi de calcium orale ou une paroi masculine calico ici. là que tu y vas. Donc, ça va être un bloc d'amis et ça fonctionne réellement. Et ça va être un bon bloc de clôture. Et cela fonctionne réellement. Mettre fin au deuil ou trois ? Oui, un bloc mural. Et cela fonctionne également. Donc, c'est vraiment très bien. nous n'avons pas à créer de cours personnalisés Dans ce cas, nous n'avons pas à créer de cours personnalisés ici. Donc, nous pouvons simplement continuer sur les fichiers JSON, qui vont encore être assez fréquents, mais pas de soucis du tout. Nous allons passer à travers ça. Donc trois blocs States, fichiers JSON, et vous pouvez déjà voir les choses qui commencent à devenir complètement folles. Donc, tout d'abord, la barrière de clôture, comme vous pouvez le voir, a trois propriétés d' état de bloc différentes ici, face au mur et ouverte. Et en fonction de cela, nous allons à nouveau choisir un modèle de chance différent. Et puis, bien sûr, nous allons le faire pivoter et les UV le verrouilleront également. Rien de trop fou ici. Encore une fois, un très bon conseil consiste à appuyer sur la touche Contrôle Maj, ou si vous avez un autre ou un calcium si vous n'utilisez pas de récapitulatif vient mais du titane, ou si vous avez un ID de mode différent, vous pouvez simplement taper le Mara DMC cours ici et tapez votre propre mélodie et remplacez-la comme ça. Encore une fois, Contrôlez Shift et vous êtes sur un dossier. Et bien sûr, tous les fichiers sont disponibles pour téléchargement dans le référentiel GitHub ou en individuel. Et le mur et la clôture sont en fait un peu différents. Ils sont multipartites , comme vous pouvez le constater. Et là, l'idée est que vous appliquez une certaine partie du modèle lorsque quelque chose se produit. Vous pouvez donc voir que lorsqu' il y a quelque chose ici , nous y ajoutons un côté dans une direction particulière. Ensuite, nous ajoutons également le modèle supplémentaire. Alors, allons en fait dans le fichier JSON soulignent un et ajoutons-les tous immédiatement. Il y aura donc la clôture. Et ensuite, nous allons avoir la porte de soulignement, de soulignement, de soulignement de revenu Oracle dans cette clôture et ici. Ce sera également le mur de Malcolm. Mur de bienvenue. là que tu y vas. Nous avons donc ajouté tout cela maintenant. Donc, ça va aussi bien se passer. Et ajoutons maintenant les fichiers JSON du modèle, qui vont être nombreux. En fait, nous en avons quatre pour la porte, trois pour la clôture, puis nous en avons quatre autres ou le mur. Comme je l'ai dit, beaucoup de dossiers, dont 11 au total. Donc, dans l'ensemble, ils se ressemblent à peu près tous. Nous avons pointé une texture, à savoir la texture du bloc. Et juste les parents sont différents. Vous pouvez donc voir qu' il n'y a vraiment rien de fou ici. Il s'agit simplement d'avoir le bon parent , puis de pointer vers la texture correcte. C'est tout ce qu'il y a à faire. Je ne pense pas qu'il soit vraiment nécessaire de passer en revue chacun d'entre eux. Tout est pareil. Parfois, le nom, l'année de la texture est un peu différent. Mais dans l'ensemble, la plupart du temps, c'est toute la différence. Et bien sûr, vous pouvez toujours aller dans les bibliothèques externes, rouge à celle-ci ici dans Minecraft, projet Minecraft. Dans le dossier Assets, Minecraft bloque les états. Nous avons les modèles, les modèles, puis ici aussi tous les modèles ou aussi. Vous pouvez voir le mur d'Enscape ici par exemple. Et cela est également disponible, donc pas de soucis. Vous pouvez toujours y jeter un coup d'œil et les utiliser également. Et copiez-les essentiellement. Maintenant, copions par-dessus le mur, le portail de clôture et les modèles d'éléments de clôture. Pour concéder ces points au modèle d'inventaire mural, cela pointe vers l'inventaire des clôtures, et cela pointe vers la porte d'arrivée. Donc, rien de trop fou. Dans un autre temps, nous n'avons pas besoin d'ajouter une texture par rapport à ce dont nous avons besoin pour ajouter nos balises. Ainsi, dans notre dossier de données, Minecraft balise les blocs, cliquez avec le bouton droit sur un nouveau fichier appelé fences data JSON. Ensuite, nous allons juste copier le contenu de cette année pendant un instant pour que nous ayons la mise en forme correcte des balises. Et puis il s' agira de cœurs MC pour la clôture de soulignement de recalc. Ensuite, nous allons simplement faire glisser ceci dans le même dossier tout en maintenant le contrôle pour le dupliquer. Et nous allons appeler ça l'étiquette des murs. Et puis, ce sera le mur de rappel. Cela est nécessaire pour que les défenses se connectent réellement les unes aux autres. C'est très important, non ? Et après avoir ajouté tout cela, voyons si cela fonctionne. Très bien, nous avons constaté que de retour à l'esprit empêche de voir que les trois blocs ont été ajoutés et qu'ils se connectent totalement bien. C'est donc exactement ce que vous voulez voir ici. Allons juste poser ça aussi. là que tu y vas. Donc, tout fonctionne parfaitement. Et bien, je veux dire, ils sont tous ajoutés et c'est en fait comme il est facile d'ajouter les portes de clôture, les clôtures et les murs au jeu. caoutchouc. Ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous en apprendrez quelques-unes des nouveautés. Et je vous verrai lors de la prochaine conférence. Donc, oui. 57. (Bases) Ajouter des portes et des trapdoors: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter une porte personnalisée et une trappe personnalisée à Minecraft. Maintenant, ils vont vraiment être très intéressants. Allons simplement dans notre classe de blocs de devise. Et avec cela, concluez essentiellement les blocs non bloqués. Ce qui va être intéressant ici, c'est que ces derniers seront pas faits de calcium, mais ils seront faits de fleurs de cerisier. Maintenant, la fleur de cerisier est bien sûr le bois réel. Nous allons donc avoir une coutume lors d'une conférence ultérieure, mais nous allons déjà voir la porte. Alors, les fleurs de cerisier soulignent la porte juste ici. Et puis il en va de même pour la fleur de soulignement Sheri, la trappe de soulignement. Je vais juste copier ça ici, pour rendre la porte du piège à ego un peu plus facile. Et maintenant, nous avons besoin de fabriquer un bloc de porte moteur et un bloc de trappe mod également. Eh bien, créons simplement ce bloc de porte, qui prolonge le bloc de porte. Survoyons ce constructeur de creed qui correspond super, et rendons cela public aussi. Et maintenant, nous n'avons plus besoin de regarder la classe. Une fois encore. La même chose pour le bloc de porte de piège modèle. Nous allons juste étendre, bien sûr , le bloc de trappe. Survolez également le constructeur de taux correspondant super et rendant le constructeur public ici. Et puis, tout va bien. La porte va donc bien sûr être un bloc de porte de devise. Et il va s'agir d'un bloc de trappe modèle. Et nous devons en fait appeler un autre, eh bien, je pense que les paramètres de tissu et ça va être le non opaque ici. Parce qu'en fait, la porte et la trappe contiennent des valeurs alpha dans leur texture. Cela signifie que vous disposez essentiellement d'un portail transparent dans le livre. Et si vous avez cela, vous devrez ajouter ce non opaque ici. C'est très important. Et il y a même une autre chose que nous devons faire pour cela. Et cela va être, nous allons créer un nouveau cours dans le package de cours MC. Cliquez donc avec le bouton droit sur la nouvelle classe Java appelée client de cours MC qui va implémenter l' initialiseur de mod client ici. Nous allons survoler cela et implémenter la méthode, la méthode client non initialisée. Et cela ne contiendra pas l'endroit où nous définissons la couche de rendu. Nous allons donc dire carte de couche de rendu en bloc. Cette instance. Bloc de diagramme à points d'instance. Quels blocs ? Porte à pois, exactement la porte en fleur de cerisier avec le point de rendu plus tard est découpé. Ensuite, nous allons juste dupliquer cela et mettre la trappe ici. Et ce que nous devons également faire, et c'est très, très important que vous suiviez cela, nous devons entrer dans notre tissu. Dot adjacent juste ici, et au-dessous du point d'entrée principal, n'est-ce pas ? C'est très important. Nous devons essentiellement copier cela. Eh bien, le client de la CIA. Ensuite, nous devons dire cours de MC, puis nous assurer que cela est écrit comme ça. Donc, cours MC, client, c'est très important et cela doit certainement se produire sinon, le client ne sera pas reconnu l'année dernière et nous aurons un puits, une flèche dans la façon dont c' est en cours d'affichage. Mais après avoir ajouté, c' était bien et le code est terminé. Maintenant, nous devons simplement passer aux fichiers JSON. Bien sûr, tous les fichiers JSON sont à nouveau disponibles dans le référentiel GitHub ou sous forme de gists individuels. Maintenant, après avoir fait tous ces blocs non bloqués, nous avons vu ce taux plusieurs fois pointé simplement vers différents modèles ici, soit dans la trappe, soit dans la porte. Rien de trop spectaculaire pour être honnête. Nous allons donc ajouter la traduction ici. Donc ce n'est pas déjà du calcium, mais c'est la porte de soulignement de fleur de soulignement Sherry. Et puis on va faire la porte des cerisiers en fleurs. Et c'est la même chose ici pour la trappe. Nous allons juste ajouter le piège à la frontière. Et puis il en va de même pour cette trappe, non ? L'objectif, puis ce que nous pouvons faire, c'est d'ajouter les fichiers de modèles. Maintenant, il y en a en fait quelques-uns. Nous allons les copier. Vous pouvez voir qu'ils sont sept. Mais encore une fois, même s'ils sont sept, dans l' ensemble, ils sont assez simples. Vous pouvez voir que c'est une fois de plus que le parent qui est différent ici. Et il en va de même pour la trappe. La seule autre chose intéressante, c'est que parce que la porte est composée de deux blocs, nous avons ici une texture supérieure et inférieure qui montre ce que c' est à peu près le seul intéressant. truc. Maintenant, le modèle de l'article, en particulier pour la porte, est en fait très intéressant. Parce que lorsque vous verrez cela, c'est qu'il s'agit en fait d'un modèle d'article normal. Ou un, pour un objet qui n'est pas un bloc. En effet, la porte n'est pas affichée dans l' inventaire sous la forme d'un bloc, mais plutôt comme un article réel. La trappe, cependant, ce point soulage la trappe normale ici. Donc, pour celle-ci, nous devons en fait l'ajouter à différentes textures. Il y aura en fait trois textures de blocs différentes et une texture d'article. Ceux-ci sont donc bien sûr également disponibles pour vous. Ils ont le bas de la porte, nous avons la porte en haut et la trappe. Ensuite, dans l'article, nous avons également la porte ici, donc nous allons simplement copier cela aussi. Donc, l'ego, la porte ribosome de l'objet. Et maintenant, tout a été ajouté. Maintenant, après avoir ajouté tout cela, voyons si cela fonctionne ou si oui, nous nous retrouvons dans un micro objectif peut voir à la fois la porte et la trappe ont été ajoutées avec succès au jeu. Maintenant, si je clique avec le bouton droit de la souris et que je vois que cela ne fonctionne pas pour les ouvrir. C'est très curieux, et je peux vraiment les ouvrir. Eh bien, je veux dire, faisons-le simplement correctement. Ici. Vous y allez. Je peux vraiment les ouvrir avec un Redstone si je me suis dirigé correctement il y a. C'est donc quelque chose que nous devons encore changer. Et je vais vous montrer comment vous pouvez déterminer s'il est ouvert uniquement avec Redstone ou s'il est ouvert avec la main. Mais c'est en fait une solution très, très facile. Au lieu de mettre dans le matériau métal, nous mettons simplement du bois matériel. Et c'est tout ce que nous devons faire pour changer ici afin de les ouvrir à la fin. Donc, pas de soucis là-bas. Mais cela conclut à peu près la partie non-bloc de la série de conférences, et cela conclurait également la première section ici. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau. Mais je vous verrai lors de la prochaine conférence. Oui. 58. (Tools) Créer un nouveau kit d'outils: Ou bien un retour au cours de tissus pour 118 ans. Et dans cette conférence, nous allons créer un ensemble d'outils personnalisé. Et ce que je veux dire, je suppose que nous allons commencer à entrer dans notre classe d' articles de modèle ici. Et nous allons faire une hache et une hache dans un ensemble, une pelle et une épée. Et ça va être dans cet ordre. abord, ce que nous allons trouver, c'est quand je copie tout le sliver ici, nous allons juste commencer à faire le, c'est aussi cool de pouvoir nommer ici parce que je ne veux pas avoir à taper ou il peut venir chaque fois que le code est, bien sûr, disponible dans le référentiel GitHub ou un individu tout aussi bien. Mais si je commence à faire un trou de forage, je peux choisir x ici et nous allons en faire un nouveau pioche. Bien sûr, nous allons trouver une fois de plus : Eh bien, l'amour dur, il va être protégé une fois de plus. Donc, dans notre paquet d' articles personnalisés ici, nous allons créer un article mod big acts, ce qui va prolonger le pic prochain article. Lecture du constructeur correspondant super. Et je vais changer ça en public. Et puis nous allons immédiatement faire la même chose pour l'élément mod acts, qui étend l'élément X. Survolez également le constructeur d'époque correspondant super, ce qui rend ce dernier également public. Et ensuite, nous aurons également besoin de l'article entier du mod. Extension de l'article entier. Une fois de plus, survolez un constructeur de lecture rapide correspondant à super et rendant ce dernier public. Et encore une fois, nous n'avons plus jamais à revoir ces cours. Cela a beaucoup de sens, quel que soit le cas. Et vous verrez qu'il prend en fait quatre paramètres. Le premier, qui est un outil, c' est en fait quelque chose que nous devons également créer. Je vais le faire dans notre paquet d'articles. Cliquez avec le bouton droit de la souris dessus, une nouvelle classe Java ou un nouveau matériau d'outil mod. Et cela va implémenter interface matérielle de l'outil à partir de l'élément net Minecraft. Et en fait, nous n' allons pas survoler ça. La première chose que nous allons faire, c'est que nous allons changer cela en énumération. C'est très important. En fait, nous allons cliquer dessus, puis appuyer sur Contrôle H pour faire apparaître la hiérarchie. Et vous allez voir que nous avons matériel d'outils ici. Double-cliquez dessus. Et vous pouvez maintenant voir que ce sont les deux matériaux de la vanille. Et il y a un truc très drôle ou il y a vraiment un truc très facile. Et ça va être, nous allons aller bas ici, non pas devant le dernier support bouclé, mais le support bouclé de l'avant-dernier. Ensuite, nous allons maintenir la touche Maj enfoncée et cliquer ici. Ensuite, nous allons appuyer sur Control C pour copier, puis sur Control V pour coller. Et puis il y a une chose que nous devons changer, et c'est le nom ici. Nous allons donc simplement copier ce nom, coller ici, et nous ne devrions plus avoir d'erreurs. Maintenant, la raison pour laquelle nous faisons cela est parce qu'au niveau l'outil réel, le matériel va être exactement le même, peu importe ce que vous faites. Par conséquent, j'aime généralement simplement le copier à partir de la classe de matériaux d'outil. C'est tout simplement très logique. Et l' avantage supplémentaire ici est également que vous avez un accès immédiat à toutes les différentes valeurs que les matériaux ici sont à moitié. C'est donc vraiment cool. Vous pouvez donc simplement voir immédiatement ce qui se passe. C'est plutôt bien. Ce que nous allons faire, c'est que nous allons juste nous débarrasser de quelques choses. Donc, on va juste faire quelque chose comme ça , puis quelque chose comme ça. Nous donnons donc un nom ici à ce rouge, bien sûr, tous les recalculent dans ce cas. Et ensuite, au niveau de l'exploitation minière, nous pouvons même le faire différemment. Niveaux miniers ou niveaux miniers qui ferment il y a, qui venaient de retourner le tube, mais c'est un peu plus facile à lire ici. Ensuite, nous allons changer la durabilité à 450. Bien sûr, la durabilité doit être assez explicite. C'est juste la durabilité de base des objets réels, puis la vitesse d'extraction. Vous pouvez donc voir que c'est 64. Pour cela, nous allons juste faire quelque chose comme 4.5. Et peut-être que les dégâts seront en fait de 3,5 et que l' intangibilité sera encore plus importante. C'est peut-être quelque chose de 25 ans. Et ici, nous n'avons pas besoin de tout ce jazz en n'ayant besoin que d'un fournisseur d'ingrédients. Donc, on va juste faire avec ça. Ensuite, nous allons dire ingrédient de l'article. Je vais dire des articles mod, plus d'articles qui sont du lingot de calcium, puis fermez cela correctement. Vous y allez. Maintenant, si nous devions en ajouter un autre ici, je pourrais simplement copier ceci et vous verrez que cela ne fonctionne pas tout car le dernier doit toujours se terminer par un point-virgule, tandis que chacun individuellement doit être séparé par une virgule. C'est donc très important à noter ici. Il s'agit essentiellement d'une énumération avancée. Si vous avez regardé l'introduction de Java et que vous devez reconnaître que le problème ici avec le paresseux ne devrait pas être trop grave. Cela est donc toujours utilisé par Minecraft lui-même. Donc, en fait, je le suis. OK. En l'utilisant également, je crois que la dépréciation devrait être tout à fait correcte comme l'utiliser. Et si quelque chose change ici à un moment donné , nous pouvons toujours, vous savez, jeter un autre coup d'œil à la classe de matériaux mode et à son fonctionnement. Très bien. Mais c'est comme si nous n'avons pas besoin de faire quoi que ce soit ici. Nous ne faisons que définir ces champs. Et ces champs sont essentiellement définis pour chacun des différents niveaux de matériaux, pour ainsi dire. Donc, si vous voulez changer quelque chose, il suffit de le changer ici. Et ensuite, cela se répercute sur tous les différents outils que vous pourriez avoir dans votre modèle, n'est-ce pas ? Ensuite, nous pourrons faire ce qui suit. On peut dire mod tool material.org calcium. Et le deuxième paramètre sera les dégâts de l' attaque. Je pense que c'est un entier. Ensuite, le troisième paramètre est la vitesse d'attaque, qui est un flotteur. Et encore une fois, juste les paramètres normaux de l'article en tissu. Maintenant, parce qu'il s'agit d'une hache de sélection d' article MOD ici, dans ce cas, le risque de changer un peu les chiffres, les chiffres ici, nous devrons modifier n'importe quelle façon. Comme si vous avez votre mode réel, vous allez probablement modifier un peu les chiffres parce que bien sûr, équilibrer tout n'est pas aussi facile que vous pourriez le penser. Sinon, nous n'avons pas besoin d'ajouter autre chose. Donc, ce que nous pouvons simplement faire, c'est que nous pouvons coller ça cinq fois ici, puis commencer à changer les choses. Alors agit ici, agit aussi. Donc, l'XP va probablement ressembler à 1. Il s'agit d'une vitesse supplémentaire, ailleurs, ce n'est pas la vitesse réelle, elle s'y ajoute, mais plus de dégâts ici pour l'objet plus d'actes. Et puis nous allons avoir tout le trait de soulignement qui , ensuite, soulignera le trou ici aussi. Il s'agit du mode all item. Encore une fois, je ne le suis pas à moins bien sûr de zéros ou de ne pas savoir pourquoi à 100 %. Certains d'entre eux ont besoin de l'élément mode et d'autres non. Cela semble très incohérent, mais c'est ce que c'est. Il s'agit d'une pelle portant le nom ou d'une pelle calico. Et bien sûr, ici aussi, ou une pelle télécoms. Il est très important que vous changiez les noms ici partout, alors soyez conscient de cela. Et puis l'épée ici. Et puis enfin, mais non le moindre, l'oracle vient épée. Et voici un article de tri. Et peut-être que ces dégâts d'attaque sont un peu plus importants. Et la vitesse est également de trois, ça va aller très bien. Maintenant, les éléments sont correctement enregistrés, mais maintenant nous avons bien sûr besoin des fichiers JSON qui ont une minuscule chose qui est différente avec eux, mais en fait, cela ne devrait pas être trop fou. Nous allons donc copier les fichiers du modèle. Et dans l'ensemble, tout cela est assez standard. La seule chose dont vous devez vous occuper, et c'est très important ici, est que le parent est en fait l'objet slash handheld. Et la raison en est que vous obteniez un look 3D lorsque vous êtes dans une troisième personne. Donc, en gros, lorsque vous avez l'épée dans la main et que quelqu'un d'autre la regarde sur un serveur, il semble bien sûr que c'est en 3D. C'est donc ce dont vous avez besoin, c'est très important ici. Et puis passons également au fichier JSON de soulignement. Et je vais juste copier les traductions ici encore une fois, bien sûr, tout ce qui vous est disponible dans le référentiel GitHub ou un individu s'adapte également. Même chose, avec les textures ici. Ce sont donc les cinq textures d' objets dont nous allons avoir besoin. Agit dans l'ensemble, Le cochon agit, la pelle et l'épée. Il suffit de les copier il y a plus d'un an. Et cela devrait être presque tout ce que nous devons faire. Il y a en fait une autre chose qui est très importante à ajouter, et ce sera les balises d'outils. Par conséquent, sous Data, nous allons créer un nouveau répertoire appelé Hambrick. Et puis, à l'intérieur, nous allons créer un nouveau répertoire appelé tags. Et puis à l'intérieur de là, nous allons créer un nouveau port d'annuaire. Et ensuite, nous avons essentiellement besoin d'avoir accès à Jason. Et il suffit de copier ça sur ce gamète grand axe adjacent. Et nous allons juste copier un an. Nous allons remplir ça dans un instant. Nous avons ce grand axe. Ce sera des pelles. Ensuite, nous allons avoir un système d'exploitation et ensuite trier. Donc, à ce stade en 118, je pense que ces derniers ne sont plus nécessairement nécessaires ou jamais. Je pense que c'est toujours une bonne idée de l'ajouter. Il suffit d'ajouter essentiellement l'axe particulier, pelles et tout ça. Avec ces étiquettes. n'y a vraiment aucune raison ne pas le faire à la fin de la journée. Il s'agit d'un processus assez simple. Une fois que vous l'avez fait, une fois pour l'un de vos deux matériaux plutôt que de l'ajouter aux autres, c' est aussi un processus très simple et il est fortement recommandé de les ajouter. Ainsi, dans le tissu, l'espace de noms, les balises, les éléments, puis accédez essentiellement aux trous, aux axes, aux pelles et aux tris. C'est donc une idée très intelligente de le faire et de l'ajouter là-dedans. Mais c'est à peu près tout ce que nous devons faire. Voyons donc si cela fonctionne. Ou Francis de retour et de microphone. Comme vous pouvez le constater, tous les outils ont été ajoutés au jeu. Mais voyons simplement, tout cela fonctionne, donc c'est très bien. Voyons si je peux même cliquer avec le bouton droit de la souris avec ça. Et je peux vraiment le faire. C'est donc un excellent signe ici aussi. Et sautez aussi ça. Tout cela fonctionne également. Je peux également cliquer avec le bouton droit de la souris avec cela, je suppose bien sûr que je peux. Et puis, nous n'avons pas vraiment de bois. Vous regardez ça, c'est à quelle vitesse peut apparaître. Je vais cliquer dessus avec le bouton droit de la souris et je peux également l'extraire correctement. Donc, tout devrait bien fonctionner ici. Et tout a été couronné de succès. C'est d'ailleurs ce que je veux dire avec la main. De sorte qu'il semble que vous tenez réellement l'outil dans votre main au lieu d'avoir simplement l'objet comme celui-ci. Et c'est pourquoi vous avez besoin d'un parent portable ou d'un robot qui serait déjà pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 59. (Tools) Créer un multi-outils personnalisé (Paxel): Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter un objet Paxil personnalisé au jeu. C'est donc bien sûr quelque chose qui est complètement personnalisé et ne nécessite qu' un peu de travail supplémentaire, mais c'est en fait assez facile, toutes choses considérées. Ce que nous allons faire, c'est que nous allons créer un nouveau cours dans notre paquet d'articles personnalisés appelé les packs de mods ou l'article. Et cela va en fait s'étendre car bien sûr, un article Paxil n'existe pas. Cela va étendre l'élément d'outil de minage. Et nous allons juste survoler ce constructeur de création de correspondance super. Et nous allons rendre cela public, nous n'aurons pas besoin ici des blocs efficaces, du paramètre et nous allons également choisir de prendre le paramètre de matériau de l'outil et de le déplacer vers le devant. ici. Et puis l'effet des blocs, n'est-ce pas ? Si nous devions, par exemple, appuyer sur Control H ici et simplement jeter un coup d'œil à l'élément pioche par exemple, vous pouvez voir que cela prend en compte les balises de blocs exploitables pickaxe, qui est exactement ce que nous avons J'ai été juste ici, n'est-ce pas ? Nous avons donc essentiellement ajouté nos blocs pour y mettre fin. Maintenant, Paxil, nous voulions être efficaces sur les numéros de voyage et choisir des blocs X. Comment ferons-nous cela ? Eh bien, nous allons créer une étiquette personnalisée. Donc, dans notre classe fiscale modèle, ce que nous allons faire, c'est que nous allons créer une nouvelle étiquette ici. Il s'agit donc d'une taxe qui nous appartient. Donc, une balise normale crée ici. Et ce sera le soulignement de Paxil qui sera exploitable. Et puis voici des emballages vraiment minables, Lash, Paxil. Et puis cette étiquette va devenir froide ici. Nous allons donc dire des étiquettes modérées, blocs de points, pas de la mandibule Paxil. Et maintenant, nous pouvons utiliser cette classe et cela devrait fonctionner parfaitement. Bien sûr, nous devons encore ajouter cela à nos étiquettes de cours MC. Ainsi, dans notre dossier de blocs, dans le dossier des réservoirs, cliquez avec le bouton droit sur un nouveau répertoire appelé mineable. Puis à l'intérieur de là, cliquez avec le bouton droit sur nouveau fichier, Paxil dark trace. Permettez-moi de copier rapidement celle-ci ici. Donc, à partir du choix X1 et cela va être très intéressant car nous pouvons même mettre des étiquettes différentes ici, donc nous n'avons pas à énumérer toutes les choses qui se trouvent dans les balises exploitables. Ou nous pouvons simplement le faire, c'est que nous pouvons dire hashtag. signifie qu'il s'agit en fait d'une autre étiquette que nous voulons mettre ici. Ensuite, nous disons Minecraft, mineable, lash x. Et ceci, copiez simplement ceci et dites, merci et magasinez. Maintenant, ce que l'article du pack n' aura pas , c'est la fonctionnalité de clic droit. Cependant, c'est quelque chose si vous voulez vraiment ça, qu'il pourrait bien sûr, vous ajouter aussi. Ce ne devrait pas être si fou que ça. En gros, en regardant l'article de la pelle ici, vous pouvez voir qu'il y a des trucs ici. Et l'article aussi, il y a des choses qui ne sont pas trop fous. Cependant, nous allons nous en tenir à cela. Pour l'instant. Nous allons juste copier l'oracle vient épée et nous allons le renommer en oracle come Paxil. Ensuite, la même chose ici aussi. Paxil, les dégâts et la vitesse vont être légèrement réduits. Et puis ce sera un objet de mod packs. Comme vous pouvez le voir, tout fonctionne. Il est très important de modifier les paramètres ici pour qu' ils soient exactement comme ça, alors cela devrait fonctionner parfaitement. Ensuite, nous n'avons besoin que du fichier JSON, d'une traduction aussi. Nous allons donc d'abord faire la traduction. Cela va être très simple. Vous y allez. Ainsi, la traduction et tous les fichiers sont bien sûr disponibles pour vous, les intérêts individuels ou le référentiel GitHub. Et remettons le sol compact Oracle. Et la texture aussi. Ensuite, nous avons à peu près tout ce dont nous avons besoin. Il y a donc, tout a été ajouté 0. Voyons si ça marche. Ou je l'ai trouvé dans Minecraft et comme vous pouvez le voir, c'est le cas. Le Paxil a été ajouté au jeu et il n'a pas fière allure. Donc, nous pouvons le voir essentiellement ici, je peux facilement le miner et je peux aussi facilement le miner. Et il nous reste une certaine humeur, et je peux aussi facilement le mien. Maintenant, une fois de plus, en cliquant avec le bouton droit de la souris, il ne travaille en fait ni pour le chemin ni pour le décapage du bois. Si vous le voulez vraiment, cela ne devrait pas être trop fou à ajouter. Si vous avez des connaissances en Java, je suis sûr que vous y arriverez. Et si c'est vraiment très demandé, je pourrais ajouter une conférence de suivi à ce sujet, si c'est vraiment facile d'ajouter un objet Paxil au jeu. J'espère donc que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Mais je vous verrai lors de la prochaine conférence. Oui. 60. (outils) Faire des armes qui appliquent les effets: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons examiner comment ajouter un effet à une entité lorsque vous le touchez avec un élément spécifique. Et c'est une façon très digne de dire en gros que vous allez ajouter un effet de fusion à une entité. Et la façon dont nous allons le faire, c'est que nous allons créer une nouvelle classe ici. Et ce sera le mod qui suit l'article stocké. À titre d'exemple ici, nous allons simplement étendre la classe d'éléments de tri. Je vais juste survoler cette création, constructeur correspondant super. Et ensuite, nous pourrons tout laisser ici. Et tout comme pour un article normal, il existe des méthodes à remplacer, n'est-ce pas ? Donc je peux mettre une override et vous pouviez voir qu'il était sur le bloc, utiliser comme éclat une pointe d'outil de stylo. Il y a un tas de choses que je peux passer outre et pas de soucis là-bas. Et il existe une méthode spécifique que nous allons remplacer et qui est cool comme la méthode post-hit, qui s'appelle après avoir touché un ennemi ou plutôt après que les dégâts ont été ajoutés. à un ennemi. Et ce que nous pouvons faire, c'est que nous pouvons dire que le statut du point cible affecte une nouvelle instance d' effet de statut. Disons que le statut affecte cette lenteur. Disons quatre secondes au niveau deux. Et puis nous transmettons aussi l'attaquant, ça va être la source parce que nous sommes l'attaquant et la cible est bien sûr celle, qui est frappée comme l'entité qui est être frappé ici. Et maintenant, nous pouvons simplement passer à la classe More Items et simplement changer cela par l'élément de tri MOD ralenti ici. Par exemple, vous n'êtes pas obligé de le faire nécessairement. Vous pouvez également créer un nouvel article, mais nous allons simplement changer la source de calcium. Et je veux dire, c'est à peu près tout. C'est tout ce que nous devons faire. Nous devons remplacer la méthode d'accès du système d'exploitation et ensuite simplement ajouter cet effet d'état à la cible. Et c'est en fait à quel point il est facile d' ajouter un effet sur le coup. Donc, juste pour l'achèvement, voyons si cela fonctionne ou déduit dans Minecraft. Voyons donc si j'ai frappé un mouton. Vous y allez. Le mouton qui était caché a maintenant Sloan tel qu'il est appliqué. Et celui qui a essentiellement été pris entre les feux croisés ne l'a pas appliqué car il n' est appliqué qu'à l'entité directe que vous touchez et qui comprendrait un poisson. Je crois qu'ils allaient probablement mourir après 100 ans. Ils vont mourir. Mais vous avez vu qu'il y avait aussi la lenteur qui s'appliquait à elle. Cependant. C'est plutôt cool, non ? Et c'est déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprend le nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 61. (Armor) Créer un nouvel ensemble de armes de armure: Bon, bienvenue au cours de tissus pour 118 ans. Et dans cette conférence, nous allons ajouter une armure personnalisée à Minecraft. Maintenant, il s'agit d'un exercice qui va être très semblable à l'ajout des outils à Minecraft, très semblable à l'ajout des outils à Minecraft car nous allons avoir besoin d' un matériau blindé dans ce cas plutôt que d'un matériau d'outil. Ce sera la première chose que nous allons faire au lieu du paquet d'éléments, cliquez avec le bouton droit de la souris sur la nouvelle classe Java appelée mod, mod armor materials a 0. Et cela va implémenter l' interface matérielle de l'armure ici. Et encore une fois, nous n'allons pas survoler et implémenter la méthode, mais nous allons cliquer sur le bouton central de la souris dessus, ou plutôt simplement cliquer dessus et appuyer sur Control H pour entrer dans le bras matériaux d'une autre classe. Et encore une fois, nous allons simplement sélectionner en bas ici. Ensuite, maintenez la touche Maj enfoncée et cliquez en haut ici, puis simplement Control C et Control V pour coller. Et ça va être ça. La seule chose que nous devons changer ici, c'est la classe en énumération. Et puis on va prendre le nom de ce cours. Et cela l'a changé ici aussi pour que le constructeur fonctionne correctement. Et nous allons simplement formater cela un peu différemment avec les paramètres ici. Et puis ça va aller bien. Vous pouvez également le formater un peu différemment afin que nous puissions lire les mots écrits ici. Et ici. Encore une fois, nous allons tout supprimer sauf le fer à repasser ici. Et nous allons appeler cela le calcium ORE, bien sûr. Et puis le nom aussi Malcolm. Et encore une fois, on peut jouer un peu avec ça. Nous pouvons bien sûr voir les valeurs nulles ici. C'est donc l'idée générale. Le multiplicateur de durabilité doit être assez explicite. C'est juste le multiplicateur de durabilité. Par exemple, vous pouvez voir que la chaîne est de 15, le fer est 15, diamant est 33, le total de 25 et 37. Je pense donc que c'est un peu comme un 18 qui va être bon pour chaque calcium. Alors voici un tableau int très intéressant. Il s'agit des montants de protection pour chaque pièce d'armure. Ainsi, chaque pièce d'armure a une quantité différente qu'elle vous protège. Et cela va d'ailleurs, de bas en haut. C'est très important. Mais ce sont des bottes, des leggings, des plaques de poitrine. Mais c'est très important. Donc, par exemple, nous pourrions dire quelque chose comme trois, nous allons nous en tenir à la quinquennale 7 et ensuite qui va bien, de sorte que nous allons juste le rendre un peu différent des autres. Par exemple, Goal est également un peu aberrante. Vous pouvez donc bien sûr penser à cela comme vous le souhaitez dans l'agenda, la capacité est à quel point c'est immuable. Je vais aller jusqu'au moment où D5, qui est encore plus que de l'or. Parce que, vous savez, ou un calcium, c'est un fantasme comme ça , je pense que c'est logique. Et puis l'événement sonore, nous allons en fait utiliser l'équipement d'or ici. Donc, l'armure de l'objet, de l'or ici. Est-ce que cela a un peu plus de sens dans mon esprit, nous allons garder la ténacité et la résistance au bec les mêmes. Vous pouvez simplement changer cela et ensuite vous ajouterez de la ténacité et ne choisirez pas résistance à votre armure qui devrait simplement fonctionner et vous n'avez pas besoin de faire autre chose. Et là, bien sûr, au lieu d'avoir tout cela ici, nous voulons juste plus d' items.org, lingot de calcium. Et nous allons simplement rendre cela un peu plus facile à lire. Pas de soucis ici. Donc, on va juste le faire. Et puis, pas de retour. Alors, tu y vas. Et maintenant, c'est très joli. Et encore une fois, bien sûr, si vous voulez avoir plusieurs matériaux d'armure, ils doivent être séparés par des virgules. Et puis bien sûr également nommé différemment , puis se terminent par une largeur de point-virgule. Le dernier, c'est juste une idée générale ici. Et si nous regardons cela rapidement, vous verrez que nous avons cette année d'enquête, la durabilité de base. Il s'agit de la durabilité de base de chacune des différentes pièces d'armure. Et ensuite, cela se multiplie par le multiplicateur de durabilité. Vous pouvez le voir ici. Nous avons donc le multiplicateur de durabilité ici. En obtenant la durabilité, vous obtenez simplement la durabilité de la base en fonction la fente, puis des temps avec le multiplicateur de durabilité. C'est l'idée générale ici. Ces chiffres, bien sûr, vous pouvez également modifier si vous le vouliez vraiment. On va s'en tenir à ça pour le moment. Tout va bien se passer. En ce moment, la classe votre mari a créée pour que nous puissions passer à la classe plus d'objets et commencer à créer notre armure. Nous allons donc faire passer un élément Oracle en premier. Et puis, ici aussi , un casque de calcium , bien sûr, il y a. Et il va s' agir d'une armure. Et vous verrez que la première fente ici sera le mod armor materials.org calcium. Et puis, en fait, il n' a que trois paramètres. Le second est la tête de point de fente de l' équipement, et les réglages ici sont corrects. Nous allons donc le copier quatre fois. Et puis on va avoir la plaque d'échecs de l'école. Cette plaque et c'est votre coffre de fente d'équipement. Il est très important que nous changions cela également. Sinon, bien sûr, nous pourrions ajouter cela au mauvais emplacement, ce qui n'est pas quelque chose que nous voulons. Nous allons aussi faire des leggings ici. Et encore ici les jambes. Il y a, puis le dernier, mais non le moindre, ce sont les bottes. Et ensuite, les bottes ici aussi. Et c'est bien sûr, les pieds. Vous y allez. Et maintenant, les quatre pièces d' armure ont été enregistrées correctement avec notre matériau de calcium. Et maintenant, nous avons juste besoin d' ajouter le modèle d'article, Jason et bien sûr ici la traduction très importante. C'est là. Bien sûr, tout cela est également disponible dans le référentiel GitHub ou un individu s'ajuste également, de sorte que vous n'avez pas à tout taper. Vous pouvez également copier cela. Encore une fois, la plupart des choses lorsque vous l'avez fait une fois, vous pouvez également en copier une grande partie dans votre propre projet, je vous recommande vivement de le faire. La plupart de ces modèles d'articles vont être très, très similaires. Donc, entre eux, ils sont tous orange à une taxe qui est littéralement tout ce qu'il y a à faire. Nous allons également ajouter les fichiers de texture. là que tu y vas. Et puis une autre chose, qui est très importante, c'est que nous allons réellement avoir besoin de l'aspect 3D de la texture. Et cela se fait en fait dans le dossier Minecraft. Nous allons devoir créer un nouveau dossier dans notre dossier de ressources, cliquer avec le bouton droit sur un nouveau répertoire pour Minecraft. Si peu de jeu, peut-être que vous en avez déjà entendu parler. Je l'ai déjà fait, lâchez n'importe quoi. Cliquez avec le bouton droit sur les textures du dossier micro-ondes. Et puis à l'intérieur de là, cliquez à nouveau avec le bouton droit sur le nouveau répertoire appelé modèles. Et puis une fois de plus, cliquez avec le bouton droit sur le répertoire appelé armure. Ceci est écrit uniquement avec un OH, donc c'est l'orthographe américaine. Et ensuite, nous allons mettre deux dossiers, mais ce sont les dossiers d'armure. C'est ainsi que l' armure réelle que nous allons regarder en 3D et nous devrions être en mesure 3D et nous devrions être en mesure d'y jeter un coup d'œil si nous allons les bibliothèques externes pour ici dans les ressources, Minecraft, les textures dans les modèles , armure. Et puis vous pouvez voir que c' est à quoi ça ressemble. Il s'agit donc de la couche de fer, par exemple la couche 1 et la deuxième couche. Ainsi, vous pourriez aussi, au fait, copier ceux-ci, finir un peu et ensuite les avoir aussi. Ce qui est très important pour eux, c'est que le nom ici doit être exactement la bonne chose. C'est très important. Donc, lorsque vous avez le nom qui est donné ici à l'intérieur de vos matériaux d'armure, ce nom doit correspondre exactement à ce nom. calque de soulignement souligne l' un puis l'autre, calque de soulignement deux, très important, qui ne peut être aucun espace entre les deux. ne peut y avoir de parenthèses 1 car vous l'avez copié et nous aurons le même nom et rien de tout cela. Ce doit être exactement cela sous le Minecraft, les textures, les modèles, le répertoire des armures, très important. Assurez-vous que c'est correct. Mais une fois que vous vous êtes assuré que tout est correct, voyons si cela fonctionne ou s'il s'agit de microgreens backend de première classe. Vous pouvez voir que l' armure a été ajoutée et elle a l'air incroyable. Voyons donc à quoi ça ressemble quand je l'ai mis. Et voilà, prêt à aller au combat. Et c'est en fait à quel point il est facile d'ajouter l'armure à Minecraft où que ce soit déjà pour cette conférence ici, j'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau. Bien sûr, tout est disponible pour vous dans le référentiel GitHub ou un individu, y compris uniquement les textures, veuillez noter le fichier des créanciers, vous voyez sous quelle licence ou des textures ont été distribuées. Merci beaucoup, mais quel que soit le cas, je vous verrai lors de la prochaine conférence. Donc, oui. 62. (Armor) Faire un effet de armure complet: Très bien, bienvenue au cours de tissus pour 118. Et dans cette conférence, nous allons examiner comment implémenter un effet d'armure complet ou votre carte. Maintenant, qu'est-ce que cela signifie, l' effet armure complète signifiera essentiellement que vous obtiendrez un effet de statut appliqué à votre personnage lorsque vous portez une combinaison complète d' un matériau d'armure particulier. Et la façon dont cela fonctionnera est dans le package personnalisé ici, je vais cliquer avec le bouton droit de la souris sur la nouvelle classe Java. Et ça va s' appeler l'objet d'armure mod. Et cela va étendre l'armure plus. Et je vais en fait copier l' intégralité de cette classe. Ceci est disponible une fois de plus dans le référentiel GitHub ou dans la version juste. Et nous allons passer par là, comme si je vais tout expliquer au fur et à mesure que nous traversons cela. Alors, nous avons juste plus de matériaux d'armure, votre .org, de calcium il y a, et ça devrait fonctionner, non ? Alors, que se passe-t-il ici ? Eh bien, la première chose que vous pouvez voir, c'est que nous avons un champ, un champ final statique privé ou le matériau à affecter la carte. Maintenant, cette carte mappe un matériau blindé à un effet de statut spécifique. Ok, c'est assez juste. Cela signifie donc que si vous avez cette armure particulière, qui contient ce matériau , cet effet vous est appliqué. Maintenant, la raison pour laquelle nous utilisons une instance d'effet d'état est que l'instance ou enregistre également la durée et l'amplificateur. Et nous pouvons fondamentalement changer cela individuellement. , nous n'allons jamais utiliser cette instance particulière fait, nous n'allons jamais utiliser cette instance particulière. Ici, nous créons une nouvelle instance avec les mêmes valeurs que celles de cette instance, car sinon elle ne fonctionnerait pas réellement. Parce qu'une fois qu'une instance ici est épuisée, vous ne pouvez plus l'utiliser. Mais c'est juste pour les gens qui auraient déjà sauté et ont été comme, attendez, ça ne fonctionne pas. C'est tout à fait très bien. En fait, ça va marcher. Vous le verrez, et cette année ne contient bien sûr qu'un seul élément d' armure, mais en fait très facile à ajouter un autre. Nous allons simplement prendre ce pied ici et le mettre une fois de plus. Vous pouvez donc voir que c'est vraiment facile. Il est instance d'effet de statut Je recommande fortement de toujours dépasser 200 ou la durée de la coche ici. Parce que si l'effet de votre phrase commence à s'épuiser à dix secondes , il va commencer à clignoter. Et cela signifie essentiellement parce que cela est appliqué à chaque fois encore et encore, qu'il clignotera constamment dans le coin supérieur droit et cela peut être très gênant. Il y a aussi un intérêt à dire : peut-être qu'une fois l' armure enlevée, chaque effet ou cet effet particulier devrait être supprimé. Il y a un intérêt à faire cela. Nous n'allons pas le faire dans cet exemple. Comme s'il y avait un peu de limitation dans cet exemple, mais je suis sûr que tout va bien se passer. Alors, que se passe-t-il alors ? Eh bien, nous remplaçons la méthode de tick d' inventaire, appelée chaque tick. Si cet article particulier ou l'un de ces articles se trouve dans l' inventaire, nous allons tout d'abord vérifier si nous sommes sur le serveur parce que nous voulions être sur le serveur pour cela. Et nous nous assurons que quelle que soit l'entité a cela dans son inventaire est réellement un joueur. C'est le cas, alors nous pouvons être sûrs que nous pouvons lancer l' entité à un joueur. Et ensuite, nous allons vérifier, hé, est-ce que ce joueur a une armure complète ? C'est donc une méthode que j'ai faite ici où nous obtenons toutes les différentes piles d' armures et nous assurons qu' aucune d'entre elles n'est vide. En gros, en disant : Hé, si le joueur a une armure complète, pour le moment, moment, nous ne vérifions pas le matériel, juste que chacune des fentes d'armure est réellement remplie. Et si c'est le cas , nous allons continuer à évaluer les effets d'armure. Et à l'intérieur d'ici, nous parcourons essentiellement tout le matériau pour affecter la carte et simplement obtenir à la fois l' instance d'effet d'état de l' entité de matériau d'armure qui se trouve à l'intérieur de la carte. Et puis nous allons vérifier, hé, est-ce que le joueur a réellement l'effet d'armure , c'est-à-dire maintenant que nous recherchons essentiellement. Il y a bien sûr une boucle for qui va passer. Si nous en avions huit, alors nous allons passer par et ça va être comme, Hé, est-ce que le joueur a cette armure, est-ce que les propriétaires de matériel d'armure ont ce matériel, est-ce qu'ils avez-vous ce matériau d'armure ? Et seulement si le matériau de chaque plastron de casque en retard dans les bottes correspond réellement. Ce n'est qu'alors que nous allons ajouter l'effet de statut pour l'armure particulière ici ? Et juste pour que nous l'ayons, encore une fois, nous sommes en train de vérifier cela. Encore une fois, ce n'est pas strictement nécessaire ici. Ce qui est cependant strictement nécessaire pour ce faire hautement recommandé, c'est l'effet de joueur booléen que j'ai essentiellement mis ici. Et l'idée ici est que cela ne s'ajoute que si le joueur n'a plus l'effet. Sinon, cela serait ajouté chaque coche 20 fois par seconde. Et le fait de traverser tout cela 20 fois par seconde pourrait ralentir considérablement le jeu. Par conséquent, c'est une idée très intelligente qui ne fait pas cela et arrête absolument cela ici. Ajout également de l'effet plusieurs fois. Ce n'est tout simplement pas une bonne idée. Et vous pouvez voir ici que nous sommes en train de créer une nouvelle instance d' effet avec le type d'effet, la durée et l'amplificateur de l'instance d' effet de statut réelle que nous avons définie ici. C'est donc ce que j'ai dit. En fait, nous n'allons jamais utiliser cette instance en soi. Nous obtenons simplement l'amplificateur de durée et l'effet là-bas. Et puis il y a quelque chose qui est possible que vous n'avez pas nécessairement besoin de mettre en œuvre. Et c'est ici. Je l'ai, de sorte qu'il y a 40 pour cent de chances d'endommager l'armure à chaque fois qu'un effet est appliqué. Maintenant, vous n'avez pas besoin de le faire. Je peux donc aussi simplement décommenter ces trois lignes et tout ira bien aussi. Je voulais simplement ajouter cela aussi, juste si certaines personnes se demandent cela qu'elles ne peuvent le faire. D'où avons-nous obtenu ce code ? Eh bien, la plupart de cela ne sont que des connaissances Java avec un peu de connaissances modernes mélangées. Et c'est quelque chose que vous pouvez faire une fois que vous comprenez plus intuitivement Java et la modélisation, puis combiner les deux, puis créer quelque chose de personnalisé comme celui-ci. Je ne dirais pas assez facilement, mais sans trop de tracas. Cela revient donc vraiment à connaître Java. C'est donc comme un autre appel pour vous que, vous savez, surtout dans les conférences à venir, surtout lorsque nous passons essentiellement de la section des outils et des armures aux concepts intermédiaires, nous sommes va vraiment reprendre avec la compréhension inhérente dont vous aurez besoin pour Java. Mais ne soyons pas trop fous avec ce préambule ici. Débarrassons-nous de ces deux importations. Et ce que je vais faire, c'est que je vais aller à la classe More Items. Et en général, je ne fabrique que le casque, l'élément d'armure mode. Vous n'avez pas besoin de tout mettre dans plus d'armure dans un ensemble de matériaux d'honneur mod. Il suffit d'en mettre un. Je choisis personnellement le casque parce que je pense que le casque est le plus logique de faire attention au reste de la poitrine. Mais cela peut aussi avoir du sens, mais ce que vous préférez, bien sûr, mais seulement un pour chaque ensemble de matériaux. Très important, non ? Et c'est en fait tout ce que nous devons faire. Voyons donc si cela fonctionne ou s'il s' agit d'un Minecraft. Et comme vous pouvez le constater, j'ai déjà le vol de brume pour moi parce que je porte bien sûr l'armure complète. Et c'est plutôt cool. C'est donc Haze aussi parce que nous avons mis l'amplificateur à un seul. Permettez-moi de mettre rapidement le casque pour que nous puissions voir que cela va disparaître. Ils ont disparu il y a longtemps. Et cette brume à, parce que l'amplificateur est essentiellement un amplificateur additif, non ? Donc, si je n'avais rien là-dedans, ce serait hâte, amplificateur d'un, phase deux, et un feu d'employeur des trois d'aujourd'hui , assez simple. Et vous pouvez voir, même si j'ai le reste ici, tant que je n' ai pas le casque, cela ne fonctionne pas et dès que je l'ai mis sur l'ego, bien sûr, ça arrive dès que je prends le Armure désactivée, la hâte persiste. C'est quelque chose que vous pouvez, par exemple, ajouter si vous le souhaitez. C'est une fonctionnalité que vous pouvez faire, n'est-ce pas ? Une chose rapide qui est très importante. Cet objectif ici ne fonctionnera pas, mais c'est une autre limite c'est que cela ne fonctionne bien sûr pas parce que nous n'avons pas de matériel d' armure MOD là-dedans à ce moment-là. Donc, en fait, cela ne va pas marcher. Cela ne fonctionne donc qu'avec matériaux d'armure en mode personnalisé pour le moment, qui que ce soit, peut-être que dans le futur, je mettrai à jour cette classe et il pourrait avoir qu' il pourrait avoir cette fonctionnalité également. Qui sait, n'est-ce pas ? Mais quel que soit le cas, c'est tout pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 63. (Armor) Créer un armure de chevaux personnalisés: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter armures de cheval personnalisées, avoir Minecraft. Maintenant, l'armure de cheval personnalisée est en fait une chose très intéressante car il y a un petit rebondissement que nous devons garder à l'esprit. Alors ouvrons la classe plus d'objets, et copions simplement les bottes de gomme Oracle. Et cela va être renommé pour inquiéter CAL come horse, souligner l'armure. Et puis la même chose dans le nom ici, ou une armure de soulignement, et il s'agit d'une armure de cheval. Maintenant, cela prend également trois paramètres. Le premier est le bonus, donc c'est le bonus arabe que le cheval reçoit. Et la seconde est une ficelle. C'est le nom de l'armure de cheval réelle, qui va être important car ce nom doit correspondre au nom du fichier. Donc, si nous avons réellement le bouton central de la souris, cliquez dessus. Vous pouvez voir qu'il s' agit de la recherche de la texture sous l' entité textures, des armures de cheval, soulignements d'armure de cheval, des traits de soulignement, soulignement d' armure, quel que soit le nom que nous avons mis en paramètre ici. Maintenant, cela doit encore être placé sous l'espace de noms Minecraft, mais pas de soucis, nous allons le faire. Nous allons voir cela dans un instant. Et si je clique sur le bouton central de la souris, à droite. C'est donc l'idée générale ici. Et c'est à peu près tout ce que vous devez vraiment savoir. Ce qui est très important, c'est que le bonus ici. Donc, pour que vous ayez quelques valeurs de comparaison, le fer a cinq bonus, l'armure du cheval d'or a sept bonus et l'armure de cheval en diamant a 11 planches avec 15. L'armure de cheval en calcium est en fait très, très résistante. Mais bien sûr, encore une fois, les chiffres peuvent être modifiés comme vous le souhaitez. Allons tout d'abord dans le E et soulignons fichier adjacent et ajoutons la traduction. Vous y allez. Tous les fichiers JSON et tout cela sont également disponibles dans le référentiel GitHub ou centres d'intérêt individuels. Parce que nous allons copier encore une fois sur le modèle d' élément, car bien sûr, il s'agit simplement d' une texture normale dans le dossier des textures. Donc, rien d'une année folle, c'est l'objet réel. Il est affiché dans l'inventaire. Et puis, une fois de plus, l'armure 3D doit entrer dans le dossier Minecraft, mais pas de soucis du tout. Dans le dossier textures, nous allons créer un nouveau dossier ou répertoire appelé entité. Et puis à l'intérieur de là, cliquez avec le bouton droit sur le nouveau répertoire pour cheval. À l'intérieur de là, cliquez avec le bouton droit sur un nouveau répertoire appelé armure , une fois de plus, uniquement avec un O, donc l'orthographe américaine. Ensuite, nous allons copier le fichier ici, ou c'est une armure de soulignement sous une vis ou un calcium. Encore une fois, le nom ici doit correspondre à ce nom ici, puis il sera affiché correctement 0. Maintenant, voyons pour les travaux ou que j'ai trouvé comme une microtendance peut le voir, l'armure de cheval a été ajoutée avec succès au jeu, comme la chance l'aurait fait. Nous avons un cheval apprivoisé juste à côté de nous. Voyons donc voir. Et voilà, l'armure de cheval dans toute sa beauté, l'oracle vient l'armure de cheval. C'est vraiment génial si je le dis moi-même. Rubber, c'est déjà ça pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez de nouvelles choses, et je vous verrai lors de la prochaine conférence. Donc, oui. 64. (Armor) Ajouter un Enchantment personnalisé: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons jeter un coup d'œil à la façon dont vous pouvez ajouter des enchantements personnalisés, qui Minecraft. Pour cela, nous allons entrer dans notre forfait de cours MC. Cliquez avec le bouton droit sur un nouveau package appelé enchantement. Et là, nous avons besoin de deux classes différentes. Le premier sera le mode enchantements. Et le second sera l' enchantement de la foudre. C'est l'enchantement réel que nous allons mettre en œuvre. Et l'autre consiste essentiellement à enregistrer les Enchantements. Mais ce que nous allons faire, c'est que nous allons étendre cela par la classe Chen ici, reconstructeur correspondant au précité. Et nous allons changer cela en public. Et il est très important que nous changions le tableau ici, les trois points. Cela nous permet simplement de passer plusieurs emplacements d'équipement à la toute fin et ils sont ensuite convertis automatiquement en zones. Maintenant, la classe enchantement dispose en fait nombreuses méthodes que vous pouvez remplacer qui que ce soit pour nous, la première chose est, tout d'abord, la méthode de niveau GetMax, ce qui est très important parce que nous J'ai vraiment besoin de revenir ici. Ainsi, la méthode de niveau GetMax renvoie le nombre de livres générés et nombre de niveaux de cet enchantement. Il est donc très important d' écraser les livres en passant, vous êtes généré automatiquement, sorte que vous n'ayez rien à faire pour cela. Ce niveau signifie essentiellement que ce niveau définit essentiellement le nombre de personnes qui seront générées. Et maintenant, que va faire cet enchantement ? Eh bien, quand nous avons cet enchantement sur notre arme. Ce que nous allons faire, c'est que nous allons créer un éclaircissement s'il s'agit éclairs de niveau 1 et 2 si c'est le niveau 2. La méthode à remplacer est donc la méthode endommagée par la cible. Et ce que nous allons dire tout d'abord c'est que nous allons dire si l'utilisateur dot world est client, très important ici avec un point d'exclamation au plan étant que nous voulions être sur le serveur. Ensuite, on peut dire le monde des serveurs. Le monde est égal au monde de points utilisateur qui diffuse. Et puis généralement, lorsque vous commandez terminé pour le monde des serveurs, il est généralement que vous avez aussi cela, suggère que N là-dedans est déjà. Ensuite, nous pouvons également dire que couche d'entité du joueur est égale à la distribution de points de l'utilisateur. Encore une fois, appuyez sur la touche de tabulation compléter automatiquement, puis insérez l'entité joueur ici. Et c'est très bien. Nous allons également obtenir les chemins de blocs, qui est la position égale au point cible, à obtenir une position bloquée ou à des billets de blog. Cliquons dessus et appuyez sur Alt et Entrée pour l'importer. Ensuite, nous devons vérifier le niveau. Vous pouvez voir que le niveau ici est donné en paramètre. C'est donc le niveau de l'enchantement réel. Et une autre grande question est de savoir comment créer un éclaircissement ? En fait, c'est assez facile. Nous allons dire que des éclairs à points de type entité apparaissent avec le monde. Null ici, et null pour le nom, le paramètre du joueur, la position, puis raison qui a déclenché la règle et true. Et c'est à peu près tout ce que nous devons faire ici pour engendrer un éclaircissement. En passant, cela fonctionne pour n'importe quel type d'entité. Vous pouvez donc remplacer cet éclair par un cochon, par exemple, et il devrait tout de même apparaître à ce moment-là. Ce serait donc bien sûr très intéressant. Ce serait l'enchantement du frappeur de cochon. Mais c'est bien sûr maintenant ce que nous allons mettre en œuvre en ce moment. Nous voulions la foudre ou l'enchantement. Ensuite, nous allons juste dire si le niveau est égal à deux et que nous allons juste apparaître sur les doublures. C'est donc à peu près tout ce que nous devons vraiment faire ici. Et c'est le cours d'enchantement qui a été fait. Passons maintenant à la classe des champions modernes. Et à l'intérieur d'ici, nous allons avoir deux méthodes que nous devons définir. L'un d'eux est le vide statique public appelé Shetland en mode registre. Et cela sera appelé plus tard dans la classe de mod du cours MC. Cela va encore une fois simplement systématiquement sortir la ligne d'impression enregistrant les enchantements de mod, les enchantements de mod. Pour les cœurs MC mod, mod ID. Ensuite, nous avons besoin d'un enchantement statique privé qui s'inscrira avec un nom de chaîne et un enchantement placé dans les Shetland. Et cela retournera simplement les données du registre, l' enregistrement, le point de registre Pentland avec un nouvel identifiant de MC cours mod ID, un nom. Et puis, après les premières parenthèses, comme dans les Enchantements, périmètre et l'ego, cela enregistrera l'enchantement. Cela ressemble beaucoup à la façon dont nous l'avons fait dans la classe more items ou dans la classe des blocs moteurs. Et ensuite, nous ferons les enchantements. Il s'agit donc d'un marqueur d'enchantement statique public ou de soulignement éclaircissant, qui est égal à la méthode du registre. Le nom ici est le soulignement éclaircissant les munitions d'attaquant, puis une nouvelle frappe éclaircissante ou enchantement. Donc, celui-là, ici. Et puis nous pouvons passer dans l'enchantement cette rareté rare. Par exemple, la cible d' enchantement des virgules va être une arme exactement celle-ci. Et puis la fente d'équipement va être la main principale. Et puis on met fin à ça et c'est là. C'est donc tout ce qu'il y a à faire. L'un des coins, bien sûr, disponible dans le référentiel GitHub ou dans les ajustements individuels. Et c'est en fait l' enchantement déjà fait. Nous n'avons plus qu'à nous appeler dans le cours MC, multi-classes. Donc, ici, d'autres enchantements enregistrent les envois modernes. C'est vraiment très important si cela n'y est pas ajouté, cela ne fonctionne pas. C'est très, très important. Et puis il y a une autre chose dans l'oreille et nous soulignez le fichier JSON. Nous allons également ajouter en bas ici la traduction. C'est donc l'enchantement et foudre de MC cours souligne Stryker. Et c'est bien sûr, un disjoncteur éclaircissant, très important. Nous n'avons besoin que d'une de ces traductions ici. Vous pouvez donc voir ceci et ceci pour chacun des niveaux, nous n'avons besoin de traduire cela qu'une seule fois. Et ensuite, il se traduira à tous les niveaux des Enchantements. Mais, après avoir ajouté tout cela, voyons si cela fonctionne. Ou sommes-nous des fans de la microfinance, vous pouvez voir la foudre ou Chairman a été ajouté avec succès. Ajoutons-le simplement à l'oracle ou ici. Un pour le premier , puis pour le second. Bon, essayons ça sur ces moutons. Voyons donc. Et voilà. Cela a vraiment fonctionné. Et nous allons faire l'autre. Mais cela va essentiellement sur les éclairs. Ce n'est pas trop perceptible, mais ça marche. Vous pouvez voir que vous y allez et faire l'autre, cela endommage un peu plus. Mais par exemple, pour les moutons, ils vont mourir d'une façon ou d'une autre. Ce n'est donc pas si perceptible. Oui, le traitement fonctionne. C'est plutôt cool, non ? Et c'est déjà pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. S'il le faisait, j' apprécierais beaucoup une critique de votre part. Sinon, je vous verrai lors de la prochaine conférence. Donc, oui. 65. Propriétés de bloc (intermédiaires): Ou je me réjouis de revenir au cours de tissus pour 118 ans. Et dans cette conférence, nous allons examiner les propriétés de l'état des blocs. Les propriétés de l'état de blocage sont quelque chose que nous avons déjà vu précédemment. Et c'était dans la porte, les escaliers et tous ces blocs non bloqués, à savoir dans les fichiers JSON pour les états du bloc ici. Par exemple, si nous jetons un coup d'œil à la porte, il agissait ici des propriétés de l'état de bloc dans. Nous allons maintenant jeter un coup d'œil à un exemple. Mais tout d'abord, nous allons passer en revue un peu la théorie. Et pour cela, nous allons sortir des diapositives PowerPoint. Bien sûr. La première distinction que nous devons faire est entre un état bloc et un état de bloc. C'est très important car le bloc est en fait un type de motif singleton. Cela signifie donc que dans notre classe de boîtes aux lettres, ou pour la vanille dans la classe blocs, chaque champ de bloc est créé une fois pour chacun des blocs. Par conséquent, il s'agit d'une sorte de motif singleton. Votre question découle de savoir comment, par exemple, ce que nous sauvegardons un bloc à l'intérieur du monde ? Eh bien, nous le faisons avec les États du Bloc. Et ce sont essentiellement des exemples d' un bloc particulier à l'intérieur du monde. Ils disent, par exemple, la position du bloc, la propriété bloc. Ce serait donc le comportement que nous transmettons au bloc que nous avons créé et aux propriétés de l'état du bloc. Mais c'est l' essentiel que nous allons examiner dans les diapositives suivantes. Et l'idée est que les états de blocs sont essentiellement sauvés par le monde et qu'ils ne peuvent être modifiés que par le monde. Et cela se fait, par exemple, effectuant l' état de bloc de points de points mondiaux , puis en transmettant certains paramètres. Passons maintenant à l'idée du bloc, par exemple des propriétés ou de la façon de stocker des données dans des blocs. Maintenant, une sorte de deuxième titre ici n'est pas tout à fait juste, mais c'est assez juste. Nous avons donc ici un exemple de classe publique, Redstone ou bloc. Et vous pouvez voir qu'il possède une propriété booléenne appelée lit. Et cette année, c'est exactement le bloc dit propriété. Nous définissons cela dans la classe de blocs. Au début, vous pourriez être comme, c'est un peu bizarre, n'est-ce pas ? Cependant, il s'agit ici d'un rendement spécifique. C'est pourquoi nous ne pouvons pas utiliser uniquement un booléen à l'intérieur de la classe de blocs. La classe de blocs n'existe-t-elle qu'une seule fois ? Ainsi, le champ booléen, si vous n'avez qu'un champ booléen, il serait en fait modifié pour chaque état de bloc à l'intérieur du monde pour ce bloc. Et bien sûr, ce n'est pas tout à fait juste parce si un bloc spécifique ou un bloc intérieur du monde est allumé, est indépendant des autres ou blocs sauf s'ils peuvent être à côté de l'autre. C'est complètement différent. Vous pouvez donc voir que nous devons appeler la méthode append properties et que nous devons fondamentalement la remplacer et ajouter toutes nos propriétés au constructeur ici. Et cela fait tout le poids lourd pour nous. La propriété a toujours une valeur très importante. Il ne peut donc pas être nul. bloc peut avoir plusieurs propriétés différentes. Nous l'avons également vu dans la porte, par exemple. Ensuite, la propriété d'état de bloc que j'ai utilisée pour faire référence à différents modèles à l'intérieur du bloc indique Jason ou un bloc, comme le bloc d'escaliers reste Jason ou comme nous avons vu la situation de porte Brock également. Et c'est là la différence ici. Donc si LET est faux, alors ça ressemble à ceci et j'ai allumé c'est vrai, alors ça ressemble à ceci. Et nous changeons l'état du bloc. Eh bien, nous pouvons juste appeler le, eh bien, nous devons juste avoir la variable mondiale ici quelque part. Ensuite, nous avons défini l'état du bloc à une position particulière avec le nouvel état. Et puis cette année n' est qu'un drapeau, qui informe tous les voisins de toutes les manières qu'ils doivent être avisés pour n. Oui, c'est à peu près l'idée que nous changeons une boîte qui Ça se passe dans le monde, non ? Et cela se produit également sur le serveur. C'est donc aussi très important. Et nous passons dans la position, c'est la position de l'état de bloc réel et paramètre socket est le nouvel état ou cette position de bloc. Et puis le troisième paramètre, comme je l'ai dit, est juste le comportement à la traîne, c'est simplement mettre à jour les voisins et autres. Cette présentation et la fiche de triche sont bien sûr disponibles pour téléchargement. Mais revenons maintenant à l' intelligence et à sa touche Maj deux fois et commençons à taper un Redstone ou un bloc. Et si vous avez cela, cette année et ensuite nous pourrons entrer dans le bloc lui-même et vous verrez que c'est exactement ici, non ? Donc, propriété booléenne finale statique publique appelée lit. Et c'est tout à fait juste. Et si nous descendons ici, nous pouvons voir que cette année, le monde a défini chemins d'état de blocs et ensuite, c'est l'état allumé. Et maintenant, c'est vrai. Ces trois éléments sont à peu près exactement les mêmes que ceux que nous avons observés. Vous pouvez faire trois ou autre chose là-dedans. Nous n'allons pas trop nous inquiéter du comportement de mise à jour à nos fins. 3, on va toujours en utiliser trois, non ? Je recommande donc fortement de jeter un coup d'œil au Redstone ou à la classe, car c'est probablement l'un des exemples les plus faciles à examiner. Mais pour le moment, nous allons maintenant créer notre propre bloc personnalisé. Donc, avec une propriété d'état de bloc client. Et pour cela, nous allons entrer dans notre package personnalisé, cliquez avec le bouton droit sur la nouvelle classe Java. Et ce sera le bloc de lampe Oracle come que nous allons fabriquer une lampe. Et cela va étendre la classe des blocs. Bien sûr, je veux dire, survoyons créer, constructeur correspondant super. Et puis en haut, nous allons ajouter une propriété booléenne finale statique publique à partir de la propriété net microstate. Et nous allons appeler cela cliqué, ce qui est égal à Boolean property.gov. Ensuite, un paramètre de chaîne a cliqué. Donc, j'appelle ça cliqué. Ce n'est pas la même chose que LET. Nous pourrions bien sûr aussi appeler la fente ou la fente ou quelque chose comme ça. Mais cliqué va bien se passer. Parce que ce que nous pouvons faire, c'est que nous allons pouvoir cliquer avec le bouton droit sur ce bloc, puis l' activer et le désactiver. C'est donc l'idée générale ici. Et bien sûr, tout d'abord, nous devons appeler la méthode append properties ou la remplacer. Et c'est en fait aussi simple que d' ajouter un point de constructeur , puis d'y ajouter la propriété click. Si vous avez plusieurs propriétés, vous pouvez simplement les séparer par virgules, puis les ajouter également. Bien sûr, cela n'a aucun sens car l' ajout deux fois de la même propriété n'a pas de sens. Mais si vous en aviez un autre, vous pourriez simplement ajouter cela là-dedans. Une autre chose que nous allons faire, c'est que nous allons dire cet état de bloc par défaut de jeu de points, ce point obtient l'état de bloc par défaut avec des trous léchés. Et ceci, ce que cela fait, c'est que quel que soit l' état de bloc par défaut de ce bloc réel, une fois que nous l'avons défini pour la première fois, nous allons nous assurer que la propriété clip est toujours fausse à cette fois-ci. C'est juste l'idée générale. Et ensuite, nous allons remplacer la méthode d'utilisation propre ici. Nous allons retourner le résultat réel comme un seul avec cela un peu plus agréable. Ensuite, nous vérifierons tout d'abord que nous ne sommes pas sur le client. Une fois de plus, cela permet de voir la marque de formation ici ou non sur le client. Et nous voulons que la main soit et les mains principales. Cela n'est donc appelé qu'une seule fois. On a cliqué sur un booléen à New York. Et ça va être l'état point get et ensuite cliqué comme ça. Et ici, bien sûr, vous pouvez voir que nous avons déjà obtenu le statut. Il s'agit donc de l'état de bloc réel sur lequel nous avons cliqué avec le bouton droit de la souris et nous allons simplement obtenir la valeur de la propriété booléenne cliquée sur l'état sur lequel nous venons de cliquer avec le bouton droit de la souris. Mais c'est l'idée générale. Et puis nous allons dire que l'état du bloc du monde défini à la position sur laquelle nous avons cliqué avec la largeur du point de l'état a été léchée. Et ensuite, nous faisons simplement un VAP. Donc, un cours de virgule qui est très important en fait. Alors, tu y vas. Définissez donc à nouveau l'état de verrouillage à cette position, à une position particulière. Ensuite, avec l'état, la variable cliquée étant l'opposé de ce qu'elle était auparavant. Et ensuite, nous ne faisons que mettre à jour tous les voisins. Et c'est, je sais que c'est assez fou, tout ce que nous devons faire ici. Bien sûr, si vous avez des blocs et des blocs plus compliqués, cela que vous vouliez implémenter. Eh bien, c'est juste une question d' essayer un tas de choses, définitivement. Et puis aussi un tas de connaissances Java aide certainement ici. Donc, si nous avons réellement le bouton central de la souris, cliquez sur la propriété booléenne, puis accédez à la propriété ici, appuyez sur Contrôle H. Nous pouvons voir qu'il y a propriétés booléennes dans les propriétés ainsi que les propriétés de l'enum. s'agit donc essentiellement des trois grandes valeurs ou types de propriétés d'état de bloc que vous pouvez mettre dans un bloc. Je recommande vivement également de jeter un coup d' œil aux autres blocs de vanille et à la façon dont ils le font. Mais continuons et faisons enregistrer le bloc pour cela. Prenons juste le bâton dans la clôture juste ici. Et ce sera bien sûr la lampe au calcium. Et, ou encore une lampe calcanéenne ici aussi. Et il s'agit d'un bloc de lampe neuf ou d'une lampe. L'ego. Et le reste peut en fait rester. Mais je voulais ajouter une autre chose à cela. Et ce sera essentiellement après les outils requis ici, je veux ajouter la luminance ici. Et il s'agit essentiellement d'une fonction a et C, a à Int avec un état de bloc. Qu'est-ce que c'est maintenant ? Cela semble très compliqué. Ce n'est pas le cas en fait. Donc, on va juste prendre ça et je vais le formater comme ça. Et l'idée générale est que ce n'est qu'un battage médiatique, vous pouvez le considérer comme un fournisseur, n'est-ce pas ? Alors rappelez-vous, c'était ça, puis retournez quelque chose. Cependant, dans ce cas, nous écrivons quelque chose entre parenthèses et c' est juste l'état ici. Et puis nous pouvons faire un point d'état, obtenir le résultat, le bloc de lampe de résultat. Et nous avons une faute de frappe ici, pas de soucis. Donc, si jamais vous avez une faute de frappe, vous pouvez simplement appuyer sur Maj F6 et vous pouvez la modifier. Et puis on change ça en lampe à calcium déjà. Heureusement, tu y vas. Et puis nous pouvons le passer ici aussi, ou il peut atterrir sur un bloc cliqué. Ensuite, nous allons dire point d' interrogation 15, Pologne 0. Qu'est-ce que cela fait maintenant ? Que se passe-t-il ici ? Certains d'entre vous pourraient dire que c'est absolument fou. En fait, ce n'est pas si fou que ça. Ainsi, la luminance prend une fonction to Int de l'état de bloc comme vous pouvez le voir. Et l'idée générale ici est que les deux int fonctionnent, n'est-ce pas ? Ici, nous n' obtenons rien. Alors, qu'est-ce que c'est ? Eh bien, c'est simplement un, il faut qu'un entier soit renvoyé et nous passons dans un état de bloc ici. C'est à peu près tout ce que nous avons vraiment besoin de savoir un an. Nous avons donc un état de bloc que nous pouvons utiliser, puis nous devons retourner un entier. C'est donc à peu près la même si je devais écrire quelque chose comme ça, non ? Donc, et puis je dis « état de bloc », c'est à peu près la même chose. Nous retournons un entier et nous passons dans un bloc sit. Maintenant, cela se fait beaucoup plus facilement, tout en une seule ligne. Dans l'idée ici est qu'avec la fonction réelle, disons que la fonction que nous écrivons ici est juste un, nous obtenons la valeur de Clicked of this state. Et si c'est vrai, nous allons revenir 15. Donc, nous allumons essentiellement la luminance pour essayer de briller. Sinon, nous allons retourner un 0. C'est donc tout ce que nous faisons ici. Si vous voulez juste essayer quelque chose et que vous pouvez également le faire et retourner 15, et alors le bloc émet toujours une lumière maintenant les autres choses intéressantes seront bien sûr le Bloquer les États Jason. Une fois de plus, je vais vraiment copier cela, mais cela vous est bien sûr disponible dans le référentiel GitHub ou dans un SIG individuel. Et vous verrez que ce n'est pas vraiment fou. Nous avons simplement cliqué sur faux ou cliqué sur vrai. Et puis, selon cela, il pointe vers deux modèles de chance différents. C'est à peu près tout ça. Le fichier de longueur. Je veux dire, ça va être très facile aussi. C'est juste un rappel de bloc sous une lampe, puis assis ici ou un trait de soulignement, pas de lampe de soulignement. Cela n'arrive parfois pas là, lampe Oracle VM, ni là. Et ensuite, copions les fichiers du modèle de bloc qui valent aussi bien pour la lampe allumée que pour la lampe éteinte. Et tous les deux se réfèrent à deux textures différentes comme vous pouvez le voir, soit la lampe allumée, soit la lampe éteinte. Donc, rien de trop fou. Et puis prenons également le modèle de lampe. Rien de trop fou, se réfère simplement à la lampe éteinte ici. Et puis prenons les textures de blocs. Et puis, nous en avons presque fini avec ça. Et maintenant, voyons si cela fonctionne. Ou une attaque offensive et des microvésicules voient que l'Oracle peut atterrir a été ajouté au jeu. Et si je clique dessus avec le bouton droit, ils vont, ça s'allume et ça s'éteint car c'est plutôt cool. Maintenant, la raison pour laquelle nous n'en avons pas, comme la fonctionnalité de clic droit, la main se déplace essentiellement parce que nous avons mis la passe par clic droit. Et c'est bien sûr, pour que nous puissions plus, mieux placer les blocs en bas. Parce que si nous n' avons pas le laissez-passer là-dedans , vous savez, c' est un peu bizarre. Vous pouvez donc bien sûr également modifier le résultat réel que vous retournez dans la méthode inutilisée. C'est aussi toujours quelque chose que vous pouvez essayer et voir quelles sont les différentes fonctionnalités. Mais comme vous pouvez le constater, cela fonctionne parfaitement. Et je peux simplement changer le extra et bien sûr l'allumer. Donc, si je fais juste des moments la nuit pour que nous ayons ça et que nous voyions bam, bam, bam, voilà. Je peux simplement allumer la lumière ou l'éteindre. C'est plutôt cool. Rubber, ce sera déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelques nouveautés. Et je vous verrai au cours de la prochaine conférence. Oui. 66. (Intermédiaire) Comment fonctionne NBT Data: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons examiner provisoirement les données de TY NB. Tout comme les propriétés de l'état de bloc sont essentiellement des données que vous pouvez enregistrer sur un état de bloc. Dans BT, les données sont des données que vous pouvez enregistrer sur des piles d'articles. Les piles d'articles sont donc deux éléments car les états Bloc sont deux blocs. L'article empile donc la collation réelle que vous avez dans votre stock, alors qu'un article est l'idée générale de cet article. Mais encore une fois, un seul schéma en quelque sorte. Et la façon dont nous allons jeter un coup d'œil à cela, c'est que nous allons créer un nouvel élément appelé la tablette de données. Et cela va sauver le dernier résultat des tiges de descente. C'est l' idée générale que nous allons copier sur un tas de code. Tout cela est disponible dans le référentiel GitHub ou un individu. Il suffit de jeter un coup d' œil aux ressources. Je recommande vivement de les jeter un coup d'œil, de les aider avec moi au fur et à mesure. Et tout d'abord, pour cela, nous allons avoir besoin du nouvel article. Il s'agit donc d'un clic droit sur le package personnalisé et il s'agit l'élément de la tablette de données. Cela va étendre la classe d'articles. Bien sûr, cela a été survolé sur ce constructeur de création correspondant super ici. Et celle-ci est en fait assez simple. Donc, ce que nous voulons faire, c'est que nous voulons faire un aperçu par semaine, essentiellement à cet effet brillant quand cela a réellement dans les données VT. Nous pouvons donc remplacer la méthode has glint. Et puis ce que nous allons revenir ici, vous pouvez voir que nous avons réellement la pile ici. Et c'est génial parce que ce que nous pouvons faire, c'est que nous pouvons simplement retourner point de pile a MBT, exactement n'est-ce pas ? Ainsi, chaque fois qu'une tablette de données contient des données NVT ajoutées, nous allons le faire briller. Ensuite, ce que je veux aussi pouvoir faire, c'est de cliquer avec le bouton droit de la souris sur cette poussière dans l'air et de supprimer les données proposées. Comme vous pouvez le constater, nous allons utiliser la méthode américaine ici. Et ce que nous allons juste vérifier , c'est que nous allons dire, hé, si user.name est empilé en main avec la main qui vient d'être cliquée, n'est-ce pas ? Si cette pile NVT que ce que nous allons faire, c'est que nous allons simplement la réinitialiser. Ce que nous allons dire, c'est que nous allons dire l'utilisateur point, empiler et finir avec la main. On va juste dire que c'est en VT. Nous le savions dans le complexe BT. Et c'est à peu près l'idée générale. Le NVT est dans le set et VT. Et puis, dans une seconde nous allons également voir le, fondamentalement, ils obtiennent NVT. Ce sont les trois grandes méthodes que vous devez absolument garder à l'esprit. Nous allons donc également créer une infobulle ici, qui sera affichée lorsque la pile réelle contient des données MVT. Donc pile point comme MVT à nouveau. Et c'est seulement alors que nous voulons ajouter une chaîne. Disons simplement que c'est le courant ou ici. Et nous allons dire pile dot-dot-dot, mais NVT cette fois. Et la façon dont nous obtenons des valeurs différentes ici, vous pouvez voir pour mettre en C, je peux obtenir quelques types de données différents ici, et je dois toujours avoir une clé là-dedans. Je vais juste utiliser le point de cours MC. Ou c'est comme ça que je vais appeler cette clé. Ce que je recommande vivement, c'est de toujours commencer par votre identifiant marr, puis un point, puis quel que soit le nom réel de cette variable stockée. Et puis nous pouvons simplement ajouter un point d'infobulle droite. Et puis nous disons un nouveau texte littéral, dans ce cas du texte littéral avec dans ce cas du texte littéral avec le courant ou sous forme de chaîne et ils vont, et c'est à peu près la classe d'éléments de tablette de données faite. Nous allons tout de suite lire cette année parce que cela va rendre cela un peu plus facile pour que l'évasion prenne l'armure de cheval de recalc. Et ce sera la tablette de soulignement des données. Et ici, la même tablette de soulignement de données. Et puis voici l'élément de tablette de données exactement correct. Et nous n'avons besoin que des paramètres normaux ici, bien sûr, il y a. Et nous ajouterons également le nombre maximum ici afin que nous ne puissions avoir cette pile qu'à une seule. Il s'agira donc de la taille Max Stack d'un. C'est très important. Et maintenant, bien sûr, nous devons définir ce que certains trucs, ajouter les données NVT à notre article de canne de descente. Et pour cela, nous allons créer une classe util car cela va nous faciliter un peu la vie dans un paquet util, nous allons cliquer avec le bouton droit de la souris sur la nouvelle classe Java. Et ce sera l'inventaire Util. Et je vais copier les deux méthodes ici. Et c'est juste pour gagner du temps en gros, car ces derniers vont probablement être réutilisés plusieurs fois que vous pouvez voir comme pile de joueurs et inventaire, cela vérifie si ce joueur en particulier ou non contient cet article en particulier dans son inventaire. Ensuite, ils obtiennent les premières vérifications de l'indice d' inventaire dans l'inventaire de ce joueur, obtiennent le premier index à l'intérieur de cet inventaire où cet article est présent. C'est l'idée générale ici. Et nous allons utiliser les deux en fait. Allons donc à la masse de l'objet de la tige d'abattage ici. Et ce que nous allons faire, c'est que nous allons ajouter une chose particulière. Et c'est essentiellement à l'intérieur des États-Unis sur une méthode par bloc, n'est-ce pas ? Ce que nous voulons faire, c'est que nous voulons dire, Hey, si la couche a la tablette de données dans son inventaire, alors nous voulons ajouter des données NVT à celle-ci. Nous allons donc le dire. Et puis nous pouvons dire inventaire, util point comme pile de joueur dans l'inventaire, nous pouvons dire joueur, et ensuite l'objet est juste plus d'objets, tablette de données points. Donc, si c'est dans l'inventaire , nous voulons y ajouter les données NVT. Eh bien, réfléchissons à ça. Je vais copier la méthode pour cela parce que j' ai une méthode pour cela. Et c'est une méthode privée ici appelée add vt to data tablet. Vous pouvez voir. Et ce que cela fait est assez simple. En fait, ce n'est pas trop fou. Tout d'abord, allez chercher la pile de tablettes de données ici. En récupérant la pile et en obtenant le premier indice d'inventaire du tableau David. Nous allons donc avoir la première tablette de données à l' intérieur de l'inventaire comme très importante. Donc, si deux données nous indiquaient dans l'inventaire, nous remplacerions les premières données dans les données VT. C'est très important. Comment définir les données NVT maintenant ? Vous pouvez voir ici, nous allons créer de nouveaux composés. composé NVT est donc ce que nous devons créer. Je vais mettre une ficelle là-dedans avec la clé. Encore une fois, le soulignement du point de cours MC ou. Et puis voici la ficelle. C'est donc à peu près la même chaîne que celle que nous avions ici dans la sortie. Et puis nous disons tablette de données à des données NVT définies. Et en passant ce composé NVT, nous aurions juste mis une ficelle. Et puis à l'intérieur de la déclaration if, nous allons simplement appeler cela ajouter données NVT à la tablette de données avec le lecteur. Et je vais dire que la position cliquée point ajouter 0 moins je 0. Et puis le bloc ci-dessous, c'est très similaire à ce que nous avions dans les coordonnées de sortie. Mais pour le moment, tout va bien se passer. Et c'est à peu près tout ce que nous devons faire. C'est donc tout ce qu'il y a à faire. Dans cette méthode particulière qui est privée, où nous y ajoutons ces données puis l'inventaire util en devenant utile dans un autre domaine également. C'est donc aussi un cool très fréquent. Et oui, c'est à peu près l'idée. Encore une fois, les données NVT, contrairement à cela, les méthodes les plus importantes sont l'ensemble et les données VT sur la pile. Ils obtiennent des données NVT sur la pile et ont des données NVT sur la pile. Ce sont donc les trois principales méthodes. Et puis dans le composé NVT lui-même, vous pouvez voir que je peux aussi mettre d'autres choses comme et ce sont essentiellement tous les types de données que je peux stocker là-dedans. Et ils sont généralement bien plus que suffisants. C'est à peu près tout ce que nous avons vraiment besoin de savoir là-bas. Et puis, et nous allons le faire, c'est que nous allons d' abord ajouter le lang ici. Eh bien, nous allons simplement copier l'article ou prenons celui-ci. La tablette de soulignement de données est bien sûr la tablette de données. Ensuite, nous aurons besoin d'un modèle d'article. Et il s'agit bien sûr d'un modèle d'article normal ici. Ainsi, la tablette de données pointe simplement vers la tablette de données allumée. C'est donc une chose très intéressante ici, pourquoi ? Eh bien, y a-t-il aussi un off ? Oui. chose que nous allons examiner au la prochaine conférence, car ils vont tous modifier la texture réelle selon qu'elle possède ou non données MVT et ne l' est pas en fait. de cela nécessite une configuration intéressante. Disons. La tablette de données a maintenant été ajoutée au jeu. Voyons donc si cela fonctionne ou si elle rebondit en microfinance peut voir que la tablette de données a été ajoutée avec succès au jeu. Et n'en prenons qu'un seul. C'est vrai. 67. (Intermédiaire) Predicates de modèle d'objets: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons examiner un fournisseur de prédicats modaux. Donc, si c'est quelque chose que vous n'avez aucune idée de ce que cela signifie, ne vous inquiétez pas du tout. Nous allons examiner cela en détail. Nous allons donc appuyer deux fois sur la touche Maj et nous allons mettre un modèle de registre de fournisseurs adéquat, exactement celui-ci. Cliquons simplement là-dessus et vous pouvez voir que cela contient des choses bien intéressantes ici. À savoir, par exemple, pour le bot, le pôle et le tirage vers l'intérieur, ce qui est très intéressant car ce sont deux prédicats dont le bot a besoin pour modifier la texture de l'article. à l'intérieur de l'inventaire. Et c'est tout à fait exact. Nous devons donc enregistrer notre propre tablette personnalisée afin que notre tablette de données puisse modifier la texture. Nous voulons essentiellement que les données soient tabulées qui sont désactivées lorsqu'il n'y a pas de données NVT dessus et s' allument lorsqu' il y a des données BT dessus. C'est l'idée générale. Et ce que je peux aussi dire, c' est appuyer à nouveau sur la touche Maj et taper un trait de soulignement de bol. Vous verrez que certains fichiers JSON sont associés. Et cela, par exemple, vous pouvez voir renvoyer à l'article. Donc, ce trait de soulignement de bol tirant 0 est référencé dans le fichier JSON de données du bot , qui sera le fichier JSON en gras ici. Mais vous pouvez aussi toujours accéder aux bibliothèques externes dans les ressources que sous l'élément modèles, puis simplement descendre à la proue, juste ici. Vous y allez. C'est donc le bateau adjacent exactement à celui que nous avons ouvert. Et vous pouvez voir ci-dessous qu'il y a des remplacements et s'il y a un prédicat particulier, sont donc les produits modaux que nous venons de voir. S'ils ont une valeur particulière, nous allons en fait jeter un coup d'œil à un modèle différent de celui ci. Celle-ci montre simplement le bol normal. Cependant, si le tirage en est un , nous allons montrer ce modèle. Si tirer son bout du poteau est à 65 pour cent va montrer celui-là. Et si nous tirons et tirons est à 0,9, alors nous allons montrer celui-ci. C'est l'idée générale, année. Et c'est pourquoi nous pourrons modifier fondamentalement les textures. Et en fait, tout cela est assez simple. Ce que je vais faire, c'est que je vais créer une nouvelle classe util, que je vais appeler ça le fournisseur de prédicats de modèle mod. Et à l'intérieur de là, nous allons faire un vide public. Enregistrez les modèles, les modèles, les refroidisseurs, oui, les modèles mod. Et cela va appeler le registre des fournisseurs de prédicats modaux fabric qui s'inscrivent avec la tablette de données point d'éléments mod dans le nouvel identifiant MC cours mod, mod ID. Et ensuite, nous allons faire appel à cela. Et puis, après la première parenthèse, une virgule. Et ensuite, ce que nous voulons, c'est un kilomètre de fournisseur de modèles non réclamé. Vous pouvez voir si je commence à écrire et empiler ici, nous pouvons simplement prendre ça. Nous allons donc le compléter automatiquement comme ça. Et puis ce que nous allons dire, c'est qu'on va dire que Stack Dot a MBT. Encore une question, cochez une, f deux-points 0, f. Donc l'idée est que nous allons renvoyer un 1 4 si le stock a des données MVT et que nous allons renvoyer un 0 s'il n'a pas de données MET. Et c'est à peu près tout ce que nous devons faire. Maintenant. Nous devons également écrire correctement le registre de l'ego, puis nous rappelons que c'est dans le client ici. est donc très important que nous appelons cela chez le client, que nous voulions dire mod, fournisseurs de prédicats modaux qui enregistrent des modèles. Et c'est, je veux dire, c'est à peu près tout. C'est tout ce que nous devons faire pour que ce modèle soit enregistré, ou disons que le prédicat ici est enregistré. Bien sûr, nous devons maintenant modifier les fichiers de modèle dans la tablette de données, juste ici. Je l'ai donc préparé. Je vais copier cela et je vais l' expliquer et je vais aussi, bien sûr, tout cela est disponible pour vous dans le référentiel ou un individu tout aussi. Et l'idée est que celle-ci pointe maintenant vers un modèle différent. Donc, ce que nous allons juste faire, c'est qu'on va juste prendre l'autre modèle ici. Nous avons donc besoin de deux modèles. L'un d'eux est la tablette de données normale et je suis l'une d'entre elles est la tablette de données sur celle-ci. Désolé, ça va ressembler à ça, donc d'accord, pas de soucis. Passons à travers cela. La cible de données normale sera désactivée lorsqu' elle n'a pas de données NVT. Si les cœurs de MC sont activés , nous allons activer les tablettes de données. Nous allons donc maintenant jeter un coup d'œil à ce modèle ici, où la tablette de données est activée. Mais maintenant, nous avons juste besoin de passer l'option pour l'article supplémentaire ici. Il suffit de copier ça aussi. L'ego, car par défaut, on dirait qu'il est éteint. Et si le prédicat est sur, alors nous allons utiliser celui-ci qui fait référence à la texture on. C'est l'idée générale ici. ne l'est pas non plus. C'est un peu déroutant. Ce ne devrait pas être si fou que ça. Nous sommes simplement en train de pointer vers une texture différente. Si quelque chose est différent, presque identique à un état de bloc juste dans le modèle d'article indique l'heure. Et c'est en fait tout ce que nous devons faire pour modifier la texture d' un article selon qu' il se produit quelque chose. Voyons maintenant si cela fonctionne. Ou moi, donc si je suis SoftBank et que les microARN peuvent voir que la tablette de données normale est maintenant désactivée. Et quand je trouve quelque chose que vous pouvez voir maintenant, il s'est allumé. Maintenant, c'est vraiment un effet vraiment cool. Et si je clique dessus avec le bouton droit et que je le supprime, les données NVT, vous pouvez également les voir s'éteindre. C'est donc quelque chose qui est assez fréquent, cool si je le dis moi-même, j'aime vraiment ça. C'est quelque chose qui, en fait, c'est plus facile que vous ne le pensez. Bien sûr, les détails peuvent vous paraître un peu fous. Mais encore une fois, avec une certaine connaissance de Java, cela ne devrait pas paraître trop fou. Mais c'est vraiment très, très cool. N'oubliez pas que ce serait déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprend le nouveau. Comme toujours, tout le code est disponible dans le référentiel GitHub et dans un individu. Je vous verrai au cours de la prochaine conférence. Oui. 68. DÉMISSION 7 : Blockstate & NBT: Cet exercice pour le cours de tissu pour 118. Et bien, je vais juste vous donner idée générale ou une explication de ce que vous êtes censé faire. Donc cette fois-ci, il n'y a vraiment pas de solution car fondamentalement votre créativité est demandée et vous devriez simplement courir avec elle. Êtes-vous censé le faire, c'est qu'ils censés créer un nouveau bloc et un nouvel élément qui intègre d'une manière ou d'une autre les deux propriétés des états du bloc. Donc, un bloc particulier, bloc par exemple de propriété, puis un exemple de données NVT. Cela peut vraiment être tout ce que vous voulez. Cela peut être aussi facile ou compliqué que vous le souhaitez. Vous n'êtes pas obligé de le faire nécessairement. C'est quelque chose que vous devez essayer. Donc, ce n'est vraiment qu' une affectation facultative, mais je recommande vivement de continuer avec ça et de faire quelque chose qui est symbole et pas trop compliqué, ne pense pas, hé, je vais juste y aller pour faire un engin fou comme une construction créative. Ne devenez pas trop fou. Faites quelque chose de très simple, qui fonctionne et fonctionne comme toujours, une excellente idée. Bonne chance pour cette mission. 69. (intermédiaire) Ajouter un recadré personnalisé: Ou je reviendrai au cours de tissus pour 118 ans. Et dans cette conférence, nous allons ajouter notre propre culture personnalisée à Minecraft. L'ajout d'une culture personnalisée est donc très intéressante. Heureusement, bien sûr, nous avons examiné les propriétés Walk State car c'est quelque chose dont nous aurons besoin dans notre package de blocs personnalisés. Nous allons cliquer avec le bouton droit de la souris sur la nouvelle classe Java appelée bloc de navet de mode. Maintenant, j'aimerais commencer nos classes de blocs avec le mode nom. Pas toujours, mais c'est très bien. Et cela va étendre la classe de blocs de culture. Et nous allons juste survoler cela dans créer un constructeur correspondant super ici. Et ce que je vais faire, c'est que je cliquerai sur le journal de recadrage , puis j'appuie sur Control H. Et vous pouvez voir essentiellement tous les blocs d' où cela s'étend. Et nous allons juste prendre le contenu, l'intégralité du contenu du bloc de racines de betterave ici. Mais c'est presque tout ce que nous allons faire. Et ensuite, nous allons changer le nom ici. Nous n'avons pas besoin de ce premier domaine. Et ce que nous voulons également changer c' est que les deux peuvent être ici. Et puis, au lieu de les avoir dans un bloc statique en bas, nous voulons le faire immédiatement. Et puis la même chose pour la forme ici. Faisons ça , puis copions ça ici. Il est égal à h. Eh bien, pas tout à fait l'ego. Ensuite, j'y vais un peu différemment pour que nous puissions lire ce qui se passe ici. Parce que la forme du voxel est quelque chose de très intéressant et de très particulier. C'est donc quelque chose dont nous devons parler. Sinon, tout le reste restera comme ça. Je veux dire, celui-là, par exemple, nous n'avons pas besoin de le faire. Nous pouvons aussi simplement additionner le H comme ceci. Et ensuite, pour cet état, tout va bien se passer comme ça aussi. Bien sûr, tout le code approprié est également à votre disposition. Ici, bien sûr, au, bien sûr, nous devrons retourner un article différent, mais nous allons le faire dans un instant aussi. Et juste si nous n'avons pas encore ajouté le remplacement d'ajout à tout ce qui est ici pour que nous sachions que tout ici a été remplacé. Et dans l'ensemble, c'est à peu près tout ce dont nous avons besoin dans cette classe, à l' exception, bien sûr, des semences que nous devons retourner. Et vous pouvez voir que les droits réels de propriété selon l'âge que nous avons une pauvreté H ici dans la propriété d'âge, qui est h3. Nous pouvons aller là-dessus et nous pouvons voir la propriété de l' âge ici. Les idées générales selon lesquelles cela va de 0 à trois, mais il y a quatre étapes de ce bloc particulier. Et c'est aussi pourquoi il existe quatre formes cuboïdes. La forme du voxel, lorsque vous survolez un bloc, c'est ce qui est affiché sous la forme, essentiellement les contours du bloc. Et c'est très important. Et cela ne fait que changer ici en fonction de l'âge. Bien que vous puissiez voir qu' une bonne forme de contour renvoie le tableau de forme de l' âge à la forme. Et puis cela vous donne simplement une forme différente en fonction de la propriété d'âge de celle-ci. C'est l'idée générale ici. Donc, si vous avez une culture différente avec un nombre d'âges différent, vous pouvez soit modifier la récolte chaque année. Il y a parfois des agents disponibles ici. Comme vous pouvez le voir, il y a 123571520. Je l'ai aussi fait. Ou vous pouvez également, comme nous l'avons fait dans Oracle, pouvez discrèter votre nouvelle propriété, votre propre propriété. Cela fonctionne également très bien. Mais créons également le bloc dans la classe des blocs de boue. Et pour cela, nous allons vraiment avoir besoin d'une méthode complètement nouvelle. Nous allons donc copier la méthode du bloc de registre, n'est-ce pas ? Contrôle C sélectionné, Contrôle V. Je vais supprimer le groupe ici et l' appel à l' élément du bloc de registre. Nous allons appeler cela le bloc de registre sans méthode Block item car c'est exactement ce que nous voulons faire. Il suffit de copier la trappe en fleurs de cerisier. Il s'agira de la culture de soulignement du navet. En général, j'aime bien appeler mes accessoires, avec la récolte finale, le navet, la culture de soulignement. Et ce n'est pas un bloc de registre, mais il s'agit d'un bloc de registre sans élément Bloc, très important. Nous pouvons donc supprimer l'onglet du cours ici tout à l'arrière. Et puis nous allons aussi faire, c'est que nous allons nous occuper de tout ça. Au lieu d'y remédier, nous allons réellement copier un bloc en particulier. Et c'est le, les blocs qui s'enracinent bien sûr. Et pas un bloc de porte de piège à boue, mais un navet mod, OK, juste au théorème. Alors pourquoi ne pas enregistrer un article en bloc avec cela ? L'idée générale est que la récolte de navet n'est pas vraiment associée à un article. Nous avons besoin d'une graine pour ce bloc sans place, et c'est tout à fait juste. Mais nous devons entrer dans deux ou plusieurs catégories d'articles et ensuite faire une graine de navet. Nous allons donc simplement copier sur la tablette de données et ce sera une graine de soulignement de navet. Pour celle-ci, nous allons appeler ça brûlé sous des graines de soulignement. Et il s'agit d'un nouvel élément de bloc alias. C'est peut-être le cas, qu'est-ce que c'est ? Eh bien, tout d'abord, nous allons mettre plus de blocs qui augmentent le recadrage, puis supprimerons le compteur maximum. Très important en fait. Ice block est un bloc avec un nom différent de celui qu'il possède, n'est-ce pas ? La graine de navet, bien sûr, est un nom différent celui de la culture de navet ici. Et aussi ce qui est très important, revenons à la classe de blocs maternels puis retournons les objets mod point, tournons le voir ici. C'est très important, sinon les graines ne sont pas correctes. Il est donc très important que nous fassions cela et que le code soit fait. Ce que nous devons également faire, c'est que nous devons appeler la carte de la couche de rendu sur ce point. C'est sur la récolte de navet ici, aussi coupez. Et puis le code est complètement fait dans ce que nous devons maintenant faire est d'ajouter la traduction, puis les états de blocs et les fichiers de modèle de bloc. Ajoutons simplement la récolte de navet ici. Vous pouvez donc voir que nous recherchons essentiellement différents qui peuvent bloquer, par exemple, les valeurs de propriétés de 0 à trois, puis pointer simplement vers différents fichiers de modèle. Donc, toutes les choses que nous avons déjà vues ne devraient pas être trop surprises, n'est-ce pas ? Ajoutons l'article ici. Disons simplement que quelque chose comme les graines de soulignement de navet vont bien sûr être le tournant sous, pas les graines de soulignement, encore une fois avec le trait de soulignement. Et puis, très important d' ajouter la récolte de navet ici aussi, culture de soulignement. Et puis ici aussi, nous sommes dans un étroit, il y a un MOD où vous pouvez survoler des blocs et il affichera le bloc réel ici. Et cela sera affiché d'une manière qui n' est pas traduite. Traduisez cela aussi. Je vous recommande vivement de le faire. C'est juste une ligne, vraiment pas si grave , n'est-ce pas ? Tout d'abord, additionnons les quatre modèles de blocs différents ici pour la culture de navet, vous pouvez voir qu'ils montent simplement le soulignement de l'étape 0 ou 2, 1. Assurez-vous que tout est écrit correctement ici. Quand on repense au Jason, l'idée de voir comment sont-ils liés ? C'est le nom de ce fichier ici, puis c'est le nom de la texture qui pointe vers les modèles de blocs ici sont tous, essentiellement le rognage de bloc parent. Et puis la texture ici est également une culture très importante. Et que nous n'aurions pas besoin du modèle d'article. Nous n'avons besoin que d'un modèle d'article pour les navets Aedes, et ce n'est qu'un modèle d' article normal comme vous pouvez le voir. Et ensuite, copions les quatre textures de blocs de navet. Ceux-ci, tout ici est évidemment à votre disposition. Donc, nous allons juste les copier aussi. Et C 0 à trois, puis l'article, les graines ici aussi. Donc, terme semences dans le dossier des éléments. Eh bien, dans le dossier des éléments, vous y allez, et c'est à peu près tout ce que nous devons faire. Maintenant, l'une des choses les plus importantes est que laisse tomber ce bloc ? Parce que les tables de toilette que nous avons vues jusqu'ici, nous sommes tous très faciles. La seule table comme la folle Lu a vraiment été l'orbit même qui n'a pas été trop folle. Mais maintenant, qu'en est-il des récoltes réelles ? Ne sont-ils pas obligés d'être précis ? Oui. Nous pouvons aller une fois dans les bibliothèques externes vers Microsoft Project, puis tout le tas de choses ici. Et puis, en allant dans le dossier des ressources au lieu du dossier de données, Minecraft a pillé des tables, des blocs. Et ensuite, nous allons juste jeter un coup d'œil aux racines de betteraves. Et vous pouvez voir que c'est à ça ressemble la table des racines de betterave et qu'il suffit de la reproduire ou nous pouvons également copier le fichier réel ici. Nous allons donc simplement dans Control C, ce fichier, puis nous allons dans notre propre table de routage de cours MC, dossier de blocs. Est-ce que c'est ici ? C'est bien sûr, l'emballage de soulignement de navet. Ensuite, il y a quelques changements que nous devons faire. C'est très important. Ne sautez pas ça. Jetez un coup d'œil à ça. Ainsi, la propriété numéro 1, r âge max est définie ici. Si nous devions avoir un rocher ayant la propriété d'âge maximum de cinq ans, nous devrions mettre cinq ans parce que les choses réelles n'ont chuté que si cet âge a été atteint. C'est donc très important. Et c'est la même chose qui se passe ici. Cette année, là où le bloc est le bloc. Il doit donc s'agir du côlon MC cours, navet, de la culture de soulignement. Cela fait référence au bloc que nous avons créé dans notre classe de blocs de mod, qui est essentiellement vérifié cette année, est le produit réel. Ce sera donc le navet du cours MC. C'est-à-dire que ce serait le blé s'il s'agissait de blé et ainsi de suite. Et puis voici les graines. C'est donc le deux-points de cours MC, montez les sièges de soulignement. C'est donc très important. Ces trois choses doivent être changées. Alors assurez-vous de les changer ici, puis en dessous aussi. Parce qu'ici, nous sommes en train de laisser tomber des sièges supplémentaires, non ? Il est donc très important que vous changiez cela correctement. Assurez-vous que l'ID du modèle est toujours correct c'est quelque chose qui est très facilement supervisé en gros. C'est donc quelque chose que vous ne reconnaissez pas très facilement, surtout, vous savez, l' Armada D commence par un M. Minecraft commence aussi par un M. Parfois, cela peut être quelque chose que vous pourriez manquer, mais c'est à peu près tout ce que nous devons ajouter. Voyons donc si cela fonctionne. Ou Francis de retour en microfinance peut voir que les sièges de navet ont été ajoutés, alors voyons si je peux les poser. Et bien sûr, je peux les poser. C'est exactement ce que je veux voir. Et faisons simplement en sorte que la règle du jeu, vitesse des tics aléatoires soit augmentée de 100. Et puis ils y vont, ils grandissent. Et c'est en fait la vieille croissance ici. Il suffit de réinitialiser ça. Passons au mode survie. Très important. Si vous les introduisez, vous devez les briser en mode survie et en ego, ils tombent même des navets, mais uniquement sur la taille réelle. Vous pouvez voir s'ils ne sont pas taille réelle et qu'ils ne tombent sur une graine, c'est presque tout ce qu'ils ont à faire. Et bien sûr, dans le tableau Lu, vous pouvez également modifier les chiffres, n'est-ce pas ? Donc, si vous êtes comme Non, ce n'est pas assez de navets qui tombent, c'est tout aussi très bien. Vous pouvez toujours changer cela dans la table des toilettes, c' vrai, mais c' est à peu près pour cette conférence ici. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau. Encore une fois, tout le code des fichiers récents est bien sûr disponible dans le référentiel GitHub ou dans un individu. Et je vous verrai lors de la prochaine conférence. Donc, oui. 70. (Intermédiaire) Comment ajouter des objets à un compositeur: Bon, bienvenue au cours de tissu pour 118. Dans cette courte conférence, nous allons voir comment ajouter des éléments personnalisés au bloc composteur. Mais cela signifie essentiellement que si vous cliquez avec le bouton droit sur le bloc de composteur, comme une chance d'augmenter le niveau auquel se trouve le composteur. En fait, c' est très simple. Ainsi, dans notre classe plus de registres, nous allons créer un nouveau composteur MOD de registre statique privé , classe chances. Et cela sera appelé ici juste après le registre des carburants, mode enregistrement des chances de combusteur. Et la façon dont nous les ajoutons est assez folle. Nous allons dire bloc composteur, DOD Item deux niveaux ont augmenté chances que PUT et ensuite nous mettons plus d'objets, navets à pois, sièges, par exemple, grâce à 35 pour cent de chances. Et nous allons juste dupliquer cela avec Control D. et je vais aussi mettre le navet que vous puissiez manger au tour de cela. Et c'est une chance de 65 %. Si nous avons le bouton central de la souris, cliquez dessus. Nous pouvons également constater que les tendances se trouvent ici. Vous pouvez donc voir toutes les chances qu'il y ait des graines, des gaules et des feuilles, et essentiellement les chances qui nous sont associées, n'est-ce pas ? Je veux dire, c'est à peu près tout ce que vous devez faire si vous n'avez pas la classe des registres de mode, vous pouvez également les prendre et simplement les appeler dans la méthode initialisée. Cependant, parce que nous avons créé les registres modernes ici, cela rend tout cela un peu plus facile, un peu plus séparé et un peu plus agréable à lire. Et juste pour l'achèvement, voyons si ça marche ou s'il était de retour dans Minecraft et voyons simplement, voilà. Je peux cliquer dessus avec le bouton droit de la souris et cela fonctionne réellement. Et les graines fonctionnent également. Ils ont 35  % de chances, tandis que les navets ont 65 % de chances. Et voilà. Maintenant, j'ai un peu de bulles. Eh bien, mais c'est déjà pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 71. Mixins (intermédiaires) expliqués: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons jeter un coup d'œil au mixin. Mixin est un sujet qui doit être traité avec beaucoup de soin. C'est pourquoi je vous demande en quelque sorte de ne pas devenir complètement fou de ça. Même si vous comprenez cela après cette conférence, un mixin doit être utilisé avec parcimonie et pas uniquement pour tout ce qui peut être plus facile d'utiliser mixin. Mixin, l'idée générale est que vous pouvez fondamentalement changer les classes de Minecraft pour la régler à tout ce que vous voulez. En gros, bien que nous puissions, par exemple, modifier les méthodes. Vous pourriez modifier le niveau d'accès, certaines méthodes ou certains champs, et nous pourrions les modifier simplement sur un coup de tête. Et cela est généralement considéré comme un sujet très compliqué et complexe, là où ce n'est pas vraiment fou. Donc, si à ce stade, vous n'avez fait que copier des choses et ne pas vraiment suivre avec Java. Donc, vous ne comprenez pas vraiment beaucoup de choses de Java derrière ça. Je recommande vivement une fois jeter un coup d'œil à l'introduction de Java, car mixin est un outil qui, si vous ne comprenez pas Java, vous allez être complètement perdu. Je n'entrerai pas trop en détail sur la façon dont cela fonctionne réellement. Je vais juste mentionner une chose et c'est le dépôt GitHub ici de mixin alimenté par Sponge, le wiki là-dedans spécifiquement. Et c'est un outil incroyablement utile pour jeter un coup d'œil et simplement comprendre l'architecture mixin. Et en descendant ici, vous pouvez voir que cela explique tout en détail, en fait comment cela fonctionne, comment nous pouvons l'utiliser, comment vous pouvez ensuite accéder à quelque chose et comment vous peut essentiellement lancer quelque chose sur une interface particulière, puis utiliser essentiellement les champs et les méthodes qui s'y trouvent également. C'est donc vraiment cool et vraiment utile et je recommande vivement de passer par là. Donc encore une fois, si vous ne connaissez pas Java, alors je ne sais pas comment vous aider avec cela parce que vous aurez certainement besoin d'en connaître quelques-uns, je dirais au moins des connaissances intermédiaires à avancées en Java pour comprenez vraiment cela. L'essentiel ici est juste que, eh bien, c'est un outil assez fou et une fois de plus, utilisez-le avec prudence. Donc, ce que nous allons faire, c'est dans notre package mixin, nous allons cliquer avec le bouton droit sur nouvelle classe Java et nous allons appeler cela l' entité de mode Data Saver. C'est juste le nom que je donne. Tout va bien se passer ici. Et la première chose que je veux faire, c'est que je veux rendre cela abstrait. Et la raison pour laquelle je vais faire ces résumés parce que n'importe quelle classe que nous avons dans ce mixin, nous ne devrions vraiment pas utiliser, ou du moins cette classe en particulier, nous ne devrions vraiment utiliser nulle part dans le code. Et maintenant, comment faire cela un mixin est assez facile. Nous, chez Mixin, ici. Ensuite, mettez dans la classe, nous voulons changer, et ce sera l' entité, la classe de points d'entité. Maintenant, ce qui est très important, c'est que nous allons simplement importer la classe et nous assurer que nous choisissons l'entité net micro-ondes. Maintenant, ce que nous allons faire, c'est que nous allons ajouter un MVT à la classe d'entités. Ainsi, chaque entité aura également un champ MVT associé à celui-ci afin que nous puissions enregistrer les données MBT à ce sujet. Et l'idée générale est que ce que nous allons utiliser dans la prochaine conférence pour ajouter des commandes personnalisées. Cependant, ce qui est très important ici, c'est que même si c'est une condition préalable à la prochaine conférence, les commandes spécifiques que nous allons faire la prochaine conférence nous obligent essentiellement à le faire. Je recommande donc vivement de regarder les deux ensemble en même temps. Donc, tout de suite, eh bien, cela va avoir un composé privé en BT appelé données persistantes. Et ensuite, nous voulons, en gros, ouvrir cela avec une bonne méthode de données persistantes ici. Et ce que nous allons faire, c'est que nous allons simplement renvoyer des données persistantes, mais elles peuvent également être nulles. Et si c'est le cas, si les données persistantes sont égales à NULL, nous voulons simplement définir ces données persistantes sur un nouveau composé NVT. Donc, fondamentalement, nous ne retournons pas de données vides et bien persistantes dans cette méthode et ce champ sera ajouté à cette classe. Donc, à la classe d'entités ici. Cela va donc être ajouté, mais quelque part nous ne savons pas où, mais c'est tout à fait très bien. Nous travaillons avec ça. Ces deux-là vont juste s'y ajouter. Ensuite, nous voulons également interjecter certaines fonctionnalités dans deux méthodes. Nous allons donc ouvrir à nouveau la classe d'entités et effectuons une recherche. Alors contrôlez F, puis nous pourrons rechercher la bonne méthode NVT ici, celle-ci. Et ce que nous voulons faire, c'est ici que nous voulons injecter que nous mettons toutes les données dans ce NVT ici, parce que celle-ci est celle qui est sauvée après que le monde ait été sauvé. Nous voulons donc que ces données soient également intégrées à nos données personnalisées. Et puis il en va de même pour la méthode de lecture et de BT ici, où nous voulons en fait sortir cela. C'est donc l'essentiel général ici. Donc, ce que nous voulons, c'est un vide protégé et un vide protégé et cela va juste être injecté ? Méthode. Le premier périmètre est le périmètre de la méthode actuelle que nous voulons. La méthode MDT appropriée comportait un composé nb t comme paramètre. Nous allons dire que MVT appelle aussi ce MBT. On peut encore une fois regarder ça, n'est-ce pas ? Donc, le composé MET, MET. Et parce qu'il renvoie également un composé MVT. Ce que nous devons utiliser, c'est que nous devons utiliser les informations de rappel renvoyables, souligner ces informations, c'est très bien. En fait, nous n'allons pas utiliser celui-ci de toute façon. Et puis nous allons le faire, nous allons juste dire si les données persistantes, donc cela fait encore une fois référence au champ ici. Si ce n'est pas nul, mais s'il y a des données là-dedans, nous allons simplement y placer les données réelles. Donc, pas sous forme de chaîne, mais simplement en tant que données. Et nous allons juste appeler cela les données de soulignement en coton grossier MCQ, MC. Ça va bien se passer. Ensuite, nous voulons intégrer des données plus approfondies sur les systèmes ici. Donc, s'il y a quelque chose dans les données persistantes, alors nous allons l'enregistrer dans ce composé NDT ici, qui permet ensuite sauvegarder cela dans le monde également. Nous devons maintenant ajouter un attribut ici au-dessus de la méthode, et il y a l' attribut objet avec le nom de la méthode. C'est donc juste NVT. Ensuite, nous devons préciser à quelle position nous allons faire ça et nous allons le faire à, à, puis à toutes les majuscules. Cela signifie donc que cette année est exécutée au tout début, fois que la méthode a commencé à s'exécuter va être exécutée à la première ligne, pour ainsi dire. C'est-à-dire que c'est l'idée générale. Et puis l'autre que je vais vraiment copier. Ce n'est rien de trop fou. La méthode de lecture par injection ici a juste le niveau de lecture et B également la tête, également NVT car c'est le paramètre de la méthode. Et à ce stade, au lieu d'avoir rappel pour retournable, a des informations de rappel normales et vous modifiez également l'année clé. C'est donc très important. Et en gros, il suffit de dire : Hé, si cette clé existe, alors ce que nous allons faire, c'est que nous allons définir les données persistantes sur ce que nous trouvons sous la clé. Vous y allez. C'est donc tout ce que nous avons vraiment besoin de faire ici. Et il y a une autre chose cruciale qui est importante. Et c'est que nous allons devoir implémenter une interface. Parce qu'en ce moment, parce qu'il s'agit d'une classe abstraite, nous ne pouvons rien demander à cette classe. Ce que nous voulons, c'est que nous voulons une interface car n'importe quelle classe en Java peut être transmise sur n'importe quelle interface. On va donc dire que j'ai économiseur de données d' entité. Et ça va littéralement avoir une chose simple. Et c'est un composé NBC obtenir une méthode de données persistantes. C'est donc ce que possède l'interface. Et ensuite, nous allons juste dire que les implémentations I entité data saver ajouteront également le remplacement d'ajout ici juste pour que nous sachions que nous avons écrasé cette méthode, mais c'est à peu près tout ce dont nous avons besoin à faire. Nous avons donc besoin de celui-ci pour que nous puissions réellement appeler cela sur une entité particulière. Parce que, bien sûr, si nous n'avons qu' une classe d'entités pendant le développement, elle ne contient pas les données persistantes, donc cela ne fonctionnerait pas. Maintenant, il y a une autre étape que nous devons faire, c'est-à-dire que nous devons aller dans le dossier des ressources sont ici, en fait dans le mixin McQs Jason, et ajouter le nom de la classe ici. dans les mixins. Mais il s'agit de l'économiseur de données d' entité de mode. Et c'est à peu près tout ce que nous devons vraiment faire ici pour faire un mixin dans ce cas. Nous changeons donc fondamentalement la classe que nous avons définie ici et y ajoutons tout ce jazz. Maintenant, nous ne verrons rien pour l'instant, mais ce qui se passe sera essentiellement montré dans la prochaine conférence. Cependant, je voulais séparer cela parce que parfois, vous savez, c' est comme si c'était spécifiquement du mixin. Ensuite, le prochain sera des commandes et il y aura des choses spécifiques aux commandes. Nous devrons également utiliser cela. En gros, la démonstration sera présentée lors de la prochaine conférence. Encore une fois, le mixage doit être manipulé avec précaution, surtout si vous êtes débutant ou intermédiaire dans un Java, je vous recommande vivement de le prendre lentement. Ne rentrez pas fou avec ça. Il y a toujours des exemples sur GitHub et je peux également recommander vivement le wiki. En fait, c'est vraiment bien. Il vous suffit de prendre votre temps, de le lire. Il suffit de prendre votre temps. C'est la meilleure idée ici. Et ne devenez pas fou avec cela parce que c'est un outil très puissant, mais il pourrait aussi en théorie casser, je veux dire, peu près l'intégralité de Minecraft si vous y ajoutez votre mod. Donc, soyez prudent avec ça, n'est-ce pas ? Mais ce serait tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et que vous avez appris quelque chose de nouveau. Si quelque chose n'est pas clair, n' hésitez pas à poser des questions dans les questions-réponses , sinon je vous verrai lors de la prochaine conférence. Donc, oui. 72. (intermédiaire) Créer des commandes personnalisée: Bon, bienvenue au cheval en tissu pour 118. Dans cette conférence, nous allons ajouter un à des commandes personnalisées à Minecraft. Maintenant, c'est très important. La dernière conférence où nous parlons de mixins est en fait une condition préalable à cette conférence. Donc, si vous ne l'avez pas vu, veuillez le regarder et tout mettre dans leur charbon est bien sûr disponible dans le dépôt GitHub ou un individu tout aussi bien. Ou vous devrez également ajouter le mixin à votre modèle. Sinon, vous ne pourrez pas suivre cette conférence. Donc, pour ajouter des commandes personnalisées. Tout d'abord, lorsque nous allons dans notre package de cours IMC, cliquez avec le bouton droit sur le nouveau package appelé commande. Et à l'intérieur, nous allons créer deux nouvelles classes appelées commande retour à la maison. Et ensuite aussi le commandement at. Maintenant, vous verrez peut-être déjà où ça va. Nous allons essentiellement faire deux commandes. Un pour que vous puissiez installer votre maison et l'autre pour que vous reveniez à ce poste de résidence. Maintenant, je vais vraiment copier le contenu des deux classes parce que cela va rendre cela un peu plus facile et je vais vous expliquer au fur et à mesure. Eh bien, tout d'abord, faisons la commande set home. Et je vais juste copier ça ici. Et tout le code est bien sûr une fois de plus disponible juste et le dépôt GitHub. Nous avons donc une méthode de registre, une méthode de registre public statique void et un int statique public, une méthode run. Cette méthode d'exécution est appelée ici dans cette exécution. Et ensuite, vous pouvez voir que nous avons deux littéraux ici. C'est donc essentiellement ce qui est heureux, ce qui se passe ici. Donc, en gros, vous devez taper une barre oblique , puis cette première ici à la maison. Ensuite, nous ajoutons un, puis ici, nous devons ajouter ceci en second mot. Donc c'est essentiellement la commande que nous devons mettre en ohms slash home set. Et ensuite, il va exécuter tout ça ici. C'est l'essentiel général de cette commande et de la commande run. Vous pouvez voir que le lecteur a obtenu du contexte, obtenir le lecteur source est transféré vers un économiseur de données d'entité. Mais c'est l'interface que nous avons créée lors de la dernière conférence. Et cela nous permet essentiellement d'appeler la méthode get persistent data, puis d'y mettre un tableau int avec le nom home pass. Et ça va simplement se placer dans la position du joueur à domicile. Et puis, à la fin, nous allons aussi dire envoyer des commentaires avec des textes littéraires à la maison à ce poste particulier. C'est à peu près tout ce qu'il fait vraiment. La commande set home n'est vraiment pas si compliquée. Toutes choses prises en compte. Bien sûr, nous avons cette exception de syntaxe de commande. C'est juste le cas. Nous avons juste besoin de cela car c'est une commande d'exécution pour une commande well, je suggère également fortement jeter un coup d'œil au gestionnaire de commandes ici. Donc, si le bouton central de la souris clique dessus, vous pouvez voir toutes les commandes vanille ici. Comme vous pouvez le constater, il y en a beaucoup. Et si vous avez une chose particulière que vous voulez faire avec des commandes. Donc, si vous voulez avoir une commande personnalisée, vous pouvez jeter un coup d'œil à celles-ci. Et tout d'abord, jetez un coup d'œil à la façon dont ils le font. Donc, d'accord, comment fonctionne réellement la commande loop ? Eh bien, c'est ce qui est exécuté. Vous pouvez donc voir exécuter, insérer, insérer, exécuter un bloc, qu' il y a beaucoup de choses que vous pouvez voir essentiellement comment cela fonctionne. Il y a beaucoup de choses en fait. Et voici l' enregistrement pour cela. Et bien sûr, cela va être la chose où la plupart des gens sont comme, oh mon seigneur, c'est vraiment fou. Et c'est le cas. Si vous voulez avoir des commandes vraiment, vraiment complexes, cela va être très complexe. Ce sera juste le cas. Une chose que je dirai, c'est que je n'aiderai que dans circonstances limitées si vous avez une commande personnalisée et que vous demandez dans les questions et réponses, parce qu'elles deviennent tellement compliquées il est très, très difficile de vraiment creuser. C'est juste ce que c'est. Mais continuons simplement avec notre exemple ici. Donc, la classe de gestionnaire de commandes que je peux fortement recommander. Et ensuite, passons également à la commande retour à la maison. Et nous allons juste copier ça aussi. Voyons donc simplement le contenu ici. Et encore une fois, ce n' est pas trop fou. C'est juste que dans ce cas, rentrez chez vous, puis revenez. Et puis il reprend. Il exécute la commande run ici, qui une fois de plus baladème le joueur à l'œil Entity Data Saver obtient la position d'accueil ici et la longueur ici est inégale. Alors on sait, hé, ça veut dire que ça contient autre chose. Nous allons juste dire qu' aucun poste à domicile n'a été défini tel ou qui était complètement sûr. Ensuite, nous allons trouver le poste d'attache ici et dire que nous demandons le téléport à ce poste exactement. Et je vais dire que le joueur est rentré chez lui. C'est tout ce que nous faisons vraiment ici, c'est rien de trop fou. Et maintenant, il y a deux choses dont nous avons besoin, à savoir les événements. Maintenant, l'un des événements va être très facile. Nous allons donc entrer dans nos autres registres. Cette commande ici est spécifique à chaque commande Vous devrez donc le faire pour chaque commande que vous ajoutez. Nous voulons essentiellement créer un nouveau vide statique privé, verser une méthode de commandes de registre. Et puis la façon dont nous faisons cela, nous disons enregistrement des commandes, rappel, registre d'événements, dit accueil, deux-points de commande, registre de deux-points. Et nous allons juste dupliquer cela avec Control D. Je vais dire retour à la maison, inscrivez-vous. Et ensuite, nous appellerons ça ici. Donc, enregistrez les commandes, et tout va bien, mais cela doit être fait pour chaque commande fondamentalement. Et maintenant, nous ajouterons également un événement spécifique, à savoir la copie de l'événement du joueur serveur, car l'idée est que lorsque le joueur meurt, nous devons en fait copier les données NVT du joueur mort, pour ainsi dire, à la nouvelle entité. C'est donc l' idée générale. Il s'agit également d'un regard très lâche sur les événements. Ainsi, dans notre package de cours MC, cliquez avec le bouton droit sur un nouveau package appelé événement. Et puis à l'intérieur de la Terre, nous allons créer une nouvelle classe Java. Et quand peut-on appeler cela la copie de l'événement de la couche mod à partir d'un nom long, mais ça va aller. Et puis la façon dont cela fonctionne est que cela implémente essentiellement une certaine interface. Dans ce cas, l'événement du lecteur serveur qui copie exactement à partir de celui-ci. Et ensuite, nous allons simplement implémenter la méthode ici. Et maintenant, cette méthode est appelée ou elle sera appelée une fois que nous l' aurons enregistrée lorsque cet événement se déclenche. donc ce qui est important. Et vous pouvez voir qu'il y a un ancien joueur, un nouveau joueur et un joueur vivant nous n' aurons pas besoin. Je vais juste copier ça. Encore une fois, il n'y a que trois lignes, mais nous allons juste obtenir l'ancien joueur et le nouveau joueur les transmet dans l'économiseur de données de l' entité. Ensuite, nous allons simplement obtenir les données persistantes des nouveaux joueurs, en insérant les anciennes couches ou les joueurs originaux par rapport aux nouvelles données. C'est littéralement tout ce que nous faisons ici. Et la façon dont nous nous sommes inscrits une fois de plus dans les registres de mod. Et c'est essentiellement comme ça que vous enregistrez, eh bien, tous les événements, privés, statiques, nuls, enregistrez les événements. Et c'est à peu près exactement le même que cela, car en fait l'événement de rappel d'enregistrement de commande est également un événement, pour ainsi dire. Nous allons dire que les événements du joueur de serveur copie de points à partir de cette époque, l'événement ici qui est très important, pas la classe quel événement ou l'interface, l'événement s'inscrire, nouveau mode les événements du joueur copient depuis, et c'est tout. Nous pourrions également le faire dans la ligne. Je recommande simplement de le faire comme ça. Je pense que c'est un peu plus propre. Tout va bien se passer. Je pense que vous allez aller tout à fait bien, mais c'est en fait tout ce que vous devez faire. Bien sûr, il faut aussi appeler cela ici. Alors enregistrez, enregistrez maintenant les commandes, mais la barrière de registre il y a assez, c'est en fait tout. Maintenant, c'est certainement un processus plus impliqué, surtout en écrivant ceci, n'est-ce pas ? Donc, encore une fois, beaucoup de connaissances Java, juste en pensant à cette somme, d'accord, où trouves-tu la position du joueur ? Comment puis-je l'enregistrer correctement, dans un tableau int ? genre de choses est définitivement plus compliqué. Et si vous avez des idées plus compliquées pour les commandes personnalisées, alors que cela ne sera pas facile, mais tout ira bien. J'en suis sûr. Mais pour le moment, voyons si cela fonctionne ou s'il rebondit dans Minecraft. Alors voyons tout d'abord slash home et nous comprenons que c'est vraiment bien. Appelons le retour d'abord. Aucun poste à domicile n'a été dit. C'est très bien que nous n'obtenions aucune erreur ou quoi que ce soit qui se brise fondamentalement. Et mettons-le ici. maison de l'opposition qui se déroule à cette occasion semble bien. Éloignons-nous simplement de là. Et disons que chez nous, revenons et nous sommes revenus, c'est plutôt bien. Maintenant, voyons le joueur ici. Allons jouer et ils partent. C'est une réponse. Donc maintenant, nous sommes fondamentalement loin de cela et ensuite nous pouvons dire retour à la maison, et cela fonctionne toujours. Et maintenant, enfin, mais non des moindres, voyons un peu tout l'océan. Fermons et gardons ça. Revenons dans le monde. Et voyons si cela fonctionne aussi avec le retour à la maison après être fondamentalement bien de retour dans le monde. Et c'est le cas, tout fonctionne très bien, non ? Mais ce sera déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et que vous apprendrez ce qu'il y a de nouveau. S'il reste des questions, bien sûr, hésitez pas à poser des questions dans les questions-réponses. Encore une fois, je n'aiderai probablement pas trop de détails si vous avez une commande spécifique que vous souhaitez implémenter, il va falloir essayer beaucoup de choses et j'espère que vous serez en mesure de l'obtenir , mais ce serait tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprend le nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 73. (intermédiaire) Ajouter des fleurs personnalisée: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter une fleur personnalisée à Minecraft, n'est-ce pas ? Nous allons donc accéder à notre classe OCS modèle. Et à l'intérieur de là, nous allons simplement copier la récolte de navet. Maintenant, c'est très important car cela a utilisé le bloc de registre sans élément Bloquer. Nous devons changer cela. C'est très important. Sinon, nous allons rencontrer un problème et ce sera la rose rose avec un nom ici. Pensez aux lignes et soulignez les lignes. Et bien sûr, nous devons également ajouter le mode Groupe, plus de groupe d'articles départ cheval, afin que nous ayons ceci dans le bon groupe d'articles. s'agit pas d'un bloc maternel, mais d'un bloc de fleurs. Et le bloc de fleurs prend trois paramètres différents. Le premier est un effet de statut. Nous allons donc dire que ce sont des effets qui sont lumineux et une ration défectueuse. Fait intéressant, c'est en quelques secondes. Nous devons en fait préciser quelque chose qui n'est pas trop grand, rien de tel que 200 ou quelque chose comme ça. Et puis nous allons copier la tulipe rose, voyons voir. Pourquoi pas ? C'est vrai, et c'est en fait le bloc terminé. Passons maintenant aux fichiers JSON. Elles sont donc intéressantes. La situation réelle du bloc n' est pas trop folle. Juste une sorte de copie que, en passant, haha, ajoutons également cela à la méthode initialisée ici dans le client de cours MOOC. Ce sera la rose rose, très importante que nous ajoutons à cela également. Vous pouvez voir que le bloc dit que Jason n'est pas si fou que ça. Et puis, bien sûr, la traduction ici sera juste des lignes de soulignement roses. Et puis voici une rose rose sans trait de soulignement, rose rose, voilà. Mais le modèle de bloc est un peu différent ici. Ce sera donc ce qui est intéressant dans ce tutoriel, vous pouvez voir qu'il y a la croix parentale ici, puis les textures sont également croisées, puis elles pointent vers la rose rose dossier de blocs extraordinaire. Et c'est également très intéressant car le modèle d'article gagne exactement la même texture ici. Au lieu d'avoir un modèle d'élément normal associé à un bloc où il est court, affiche en quelque sorte le bloc en 3D. Cette fois, nous prenons simplement la même texture mais nous l'utilisons comme texture de l'article. Et ensuite, nous allons également copier cela, est ajouté au dossier bloc extras. Et c'est à peu près tout ce que nous devons vraiment faire. Voyons maintenant si ça marche ou si ça rebondit et densité Minecraft peut voir que la rose rose a été ajoutée au jeu et je considère comme bas. Et ça a l'air vraiment, vraiment cool. C'est donc vraiment incroyable. Eh bien, mais c'était déjà le cas pour cette très courte conférence ici. Lors de la prochaine conférence, nous allons en fait jeter un coup d' œil à la façon dont vous pouvez ajouter la rose rose ou vous êtes habitué à un bloc floral à un pot. Et je suppose que je vous verrai lors de la prochaine conférence. Oh, oui. 74. (Intermédiaire) de pots: Bon, bienvenue au cheval en tissu pour 118. Et dans cette conférence, nous allons examiner comment ajouter une palette personnalisée planifiée à Minecraft. En fait, c'est très facile et ce que nous allons faire, c'est que nous allons vraiment copier le recadrage éternel ici parce que nous allons devoir utiliser le bloc sans objet cassé à nouveau. Et ce sera les rangées de soulignement rose des potiers. Et puis le même nom ici, soulignement en pot, roses, lignes de soulignement. Et ça va être un bloc de pots de fleurs. Maintenant, le premier paramètre ici va être plus de blocs qui grandissent et grandissent l'ego. Et ensuite, les réglages vont être reportés de la partie où l'allium les ensembles va nous rendre la vie un peu plus facile dans ce cas. Ensuite, ce qui est très important chez le client ici, nous devons en fait appeler ce rendu plus tard pour le produit rose rose également. Et c'est presque tout le code dont nous avons besoin. Maintenant, nous avons juste besoin d' ajouter un bloc reste Jason qui va d'abord copier ça. En fait, pas trop fou. Il s'agit simplement d'un modèle de blocs. Ajoutons également la partie qui est grossière ici. Maintenant, celui-ci ne devrait être nécessaire que. La traduction actuelle ici, si vous avez également un point mort moderne, qui vérifie essentiellement quels sont les noms et les affiche en haut. Cela n'est donc pas toujours nécessaire. Et puis le modèle de bloc est vraiment intéressant pour l'immeuble de terrain d'audit. Et ça va être ainsi parce que tout d'abord, le parent est une croix de pot de fleurs. Et ensuite, il pointe vers une texture végétale. Et cela montre simplement la texture réelle de votre bloc que votre plante ou votre farine utilise dans ce cas, de sorte que celle-ci ici même. Et maintenant, ce qui est très intéressant, bien sûr , c'est parce que nous n' avons pas besoin d'un modèle d'article ici parce que, eh bien, il n'y a pas d'article associé d'article associé, car nous allons obtenir ce bloc en cliquant avec le bouton droit sur le pot de fleurs avec ces rangées particulières. Et ce qui est aussi important, jetons un coup d'œil à la table de butin. Je vais donc copier cela sur tout ce qui est bien sûr disponible pour vous dans le référentiel GitHub ou un individu tout aussi. Et vous pouvez voir que nous faisons simplement tomber une rose rose ici ainsi que le bloc de fleurs, des parties de fleurs. C'est donc très important. Je viens de le comprendre via les tables de luge ici. Ou nous pouvons simplement aller ici et nous pouvons voir les informations informatiques ici. Et c'est exactement la même chose. Donc, pas de soucis, il y a en fait assez simple, n'est-ce pas ? Et maintenant, pour ce qui est de l'achèvement, voyons si ça marche ou si ça finance de retour dans Minecraft et j'ai déjà mis des pots et voyons voir. là que tu y vas. Je peux placer les rangées là-dedans et ça a l'air absolument stupéfiant. Et voyons simplement si je reviens à notre survie. Que vous alliez Les deux extrémités du pot de la goutte de fleur réelle. C'est très, très joli. Rep, c'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai au cours de la prochaine conférence. Oui. 75. (intermédiaire) Ajouter des sons personnalisés: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter des sons personnalisés à Minecraft. L'ajout de sons personnalisés est donc un processus assez simple en soi. Il est également très facile de poser ce son. Cependant, pensez que la chose la plus difficile ou pourrait être l'obtention des fichiers audio appropriés. Donc, tout d'abord, nous avons besoin de quelques fichiers JSON pour cela. Nous allons avoir besoin d'un fichier JSON dans le cours MC. Plus vieux, ici. Cliquez donc avec le bouton droit sur un nouveau fichier appelé Sounds dot-dot-dot Jason. Ensuite, dans le même dossier, nous allons créer un nouveau dossier appelé sons. Tellement important qu' ils soient tous deux appelés sons et sons. C'est donc très important. Et je vais déjà copier un de ces sons. Ce sera le fichier audio. Comme vous pouvez le voir, le trait de soulignement de la tige de descente a trouvé un trait de soulignement ou cet OGG. Il est très important que tous vos fichiers audio soient OGG et assurez-vous qu' ils sont tous mono. Mais ils ne peuvent avoir le type d'échantillon mono ou le canal modal, sinon, ils ne vous plairont pas avec cela, gardez cela à l'esprit. Et ils doivent être des fichiers OGG et ne pas simplement prendre des fichiers MP3 et les renommer. Vous devez obtenir un convertisseur pour les convertir correctement. Gardez donc cela à l'esprit et dans les sons Jason ici, nous devons les définir. Nous allons donc simplement mettre des crochets bouclés et ensuite nous allons écrire dans le nom. C'est donc en fait le nom. Nous allons enregistrer cela sous trait de soulignement de la tige de descente, trouvé un trait de soulignement. Ou maintenant, j'aime généralement prendre ce nom et qu'il soit le même que le fichier. Cela rend les choses beaucoup plus faciles. Ensuite, nous allons ajouter un sous-titre ici. Ce sera le deux-points de sous-titre et un deux-points ou deux points de cours MC , nous allons prendre le même nom. Si rigoureux va commercialiser, copier, Control C puis Control V, puis virgule. Ensuite, nous allons avoir une liste de sons. va donc s'agir d'une liste, donc des crochets ici. Et puis à l'intérieur d'ici, nous aurons trouvé la tige d' abattage du côlon MC Coors. Et ce doit être le nom de ce fichier. s'agit bien sûr que de votre numéro de modèle. Donc, selon votre mélodie, cela change, le sous-titre est en fait quelque chose que vous pouvez placer dans le dossier lang, comme n'importe quel fichier JSON, qui s'affiche lorsque vous avez sous-titres sur et cet endroit sonore, alors cela est affiché. C'est donc quelque chose que vous pouvez également ajouter maintenant à l' enregistrement des sons. De quoi avons-nous besoin ? Eh bien, dans notre package de cours MC ici, cliquez avec le bouton droit sur un nouveau package appelé son. Et puis, à l'intérieur, nous allons créer une nouvelle classe Java appelée Modus sons. Et cela va être assez simple. Nous allons juste avoir besoin d'un événement sonore statique privé, d' ancien événement sonore de registre avec un paramètre de chaîne appelé name. Et ensuite, on va juste faire ce qui suit. Nous allons juste créer un identifiant, un identifiant de carte, qui est un nouvel identifiant avec le mod de cours MOOC mon ID et le nom. Ensuite, nous allons retourner le registre, qui s'inscrira avec un événement de son point de registre avec l'ID et le nouvel événement sonore. Vous sonnez un événement et transmettez l'ID. Encore une fois, c'est pourquoi nous créons une pièce d'identité car nous devons la transmettre deux fois, une fois pour l'enregistrement et une fois pour l'événement sonore réel. Et à quoi cela ressemble-t-il ? Eh bien, un événement sonore statique public appelé abaissement, soulignement de tige, trait de soulignement trouvé ou égal à un solvant de registre. Maintenant, voyant un soulignement, un trait de soulignement de tige a trouvé un soulignement. Et puis assurez-vous que ce qui est écrit ici est exactement le même que cela. Et c'est le cas. Et ça devrait bien se passer. Et c'est à peu près tout ce que nous devons faire pour enregistrer le son. Maintenant, bien sûr, nous devons y jouer d'une manière ou d'une autre. Et ce que nous allons faire, c'est que lorsque nous trouverons un ou dans la canne d'arrêt, nous allons jouer ce son. Oh, allons juste entrer ici. Nous savons donc que c' est vrai. Nous savons donc que c'est le moment où cela se produit. Et ce dont nous avons besoin, c'est le monde, comme le monde ici. Et nous pouvons simplement dire jouer du son et passer le joueur, une position cliquée, c'est-à-dire la position à laquelle nous sommes. Le son de lui sonne un peu que tige d' abattage a trouvé ou et la catégorie sonore, on va juste prendre des blocs C'est très bien. Volume 1 et pitch 1 également. Il existe également un autre moyen de placer comment cela, c' est-à-dire via le joueur. Cela devrait donc également fonctionner pour que vous puissiez voir le joueur jouer des sons. Il y a différentes façons, mais c'est aussi très bien. Cela devrait être très bien ici dans ce cas. Et cela devrait alors jouer ce son ici. Donc, je suppose que pour l' achèvement, voyons si ça marche. Très bien, Francis de retour à Minecraft, voyons et essayons de trouver une salle d'opération. Et en fait, ils m'ont laissé rapidement augmenter le son un peu plus. C'est là. Et je peux bien sûr le spam. Je peux juste le maintenir enfoncé. Et puis, à un moment donné , ça devient ennuyeux. Et ce qui est vraiment cool, c'est parce qu' on le place dans la catégorie des blocs. Maintenant, il ne joue plus parce que, eh bien, nous avons désactivé les sons du bloc, donc c'est vraiment cool. C'est une question à laquelle il faut penser. Et c'est en fait à quel point il est facile d'ajouter un son personnalisé à Minecraft, n'est-ce pas ? Et je vous entends déjà crier, et bien, qu'en est-il de l'ajouter à un bloc, n'est-ce pas ? Qu'est-ce que je ne peux pas changer le bruit de rupture d'un bloc et des trucs comme ça ? Bien sûr. Et c'est exactement ce que nous allons voir lors de la prochaine conférence, où nous allons essentiellement ajouter, eh bien, le son de rupture, de placement et de pas. Il y en a quelques autres, mais cela va se faire au cours de la prochaine conférence. Ce serait donc pour celui-là même. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 76. Groupe de son de bloc personnalisé: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter un groupe sonore Bullock client au jeu. Et qu'est-ce qu'un groupe de sons en bloc ? Eh bien, un groupe de chansons est composé de cinq villes différentes, et ce sont la pause, le pas, le lieu du succès et le son complet. Et nous allons essentiellement ajouter cela pour créer un son personnalisé ou notre lampe de recalcul. Mais c'est l'idée générale. Tout d'abord, je vais copier les cinq fichiers OGG différents. Donc, les sons ici, et nous allons juste les copier. Ceux-ci sont bien sûr, tous disponibles pour téléchargement. Et ensuite, nous allons entrer dans nos sons, Jason et moi allons également copier le contenu dont nous aurons besoin. C'est à peu près la même chose que cela, avec des valeurs différentes ici. Nous avons juste la lampe télécom ici. Ensuite, pour les sous-titres, peu près le même taux ou le même ID MOD et ensuite quel que soit le nom ici, lorsque le son est nommé exactement comme le son ici. C'est presque tout ce qu'il y a à faire. Donc, ce ne devrait pas être trop fou dans l'ensemble. Et ensuite, ce que nous devons faire dans notre classe de sons mode ici. Nous allons juste dupliquer cela et nous allons appeler cela la lampe de soulignement de recomptage come, la rupture de soulignement. C'est donc le premier, le résultat, lampe de soulignement, la rupture de soulignement. Et ensuite, nous pourrons dupliquer cela cinq fois. Le second sera alors le son de pas. En plus, modifiez également le nom ici et assurez-vous qu'il est correctement orthographié. C'est également très important. Et ce sera l' endroit où le son sera avec celui-ci, lieu, cette série, et frapper là aussi. Enfin, enfin, nous avons le son complet. Et puis ici, ALL aussi. vrai, donc ce sont les cinq événements sonores dont nous allons avoir besoin. Vous pourriez aussi penser à les sauver d'une autre façon, surtout si vous en avez beaucoup d'autres, mais cela va bien se passer. En fait, c'est bon. Et maintenant, bien sûr, nous avons également besoin d'un groupe de son bloc. Maintenant, vous savez, nous pourrions soit faire cela dans une classe distincte, soit nous pouvons simplement le mettre dans cette classe. Cela va également marcher. Il va donc s'agir d'un groupe de son public statique, de bloc final, ou d'un cout venir des sons de soulignement. Et cela équivaut à un nouveau groupe Sound avec un F1, F. Il ne s'agit donc que de la hauteur et du volume. Et puis essentiellement tous ces cinq sons, nous allons avoir des sons de mode, DOT, frein. Sons de mode, point, pas, sons de mode, points, lays. Le mode semble néerlandais. Tous. En fait, je crois qu'il est frappé premier, puis son mode sonne point o, oui, dans cet ordre. Mais nous allons juste vérifier deux fois. Donc, le bouton central de la souris cliquez sur le groupe de son s-block. Et pourtant, un son complet est le dernier. Cela devrait être exact ici. Et alors ce groupe de blocs sonores va, comment l'utiliserons-nous ? On va juste dans la classe des blocs de boue. Et ensuite, pour notre lampe télécom ici, nous pouvons simplement ajouter un autre paramètre aux paramètres du bloc et ce sera ces sons. Et puis nous disons simplement que le mode sonne ça ou un son de calcium. Formatons ça un peu différemment comme ça, l'ego, et ce serait tout. C'est à peu près tout ce que nous devons faire. Bien sûr, nous avons besoin des sons, Jason. Définissez tout ici, faites les sons ici, faites les fichiers dans notre dossier Sounds à nouveau, OGG correct est correctement formaté ou converti. Et aussi en mono, très important. Et puis il suffit d'ajouter le plus de sons ici. Pour l'instant, pour l'achèvement, voyons si cela fonctionne. On a déjà trouvé un suspect à Minecraft. Et tout d'abord, augmentons le volume juste un peu pour que nous ayons cela. Voyons le set, le son de placement réel. C'est tout à fait exact. C'est complètement personnalisé. Voyons le bruit de rupture. C'est génial. Cela fonctionne donc aussi. Cela se fixe, en installez quelques-uns ici et passons là-dessus. Ils s'en vont. Et cela devrait également fonctionner lorsque j'ai suivi la diapositive suivante, je ne suis pas sûr à 100% pourquoi cela ne fonctionne pas. C'est très furieux. Je pense que cela devrait fonctionner comme ça. Et puis le son de succès serait le suivant. Je crois. En dehors du succès dans le son complet, tout semble fonctionner parfaitement ici. Je ne suis donc pas sûr à 100 % de l'endroit où ils sont appelés, pour être honnête, parce que cela devrait généralement être la force. Est-ce vrai ? Donc, quand vous tombez dessus, mais il n'y a certainement rien là. Et puis le casser ne semble pas tout à fait fonctionner. Alors sortons comme un pioche x, y, alors voyons ce que, ok, la rupture fonctionne définitivement. Mais ce n'est que le bruit de chute qui ne fonctionne pas. Mais parfois, ces choses arrivent. Alors, tu y vas. Très bien. Donc, après l'avoir revu, je ne suis toujours pas sûr à 100% pourquoi ils tombent ici ne fonctionnent pas pour quelque raison que ce soit, cela n'est tout simplement jamais appelé. Mais quel que soit le cas, le son complet n'est vraiment pas trop fou ou trop important. Je dirais, Oh, ça va probablement aller très bien. Quel que soit le cas. Les autres, bien sûr, des travaux qui sont beaucoup plus importants dans ce cas. Donc, tout devrait bien se passer et ce serait déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il a appris quelque chose de nouveau. Je vous verrai au cours de la prochaine conférence. Oui. 77. (intermédiaire) Ajouter des disques musicaux personnalisés: Très bien, bienvenue au cours de tissus pour 118. Dans cette conférence, nous allons ajouter un disque de musique personnalisé à Minecraft. Ainsi, un disque de musique personnalisé, pire, nécessite également un événement sonore personnalisé. Ce que nous allons faire, c'est que nous allons juste copier ça une fois de plus. En fait, cela va être très facile à comprendre. Vous pouvez voir que nous avons juste le nom ici. Encore une fois, c'est le nom que nous allons lui donner dans la classe des sons du modèle dans un instant. Et puis le nom ici fait évidemment référence à un fichier audio, encore une fois un fichier OGG. Et dans ce cas, il est encore plus important que ce soit en mono, car s'il est en stéréo, vous allez entendre cela essentiellement sur le monde entier, l'ensemble du serveur. Sinon, comme il doit être mono, très important, très important dans ce cas. Et passons au modèle Sounds ici. Et copions ça et appelons cette bagarre de soulignement de la barre D. Et ici bien sûr aussi, bagarre de bar, en s'assurant que tout est écrit correctement. C'est très important. Et ensuite, dans la classe plus d'objets nous allons créer un nouvel article. Cependant, bien sûr, ce dont nous avons besoin, c'est tout d' abord un élément de disque de musique MOD, malheureusement, car encore une fois, le constructeur ici n'est pas accessible. Ainsi, l'élément de disque de musique survole, créez un constructeur correspondant super. Et ensuite, nous allons juste copier le public qu'ils sont. Et ensuite, nous n'avons plus jamais à jeter un coup d'œil là-dessus, fondamentalement. Et ensuite, nous allons juste copier les graines de navet ici. Et on va juste faire en sorte que la barre souligne Berle, souligne la musique, le disque de soulignement. Puis la même année également, la musique roll de soulignement du bar a souligné le disque. Et bien sûr, il s'agit d'un élément de disque de musique MOD. Le premier paramètre est la sortie du comparateur. Alors, qu'est-ce qui est produit lorsque vous placez un comparateur à côté de celui-ci ? Et puis on va dire, n'a pas l'air de Barbara. Maintenant, une autre chose très importante est ici, car vous pouvez voir que c'est vrai. Cela doit donc être vrai parce que le rôle de barb, bien sûr, est un ruisseau. Par conséquent, vous aimez que le disque de musique soit un flux, donc c'est très important. Et ensuite, nous allons également en mettre un compte maximum pour que nous ne puissions empiler qu'un seul d'entre eux. Et puis ce qui est également très important, c'est la traduction du E et nous souligne le fichier JSON. Je vais en fait copier les deux parce qu'il y en a deux. Il y a le disque de musique Barb Roll, qui est juste le nom du disque. Et ensuite, la description est essentiellement ce qui se passe. Vous savez, si vous le survolez. Et cela dit généralement simplement par qui vient la chanson, puis le nom de la chanson. Et j'ai également ajouté la licence ici. C'est donc juste en dessous de CC 0 ou c'est du domaine public. En théorie, vous pourriez utiliser ce rôle de barb aussi dans votre ancien modèle, faire ce que vous voulez. Mais c'est pourquoi j'ai ajouté cela aussi. C'est vrai ? C'est à peu près tout ce dont nous avons besoin, sauf bien sûr, pour un modèle d'article et une texture pour cela. Mais c'est quelque chose que nous avons vu tellement de fois maintenant que ce ne serait pas trop fou à ce stade. Cela pointe vers la texture du coiffeur ou du disque de musique dans le dossier d'éléments, ou bien sûr également la copie qui s'est produite. Donc, disque de musique Barbaro. là que tu y vas. Et avec ça, nous sommes presque prêts à partir. Et nous allons juste entendre si cela fonctionne. Ou je suis, par exemple, de retour dans Minecraft et ils peuvent voir la musique qui y a été ajoutée avec succès ici. Et il suffit de le mettre en place. Et c'est là. C'est assez fort, mais c'est aussi parce que j'ai ma musique. Donc, c'est très bien. Et cet endroit, normalement, un FI s'envole. On peut l'entendre de moins en moins. Et puis il a complètement disparu. Et puis si nous revenons, nous y allons, ça continue. C'est vraiment génial. Et nous allons aminer, tout fonctionne très bien, comme on s'y attendait. caoutchouc. Ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous en apprendrez de nouveaux. Et je vous verrai au cours de la prochaine conférence. Oui. 78. (intermédiaire) Ajouter un modèle de bloc personnalisé dans Minecraft avec Blockbench: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons examiner les modèles de blocs 3D personnalisés. Et comment allez-vous fabriquer ces modèles de blocs ? Eh bien, on va les faire avec un banc de bloc. Il s'agit d' un programme disponible. Je vais le relier aux ressources quelque part. Et cela vous permet essentiellement de créer modèles 3D très cool pour vos blocs, ce n' est pas si difficile en ayant déjà un modèle de bloc préparé ici pour moi que l'Oracle peut blaster. Il s'agira donc essentiellement d'un haut fourneau, spécialement fabriqué à partir d' un calicot dans ce cas n. Il y a, pour cet exemple particulier, deux choses que nous devons garder à l'esprit. Donc la première chose est que vous aurez bien sûr également accès à ce fichier de banc de blocs. Et ce que vous allez faire , c'est que vous accéderez à Export de fichiers, puis à Exporter le modèle d'élément barre oblique de bloc. Cela va exporter un fichier JSON comme vous pouvez le voir. Et vous pouvez simplement le faire. Je peux passer outre cela. Et puis le fichier JSON ressemblera à ceci. Il suffit donc de l'ouvrir ici et vous pouvez voir qu'il y a une sorte de quoi cela ressemble. Vous avez la texture ici , puis tout un tas d'éléments. Ce sont donc essentiellement les éléments 3D. Et puis il y a aussi des choses qui sont ici dans l'écran. Nous pouvons également jeter un coup d' œil à l'écran si vous allez dans le coin supérieur droit ici, affichez. Et en gros, ça a changé à quoi ça ressemble, peut-être que tu es comme, Oh, c'est peut-être un peu trop gros. Vous pouvez être comme, oui, rétrécisons simplement que comme le 2.5 mai soit comme 0,25.25.25 ou quelque chose comme ça. C'est peut-être la taille qui est meilleure. Et ensuite, vous pouvez également le changer de l'autre côté. Quelque chose comme ça. Et à la première personne, peut-être que ça va bien me convenir. Ça va aussi bien se passer. Lorsque vous le portez sur la tête. Cela a l'air très étrange, mais c'est sûr. Mais si c'est sur le terrain, c'est peut-être un peu trop gros. Donc, peut-être voulez-vous changer ce point pilote pour quand, quand, pour, afin que vous l'ayez comme ça dans le cadre de l'article. Peut-être voulez-vous faire tourner ça, non ? Donc, peut-être que la rotation est censée être quelque chose comme ça et quelque chose comme ça. C'est peut-être une meilleure façon de le faire. Et puis, dans l' interface graphique, pensez en fait que l'interface graphique est parfaite. Et ici, vous pouvez changer beaucoup de choses dans le banc de blocs. Ce ne sera pas un tutoriel d'espace purement bloc de banc, mais plutôt comment vous pouvez obtenir des trucs du banc de blocs ici. Lorsque je l'enregistre également comme modèle, le glossaire est s'il vous plaît. Et puis il était déjà enregistré en tant que fichiers JSON. Nous devrions avoir ce rechargement. C'est là que tu y vas. Et puis ça change aussi ici , de sorte que tout va bien. Et c'est en fait tout ce dont vous avez besoin. Nous avons donc essentiellement besoin de ce fichier JSON. Je vais copier ça en tant que modèle de bloc, non ? Nous allons donc copier cela en tant que modèle de bloc qui contient déjà les éléments 3D là-dedans. Maintenant, ce dont nous avons besoin, c'est que nous avons besoin, bien sûr, de la texture. Je vais donc mettre ça ici dans les textures Brock. Cependant, ce que je vais faire, c'est que je vais également créer un nouveau dossier dans le dossier textures appelé machines, et nous allons y mettre ça. Ce n'est pas strictement nécessaire, bien sûr, car cette texture serait aussi une texture bloc, mais je la trouve juste un peu plus agréable. Et ensuite, ce que nous devons faire, c'est bien sûr que nous devons spécifier ici les cœurs MC, puis les machines en obliquent le nom. est très important que nous ajoutions à notre identifiant de modèle, puis le nom des mots plus anciens ici, et le reste ici est tout à fait correct. Bien sûr, nous avons toujours besoin d'un modèle d'article pour cela. Nous allons également le faire. Assommons les choses faciles abord et avant tout ici, non ? Pour que l'Oracle puisse exploser, c'est très bien. Cela fait simplement référence au modèle de bloc ici. Et puis le bloc indique Jason, pour l'instant, ce que nous allons faire, c'est on va juste en faire un normal. La porte d'explosion. Et cela va simplement se référer à la dernière chaîne. Ça va bien se passer. Et pour la même chose pour le bloc, nous allons juste faire un bloc tout à fait normal ici. Nous allons juste copier, disons la rose rose parce que c'est un bloc de registre et c'est le blaster de soulignement Malcolm Oracle. Alors la même chose ici ou il ne peut pas venir de soulignement blaster. Et pour l'instant, ce sera un bloc normal. Mais nous allons y jeter un coup d' œil dans un instant. Qu'on va vraiment devoir changer quelques choses ici. Nous matérialisons le métal dans le groupe d'objets mod, cheval, ce qui va être tout à fait parfait. Pour l'achèvement, ajoutons également la traduction ici ou un blaster de soulignement. Donc, bien sûr, le résultat ne souligne pas l' explosion ou il y a longtemps. Et maintenant, tout comme un bloc normal, nous l'avons ajouté. Maintenant, ajoutons également le non opaque ici. C'est très important. Et puis ajoutons-le aussi à la découpe. Il s'agit donc de toutes les étapes que vous devrez suivre pour que cela soit également affiché correctement. Et ensuite, nous verrons deux limitations avec la façon dont cela est mis place et nous verrons également comment les corriger. Allons donc dans Minecraft et voyons le modèle 3D personnalisé pour la première fois. Ou si on dit qu'une microfinance peut voir le recalc qu'une blastula a été ajoutée au jeu. Et quand je l'ai posé, on voit qu'il y a deux choses très intéressantes. Tout d'abord, eh bien, ce n'est pas vraiment dans la bonne direction, non ? Comme vous pouvez le constater, il est toujours orienté dans la même direction, qui sera en fait vers le nord comme vous pouvez le voir. Mais c'est très intéressant. Et nous avons aussi, en gros, un cadre de délimitation très étrange autour de lui, qui n'est certainement pas tout à fait ce que vous voulez. Donc, c'est un autre qui va bien, doit être réparé d'une manière ou d'une autre. Mais ce sont là les deux limites pour le moment. Mais ces deux éléments peuvent être corrigés assez simplement, n'est-ce pas ? Pour résoudre les deux, nous avons besoin d'une classe de blocs personnalisée pour cela. Donc, dans votre package personnalisé, cliquez avec le bouton droit de la souris sur la nouvelle classe Java appelée recalc come under, non soulignement, explose ou bloque, ils vont. Et cela va étendre le bloc de face horizontal. Il est très important que nous choisissions celui-ci. Et nous allons créer un constructeur correspondant super. Et la raison pour laquelle nous choisissons cela est que si j' appuie sur Control H après avoir cliqué dessus, vous pouvez voir qu'il y a d' autres blocs qui prennent également cela à partir d'ici. Par exemple, certains comme le bloc de lit où il est solide comme ça. C'est très intéressant. Et d'habitude, je m'attendais le bloc abstrait Ernest s'étende également à partir de là. Non, en fait, d'accord. C'est avec des blocs d'entités. Assez juste. Mais il y a aussi la propriété en face ici. C'est l'idée générale car lorsque vous placez le bas du four, mais elle regarde toujours dans votre direction. Donc, ce que nous allons faire, c'est que je vais juste copier rapidement la direction ici. Donc ce n'est rien de trop fou, juste une grande propriété égale à la propriété commence à faire face. Et je vais copier quelques autres choses qui vous sont bien sûr toutes disponibles dans le référentiel, le dépôt GitHub ou l' individu tout aussi. Nous avons besoin de la méthode d'ajout de propriétés. Nous l'avons déjà vu et nous allons utiliser le miroir et la méthode Rotate. Vous avez essentiellement cette rotation de la manière correcte et ensuite ils obtiennent la méthode de l'état de placement fait en sorte que le revêtement soit toujours transformé en une manière que le bloc soit face à vous. Maintenant, bien sûr, lorsque nous avons les blocs de face une propriété, nous devons bien sûr également modifier les états de blocs JSON. Il y a aussi quelque chose que je vais copier, mais c'est plutôt simple. Vous pouvez voir qu'il est orienté vers nord est juste le modèle de bloc normal. Sinon, nous avons juste tourné de 90, 180 et 270 degrés. Et vous pouvez toujours vérifier les bibliothèques externes en bas à droite dans le dossier des ressources, Minecraft bloque les états. Et puis, par exemple, regardez le haut fourneau, par exemple, c'est sûr. Et c'est exactement la même chose. La seule chose, c'est que ça a aussi une propriété de couvercle, mais ça va tout à fait aller. C'est donc quelque chose où vous pouvez jeter un autre coup d'œil là-dessus et comment vous devez le faire pivoter. Et c'est essentiellement là que j'ai obtenu ces chiffres. Eh bien, nous n'allons pas immédiatement revenir dans Minecraft parce que maintenant, diriez-vous de la boîte de sélection ? Le cadre de sélection sera-t-il ce qu'on appelle une forme voxel ? Et c'est la seule chose qui est vraiment ennuyeuse à faire dans le banc de bloc, surtout avec ce modèle. C'est juste très agaçant car généralement ce que vous voudriez, c'est que vous vouliez centrer le pivot, n'est-ce pas ? Donc tout d'abord, vous verrez que si je centre correctement le pivot, il a des valeurs très bizarres. Je recommande vivement d' aller un peu plus haut, droite ou un peu en dessous, arrondissant ou en bas. Sinon, vous aurez un mauvais moment avec sa rotation. Parce que ce que nous allons devoir faire, c'est que nous allons devoir faire une rotation trois fois pour que, dans toutes les directions, nous obtenions une nouvelle forme de voxel. C'est exactement comme ça que ça va se passer et c'est très ennuyeux. Mais c'est la meilleure façon de travailler jusqu'à présent. S'il y a d'autres moyens, bien sûr , n'hésitez pas à contacter les questions et réponses et à m'en parler. Donc, pas de soucis là-bas. Ce que nous allons faire, c'est que nous allons d'abord aller dans File , puis dans les plugins et obtenir le plug-in mod utils ici. C'est de JDK deux à deux. Et que ce soit, c'est très important, c'est juste, vous savez, vous pouvez simplement aller à la recherche disponible pour mod utils, est-ce pas ? Je l' ai déjà installé. C'est pourquoi il ne vient pas ici. Cliquez sur le bouton Installer et installez-le sur votre banc de blocs. Et ensuite, ce que vous aurez, c'est vous aurez besoin de prendre tous les cubes et toutes les choses que vous avez et de les placer sous un groupe ici, formes de groupe ou de voxel, exactement écrites comme ceci. Pas d'espaces, rien d' écrit exactement comme ça. Et lorsque vous avez cela, vous pouvez tous les sélectionner, accéder à Fichier, Exporter, puis Exporter la forme voxel. Maintenant, nous sommes bien sûr dans le fil que nous utilisons Rubrik, nous voulions donc exporter les mappages de fils. Nous allons dire confirmer, et nous allons l'enregistrer sous forme de voxel N. Comme vous pouvez le voir, je l'ai déjà enregistré et nous pourrons ensuite jeter un coup d'œil à cela également. Je vais donc simplement déplacer cela inhérent pour que nous puissions y jeter un coup d'œil. Mais c'est à ça que ça ressemble. Parfois, vous obtenez ces nombres fous, ce que vous devrez faire c'est de les arrondir à l'entier le plus proche. ne s'agira donc que d'un processus manuel. Par exemple, celui-ci n'est qu'un 0, n'est-ce pas ? Parce que c'est négatif trois à la puissance du négatif 15, donc c'est 15 zéros. Et puis un négatif, comme un 0,3, c'est comme si c'était 0. Nous devons donc le faire manuellement. Parfois, c'est juste la façon dont le banc de blocs exporte parfois. C'est très bizarre. Donc ça va juste être, et c'est juste la forme du voxel. S'il s'agit de regarder vers le Nord, ce que nous devons maintenant faire, c'est quand vous devez le faire pivoter de 90 degrés. Et la première chose que vous remarquerez dans cet exemple particulier, c'est qu'il est un peu décalé. Vous pouvez donc voir que la précision, quelle que soit la raison compense, nous devons en fait la déplacer vers le milieu. Et ensuite, ce sera au nord, à l'est, au sud, à l'ouest. C'est donc maintenant orienté vers l'ouest. Nous devons maintenant exporter à nouveau. C'est encore une fois face à l'ouest, non ? Donc, quand je remplace le w, nous pourrons jeter un coup d'œil à ce w ici. Cela va être très intéressant aussi parce que nous devons le refaire, donc 0. Et puis ça va être 14 et ça va être 13. Et ce que vous verrez, c'est que les chiffres changent un peu. Et, vous savez, si vous avez assez de temps et de puissance cérébrale, vous pouvez probablement trouver vous-même comment changer ces chiffres. Mais c'est bien sûr de la folie parce que nous avons tellement de choses ici. Et plus le bloc sera compliqué, plus cela sera compliqué. Nous allons juste le faire pivoter à nouveau et, bien sûr, une fois de plus, réinitialiser pour qu'il fonctionne bien. Donc, c'est ce que vous devez vraiment faire attention c'est de ne pas changer le nombre ici, mais vous devrez le changer comme en utilisant les flèches, c' est que si vous changez le nombre que chacun de ces cubes ça marche juste. Juste, il suffit d'emménager et d' eux-mêmes est un bloc très étrange, ce qui est un programme très étrange. Mais c'est actuellement, du moins à ma connaissance, le meilleur que nous ayons. Malheureusement, il s' agira bien sûr de l'orientation sud. Et puis tournons immédiatement vers l'est aussi , qui peut simplement faire cela et ensuite le faire. Et voilà que tu y vas. Maintenant, nous devrions tout avoir ici. Nous allons donc dire exporter la boîte ou la forme, ou l'Est aussi. C'est génial. Et maintenant, ce que nous allons faire, c'est que nous allons prendre le Nord et l'Ouest et l'utiliser immédiatement. Nous allons donc prendre ce contrôle C pour le copier. Et ensuite, ce que nous voulons, c'est que nous voulons une forme voxel finale privée ou une forme de soulignement n. Donc cela est en forme de Nord. Ensuite, nous allons simplement importer la classe stream, la classe voxel shape et la classe booléenne par fonction. Et ce que je vais faire, c'est que je vais juste copier ça quatre fois. Là, nous avons l'année Nord, Est, Sud et Ouest. Assurez-vous que vous copiez sur les bons noms ici. C'est très, très important. Il y a eu des gens qui, vous savez, ont confondu l'un avec l'autre. C'est donc très important. Et là encore, il faut nettoyer ça, c'est tout à fait très bien. Ce sont des flèches de mise à la terre, des erreurs d'arrondi en virgule flottante. Parfois, cela peut arriver. C'est juste ce que c'est. Mais ce n'est pas trop fou. Il va y avoir le sud. C'est là que tu y vas. Alors, ça va être à l'est. Et ensuite, nous avons les quatre formes de voxel ici. Comme je l'ai dit, c'est un processus très fastidieux, mais vous n'aurez qu'à le configurer une seule fois, puis cela fonctionnera. Si vous avez bien sûr modifié le modèle, vous devrez également modifier les formes des voxels. Oui, donc c'est juste ce que c'est. Nous ne pouvons vraiment rien faire d'autre avec ça. Ensuite, nous voulons remplacer la bonne méthode de forme de contour, celle-ci ici. Et je vais également copier le contenu. Comme je l'ai dit, tout est à votre disposition, mais cela devrait être assez explicite. Nous avons juste une déclaration indiquant qu'elle regarde la propriété en face et qu'elle va juste dire, hé, si la face est au nord, alors nous allons retourner la forme vers le nord. S'il est orienté vers le sud, nous reviendrons vers le sud et ainsi de suite. Donc c'est vraiment tout ce que cette méthode vraiment compliquée dans les formes voxels. Et comme je l'ai dit, il n'y a malheureusement pas une autre façon de le faire correctement ou plus facilement à ceux qui sont bien sûr tous disponibles pour vous. va de même pour le modèle ici. Faisons simplement pivoter et ensuite vous verrez que quelle que soit la raison pour laquelle il est rouge et qu'il y a Mac. C'est tout à fait très bien. C'est comme je l'ai dit, également disponible pour vous, le fichier JSON, que vous pouvez télécharger. Et puis nous devons simplement le faire au lieu de créer un bloc, nous voulons en faire un bloc de blaster au calcium ou E. Et puis, oh, bien sûr, nous devons aussi rendre cela public et tout fonctionne, n'est-ce pas ? Cela devrait donc être tout ce dont nous avons besoin. Comme je l'ai dit, c' est assez fastidieux, mais je suis sûr que nous allons y arriver. Ou bien sûr, cela dépend aussi du nombre de blocs avec différentes formes folles que vous souhaitez ajouter. C'est donc également le cas. Mais pour le moment, voyons Pour les œuvres ou pourquoi nous nous trouvons un Minecraft. Définissons donc ça. La dernière boisson calcique peut vous voir. Les contours correspondent parfaitement et si je l'ai placé dans une direction différente, il me fait toujours face. là que tu y vas. Donc tout fonctionne et les boîtes de sélection sont parfaitement correctes. Maintenant, ce que j'ai à dire, c'est que si vous avez des boîtes de sélection vraiment, vraiment complexes comme celle-ci, bien sûr, vous pouvez voir que tout est toujours bloqué, ce n'est pas le cas, il n'y a pas de choses en diagonale et des choses comme que. Si vous avez des choses comme en diagonale, je vous recommande fortement d' essayer de rendre votre modèle un peu plus facile en R2, compliqué, car une forme de voxel compliquée et folle va ralentir le jeu a considérablement diminué. Mais c'est juste quelque chose à garder à l'esprit. Mais c'est en fait à quel point il est facile ajouter des modèles de blocs personnalisés à Minecraft. Mais pour une transparence totale, la dernière ligne du can Oracle a été réalisée par le platine G 17. En modifiant simplement la texture, c'est un peu, mais sinon c'est essentiellement sous la licence Creative Commons. Donc, si vous voulez utiliser ce MOD ou votre vrai MOD publié , veuillez être conscient de la licence si vous allez simplement l'utiliser à bon escient, essentiellement des fins de test privé vont être tout à fait très bien. Mais ce serait pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Oh, oui. 79. (intermédiaire) Ajouter un modèle d'objet personnalisé avec Blockbench: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons jeter un coup d'œil aux modèles d'articles personnalisés. Qui a vu la dernière fois des modèles de blocs personnalisés. Il est maintenant temps pour les modèles d'articles du client. Pour le moment, nous allons simplement créer un nouvel article ici , puis nous allons ajouter le modèle d'article. Il s'agira donc du personnel de soulignement d'Oracle Malcolm . Et c'est bien sûr aussi le chemin de soulignement Oracle que vous empruntez. Pour le moment, il s'agira simplement d'un article normal . Et le nombre maximum d'un est vraiment génial. Nous n'avons pas besoin de créer des classes d'articles personnalisées ici. Nous avons juste besoin du modèle d' article pour cela. Et puis, en fait, nous allons bien se passer. Ajoutons donc d'abord la traduction, ou une portée de soulignement calico. Et puis ici aussi, racontez le personnel, l'ego. Et maintenant, le modèle de l'article est fou. Pour ça. Nous allons encore une fois ouvrir le banc verrouillé. Et voilà, la beauté du bâton calcique. Et comme vous pouvez le constater, nous utilisons en fait certaines des petites textures et Oracle peut bloquer la texture. Et dans l'ensemble, c'est à peu près tout ce dont vous avez besoin. Ce n'est donc qu'un exemple ici. C'est comme ça que ça ressemble essentiellement si vous le tenez. Tous les autres éléments d'affichage sont également terminés. Vous pouvez également le peindre vous-même si vous le souhaitez. Mais pour le moment, je suis vraiment d'accord avec ça. Nous allons aller à Exporter, Exporter un modèle d'article bloc ou un personnel calcique que j'ai déjà cette année. Ça va bien se passer. Et puis, en fait, nous allons simplement copier le fichier JSON comme dans le dossier des modèles d'éléments. Et puis, les seules choses que nous devons changer ici sont essentiellement le nom. Ce sera donc Minecraft ou planche. C'est ça, non ? Bien sûr, avec des blocs obliques, ils y vont, car ce sont toutes des textures de blocs. Et puis la même chose pour notre recalc et notre bloc aussi. Donc, les cœurs MC se bloquent juste là, et le reste ici et le reste ici va tout à fait se passer pour nous. Et je sais que vous pensiez que vous pourriez dire ça, eh bien, ce n'est pas encore possible. En fait, c'est tout ce que nous devons faire. Nous avons juste besoin de ce fichier JSON d'abord, la modélisation du modèle d'article réel. Eh bien, c'est quelque chose que vous allez devoir essayer vous-même, comme je l'ai dit, un banc de blog de liens. Encore une fois, ce n'est vraiment pas si difficile. Vous pouvez simplement ajouter des cubes ici, les déplacer, puis les agrandir ou les réduire comme ça. Donc, vous ne devriez pas être trop fou. Je pense qu' avec une heure, une heure et demie, un peu en jouant, vous y arriverez très rapidement. C'est à peu près comme Minecraft, mais faire des modèles avec des blocs. Donc c'est très similaire en fait, quel que soit le cas, voyons simplement si cela fonctionne. Ou nous avons trouvé suspect et Minecraft. Et comme vous pouvez le voir, le bâton aura calcium a été ajouté et il a l'air effrayant, incroyable, même en 3D ou à la troisième personne, il a l'air vraiment cool. Et j'aime beaucoup le petit bloc d'or tout en haut. C'est juste un autre Non, j' aime vraiment le fait que c'est essentiellement toute la texture du bloc, juste dans ce petit bloc là bas. Est-ce que je le fais, j'aime vraiment ça. C'est donc à quel point il est facile d'ajouter les modèles d'articles personnalisés Minecraft, n'est-ce pas ? Et c'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Tout le code et tout cela est bien sûr disponible dans le référentiel GitHub où un individu est tout aussi bien. Et si cela vous a plu, j' apprécierais vraiment un commentaire de votre part. Sinon, je vous verrai dans la diapositive suivante. Donc, oui. 80. (intermédiaire) Ajouter un arc personnalisé: Bon, bienvenue au cheval en tissu pour 118. Et dans cette conférence, nous allons ajouter un bol personnalisé à Minecraft. Le client est en fait un processus assez simple. Nous allons juste prendre le bâton de calcium oral et nous allons rendre ce nom T ou un nom de robot capcom avec le nom ici, bien sûr, très important. Donc, ou un combo tueur. Et puis il s'agira d'un nouvel élément de bot. Et l'enregistrement est terminé. Maintenant, ce que nous devons bien sûr faire, c'est d' ajouter le prédicat modal ici. C'est l'essentiel. Et ce que nous allons juste faire, c'est que je vais vraiment copier une méthode que j'ai créée. Et c'est la méthode enregistrable. Vous pouvez voir qu'il enregistre essentiellement le bot. Tout ce jazz. C'est à partir de si je clique sur le bouton central de la souris dessus, puis je clique dessus. Ce sera plutôt le clic du bouton central de la souris. Et c'est le modèle prédit de registre des fournisseurs de Minecraft ou de vanille. Et si je descends ici, vous devriez être en mesure de trouver le mât et le tirage ici. Nous avons ces deux registres pour le bot, le bot essentiellement, et je viens de les copier, remplacé le fournisseur par notre registre de fournisseurs de prédicats modaux fabric. Mais cela dans une méthode distincte juste parce que c'est un peu plus facile, surtout si vous voulez plusieurs arcs, vous pouvez simplement appeler cela. Et ensuite avec votre robot. Donc, fondamentalement, mod items, dot oracle combo, et puis c'est à peu près tout. Donc, si vous avez un autre bol que vous voulez ajouter, il vous suffit de l'ajouter également. Et puis c'est à peu près, c'est à peu près tout, c'est presque fait. C'est vraiment l'idée ici. C'est donc à peu près tout ce dont vous avez besoin. Et puis, bien sûr, vous aurez besoin d'abord de la traduction qui est très importante ici, ou une vache tombe sous gribouillage, n'est-ce pas ? Alors, et n'oublions pas ça ou un calico. Et puis les modèles d'articles sont bien le kicker. Mais encore une fois, ils ne sont pas si fous que ça. Quatre d'entre eux, je vais les copier. Bien sûr, ils sont tous disponibles dans le référentiel GitHub ou en individuel. Celle-ci montre juste la boule de gomme d'Oracle ici. Ensuite, sous les prédicats, il pointe vers les différents modèles d'articles qui pointent vers celui-ci, celui-ci ou celui-ci. Et ils sont tous apparents ici. Très important, c'est d'être notre propre recalc, un bol. Et puis le calque, encore une fois ce sera juste une texture différente. C'est donc tout ce qu'il y a à faire. En fait, ce n'est pas si fou devant un client que vous aurez besoin de faire ou de différentes textures, l' une des balles normales et ensuite trois d'entre elles qui tirent essentiellement. Mais je veux dire, c'est à peu près tout ce qu'il y a à faire. Je suis en fait à quel point cela peut être facile, car nous avons déjà vu les prédicats ici pour les modèles. Ce n'est pas trop fou En fait, c'est quelque chose qui devrait être trop fou pour toi. Il ne s'agit que de quelques valeurs que nous pouvons utiliser dans le modèle pour déterminer quels éléments supplémentaires doivent être affichés pour cet article. C'est à peu près tout ce qu'il y a à faire, par souci d'achèvement. Voyons si cela fonctionne ou si nous nous retrouvons dans microfinance peut voir que le combo oracle a été ajouté avec succès au jeu. Et si je le tire, que tu partes, la texture change aussi. Donc tout fonctionne parfaitement bien, exactement comme on s'y attendrait, n'est-ce pas ? Mais c'était déjà le cas pour cette conférence ici. J'espère que cela vous a été utile. Vous apprenez le nouveau, et je vous verrai dans la prochaine conférence. Donc, oui. 81. (intermédiaires) de fluides personnalisés: Bon, bienvenue au cours de tissus. Et dans cette conférence, nous allons ajouter un fluide personnalisé à Minecraft. Donc, ajouter un fluide personnalisé est un peu capricieux. Il y a un peu de bizarrerie là-bas. Mais dans l'ensemble, je suis sûr que nous allons gérer , tout d'abord, dans le package de cours MC, cliquez avec le bouton droit sur un nouveau package appelé fluide. Et là, nous aurons besoin de deux nouvelles classes, la classe des fluides mode et la classe des fluides Ani. Et nous allons commencer par la classe des fluides au miel. Cela va étendre le fluide, et nous n' allons pas implémenter les méthodes. Ce que nous allons faire d' abord, c'est là que je fais cet abstrait. Et ce que je vais faire, c'est que je ferai ce qui suit. Je vais cliquer sur le fluide fluide, appuyer sur Control H et double-cliquer sur l'eau ici. Et puis ce que je veux faire, c'est que je tout obtenir ici, essentiellement, à l'exception du constructeur et de la copie. Et je vais le coller ici. Et nous pourrions avoir, en fait, nous ne recevons aucune erreur, c'est encore mieux. Et ce dont nous avons besoin, c'est d'entendre encore le fond. Nous n'avons vraiment besoin d'aucun de ces constructeurs, mais nous en avons besoin, il faut que ce soit du liquide de miel, et ce doit être du liquide de miel. Il y a bien sûr quelque chose que vous allez devoir faire chaque fois que vous ajoutez un nouveau liquide. C'est pourquoi nous pouvons également simplifier cela. Et dans l'ensemble, je pense que tout va bien se passer. Nous pouvons simplement le formater un peu différemment pour que nous puissions le lire correctement. C'est pour les particules. Et c'est le son. Je vais en fait changer le son pour, disons le bloc, la glissière de bloc de miel. Parce que, bien sûr, nous avons des blocs de miel là-dedans. Nous n'avons pas de liquide de miel dans ce cas. Et puis ces fluides, nous allons changer ça juste un instant. Mais maintenant, nous avons le liquide de miel avec les classes calmes et fluides là-dedans et dans les fluides mod, ce dont nous allons avoir besoin, ce n' est que deux choses. Et ça va être, tout d'abord, un liquide privé That's a Lower BAL qui s'inscrira. agit donc de la méthode de registre si fluide global est le type de retour, un nom de chaîne et un fluide ou fluide fluide fluide, ou fluide d'écoulement, c'est très bien. Cela va renvoyer le registre du registre. Enregistrez ce fluide, un nouvel identifiant, mod de cours MC, un identifiant de mod et un nom. Et après les premières parenthèses, fluide global, cela va bien sûr enregistrer le fluide. Et puis nous allons dire statique public, fluide global final, fluide global final, ou encore un trait de soulignement de miel, ce qui équivaut à enregistrer encore un trait de soulignement. Ensuite, un nouveau liquide de miel est toujours là. Et puis je vais dupliquer ça avec Control D. Je vais dire que le miel coule. Et la même chose dans le nom ici. S'il coule. Et au lieu de continuer à appeler fluides. Et c'est génial. Ce n'est pas ce qui fonctionne. Et ce qu'on peut faire dans la classe de liquide de miel ici, on va rendre quels fluides et il coule. Et là, quand je retourne un mod, des liquides et du miel encore, nous devons encore faire un seau pour cela. Pas de soucis du tout. En fait assez simple. Et je vais dans la classe Item et nous allons juste apparaître au-dessus de l'arc-en-ciel. Et ce sera le seau de soulignement de miel. Et voici la même chose, le seau de soulignement de miel. Il s'agit bien sûr d'un objet de seau. Et ce premier, nous allons prendre les fluides mod que le miel encore. Mais d'habitude, vous voulez toujours choisir le miel. Si on demande un liquide, c'est le général comme je veux dire, je dirais que c'est presque l'essentiel. Nous allions également avoir besoin d'un bloc mot car cela va être un bloc sans élément de bloc. Ce sera le bloc de liquide de miel. C'est quelque chose que nous allons avoir besoin d' un peu de soulignement de miel brumeux, fluide. Soulignement. Ok. Une fois de plus, cela sera nécessaire pour chacun de vos différents fluides. Et cela va être un, en fait, nous allons avoir besoin de beaucoup de classe de blocs fluides pour cela. Il s'agira donc du bloc BOD Lewis , car encore une fois, nous n'avons pas accès au constructeur. Il s'agit d'un bloc fluide survolant cette excellente mesure de constructeur super. Et ensuite, nous allons simplement rendre ça public aussi. Et à moins qu'il ne s'agisse d'un bloc de fluide, et que le premier paramètre sera celui des fluides, pas de l'argent, tout de même très important. Et puis ici, nous allons dire en fait le matériau des réglages de tissu. Et ensuite, nous allons matérialiser celui de l'eau. Juste pour nous assurer que cela fonctionne, nous allons dire pas de collision et non opaque de sorte que nous n' ayons rien et ne laisse rien tomber parce que, en fait, en fait, de l'eau ou, dans ce cas, du liquide de miel goutte, bloque les accessoires rien. C'est donc ça. Et puis, encore une fois, la classe liquide miel, tout d'abord, l'article seau, très facile. Plus d'objets que sur le seau. Très joli. Et ensuite, ici, nous avons, par exemple, pu voir que nous avons des particules ici, que nous ne changerons pas en ce moment, mais vous pourriez créer vos propres types de particules et, par exemple, J'ai du miel qui coule là. chose comme ça. Ayez ces allumettes ici, que nous devons le remplacer par des fluides mod, du miel et des fluides. Sur le souffle. Ensuite, ici, l'état à deux blocs. Et il est important que les blocs pontent de l'eau remplacée par plus de blocs, ce liquide de miel. Cela devrait être très bien, car il s'agit bien sûr aussi d'un bloc fluide. Par conséquent, il va hériter propriétés de blocs States de celui-ci. Et je crois en fait que c'est là tous les changements que nous devons faire ici. Nous avons référencé le bloc, les fluides et l'article. C'est à peu près tout. Et maintenant nous devons enregistrer le gestionnaire de fluide et le gestionnaire de rendu fluide. Maintenant, je vais vraiment le faire à l'intérieur d'ici. Vous pourriez probablement faire si vous avez plusieurs fluides, je suggère fortement de faire une classe personnalisée essentiellement que l'OLS le fait. Et ce que nous allons faire est la suivante. Nous allons dire un registre fluide ou de rendu, exactement cette instance au registre. Et ensuite, il y aura encore plus de fluides sur l'ISS. Donc, ce que nous allons avoir à voir avec ces quatre bois encore soufflés aussi. Ensuite, nous allons créer un nouveau gestionnaire de rendu fluide simple. Très bien parce que cela a été essentiellement fourni par nous ou par tissu ou ce réel ou 118. Et je vais dire simple manipulateur de fluide et on va dire encore de l'eau. Et ce que je vais faire, c'est que je vais faire une virgule et je vais copier ça. Nous allons devoir en mettre trois différentes, donc nous allons rester l'eau trois fois ici et ensuite changer celle-ci par de l'eau qui coule. Et puis le dernier sera la superposition d'eau. Il est très important que vous choisissiez la superposition d'eau car la texture de l'eau pointe essentiellement sur la texture de l'eau, mais la texture de l'eau est en fait grise. Et cela nous permet d'ajouter un quatrième paramètre ici. Et ça va être la teinte. Je vais juste prendre ça, c'est essentiellement la teinte du miel que j'ai choisi, et c'est essentiellement la couleur que le liquide aura. s'agit donc que d'une valeur RVB en hexadécimal. Ce ne serait pas trop fou. Et je vais dire la même chose ici pour le miel qui coule. Et puis la dernière chose dont nous aurons besoin , c'est d'abord traduction pour le compartiment. Donc, le miel souligne les seaux et le seau à miel. Et puis un modèle en bloc. Maintenant, cela va être si facile. Ensuite, je vais juste copier sur celui-ci. Je vais dire le seau de soulignement Honey. Et cela fait simplement référence à une texture de seau de soulignement de miel, qui va également copier très facilement. Juste ici. Vous y allez. Ensuite, il y a une autre chose très importante que nous devons faire, et c'est que sous le dossier de données ou les balises Minecraft, vous allez devoir créer un nouveau liquide de conservation de répertoire. Et au lieu de créer une nouvelle étiquette appelée arrosée adjacente. Et nous allons juste copier le contenu des murs, Jason ici. Et nous allons changer cela en cours MC. Et cela va devoir inclure les deux miels encore, non ? Miel souligne encore, ainsi que sur le trait de soulignement qui coule. Cela représente donc essentiellement la physique de toute l' épreuve, pour ainsi dire. Il va donc avoir la même physique que l'eau. C'est ce que je peux faire de mieux pour le moment. Cependant, c'est tout ce dont nous allons avoir besoin pour cela, même si c'est assez compliqué. Il y a beaucoup de choses et il y a bien sûr encore des choses que vous voudrez peut-être changer. Les types de particules ici, par exemple, il y a un tas de choses que vous pouvez encore faire en théorie. Mais dans l'ensemble, je voulais tout d' abord vous montrer comment vous pouvez réellement le faire. Et je l'espère, cela devrait être assez simple. Donc, pour l'achèvement, voyons si cela fonctionne. Très bien, les finances reviennent à l'esprit, comme vous pouvez le constater, le seau à miel a été ajouté au jeu. Voyons si ça marche. Et c'est le cas, ça fonctionne en fait et c'était très intéressant c'est que j'ai vraiment rendu cela infini pour le moment. Mais nous pouvons réellement changer cela très, très facilement. Il s'agit en fait d'un changement très facile. Et vous pouvez également voir que je l'ai coulé. Par exemple, vous pouvez voir que les particules ici sont toujours les particules d'eau normales. C'est à peu près ce que j'ai dit que, vous savez, pourrait vouloir qu'il soit modifié un peu de capacité, mais dans l'ensemble, tout va bien se passer. Et ensuite, si vous y entrez, vous pouvez voir que la superposition ici est également bleue. ne pouvons vraiment pas faire grand-chose à ce sujet pour le moment. Au moins, je n'ai pas trouvé comment recolorer ça. Mais pour le moment, je veux dire, c'est toujours un top fluide entièrement personnalisé qui est plutôt cool. Et pour l' achèvement aussi. Voyons comment se débarrasser de l'infini ici, non ? En fait, c'est très, très facile. Ce booléen ici est infini, est égal à faux, et c'est littéralement tout ce qu'il y a à faire. est donc tout ce qu'il y a. Et il y a bien sûr d'autres choses comme la vitesse de flux git, vous devez obtenir une diminution de niveau par bloc, une tique, taux de tick, une dernière résistance en Europe cependant. Le niveau de la fluidité, il y a beaucoup de choses que vous pouvez faire et vous, je le recommande vivement une fois de plus, jouez un peu avec les chiffres, essayez un tas de choses, vous savez, soyez ouvert à l' expérimentation, alors je suis sûr que vous pouvez mettre en œuvre le fluide de vos rêves, pour ainsi dire. Mais ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 82. (intermédiaire) Modifier les tableaux de prises de vanille: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons examiner comment modifier une table de luth. Tout d'abord, vous pourriez dire : Attendez, nous avons déjà fait des tables lubriques au tout début du cours. Nous savons comment ajouter des tableaux bas. Oui. Mais ce que vous ne savez pas, c'est comment ajouter deux blocs lubriques qui existent déjà dans la vanille. Et c'est ce que nous allons jeter un coup d'œil dans cette conférence ici. Pour cela, dans le package util, cliquez avec le bouton droit sur la nouvelle classe Java. Ce sera le mod, les modificateurs de table de butin. Et je vais en fait copier tout le contenu et nous expliquerons au fur et à mesure. Maintenant, bien sûr, tous sont disponibles dans le référentiel GitHub ou en individuel. Et l'idée générale ici est que tout d'abord, nous n' ajouterons pas de graines de poivre, mais bien sûr, des graines de navet ici. Et puis l' idée générale est que nous avons trois sérum identificateurs qui pointent vers une table de luge spécifique. Donc, la table Lu, quand nous allons aux bibliothèques externes, celle-ci à droite, le projet Minecraft net et ainsi de suite. En vue du dossier de données, tables de luge, il bloque le jeu des entités de coffre. Et vous pouvez dire ça comme vous pouvez le voir, puis je peux le voir, d'accord. Y a-t-il un coffre à igloo là-dedans ? C'est exactement ce qu'il y a ici, que vous preniez le nom sans le JSON. Très important. Et vous pouvez également l'avoir dans les maisons ici , par exemple. Et des trucs comme ça. Vous pouvez donc modifier n'importe laquelle de ces tables. Maintenant, en théorie, je crois qu' il pourrait s'en enlever. Je recommande vivement de ne pas faire cela. Je recommande vivement d'ajouter uniquement des trucs. Maintenant, comment ajouter des trucs avec ce générateur de pool de boucles de tissu. Maintenant, c'est la chose qui va être la plus compliquée. Le problème, c'est que j'en ai un exemple ici où vous avez une chance particulière que quelque chose tombe. Vous pouvez également le mettre en un seul et vous avez 100 % de chances de le laisser tomber. Et puis ici avec cette fonction largeur, avec la fonction SetCount load et un fournisseur de numéro de charge uniforme. On peut dire que c'est le cas, cela se situe entre ce nombre et ce nombre d'articles. Mais comme vous pouvez le voir clairement au-dessus de la tige d'abattage à l'intérieur de la poitrine de l'igloo, ainsi que le foie de charbon provenant du creeper ne tomberont qu'un seul, tandis que les graines de navet de l'herbe en tombent une ou deux. Et seulement 35 pour cent de chances de tomber si nous allons à Loop Pool Builder ici, vous ne pouvez pas vraiment voir ce qui se passe ici. Cependant, c'est très compliqué. Donc, il va falloir essayer un tas de choses en gros. Voyez, par exemple, une condition, accord, qu'est-ce qui est un peu mis ici ? Je peux mettre le constructeur ici. Bon, c'est assez juste. Donc, si nous pouvions jeter un coup d'œil à cela, je dois prendre ce constructeur de conditions de boucle. Vous pouvez donc voir qu'il s'agit d'un générateur de conditions de boucle. Et je pourrais dire, par exemple, condition de boucle personnelle et appuyer sur Control H et voir toutes les différentes conditions de charge qui existent. C'est donc une de ces choses qui est plutôt cool, où la hiérarchie ici est incroyablement utile pour cela. Par exemple, vous avez la boucle de vérification du temps, condition de boucle, ce qui est vraiment cool. Nous avons la condition correspondant à la boucle. Nous avons la condition de la boucle de lecteur de kilo-octets et tout ce jazz. Il y a donc beaucoup de choses que vous pouvez mettre ici. C'est juste qu' faut essayer un tas de choses. Et en gros, eh bien, c'est un peu et j'admettrai c'est juste courir contre le mur avec ta tête jusqu'à ce que, tu sais, ça marche fondamentalement. Il y a donc beaucoup d'essais. Mais si vous le vouliez, si vous avez quelque chose de vraiment compliqué où vous voulez l' ajouter à quelque chose, alors ce sera comme ça. Mais quel que soit le cas. Comme vous pouvez le voir ici, nous appelons essentiellement l'événement de rappel de chargement de la table de butin . Et puis vous dites, hé, si l'année de l'ID correspond à l'idée que nous avons spécifiée ici, si l'ID du bloc de gazon est égal à l'ID ici, alors nous allons l'ajouter, alors nous allons ajouter tout à la table des toilettes. C'est donc l'idée générale. Et ensuite, nous allons faire la même chose. Et l'igloo, puis le creeper aussi, où nous ajoutons le ruban de charbon ici, la tige d'abattage et ici les graines de navet. Et la seule chose que nous devons faire alors est d'aller dans notre mod de cours MSE et ensuite d'appeler les modificateurs de table de butin de mod qui comptent d'autres tables. Et c'est tout. C'est tout ce qu'il y a à faire. Et si nous voulons ajouter quelque chose, il suffit de le copier, créer un nouvel identifiant, ajouter une autre instruction if dans un tas de choses ici. Et c'est tout. C'est tout ce que nous devons faire. Cependant. Je suppose que ça a reçu les œuvres pour trouver un Minecraft. Donc, nous allons d'abord tuer un NSC creeper. C'est là. Un ruban de charbon est tombé du creeper. Et puis, en fait, tout d'abord, je vais tuer ce creeper parce que sinon nous allons passer un mauvais moment. Aussi, baissons un peu le volume. C'est un peu fort ici pour moi. Alors, ils vont mettre un mode survie et passons là. Vous pouvez voir que nous avons déjà eu de la chance la première fois. Les sièges navet sont en train de chuter. Et sachez juste que nous l'avons fait. Cherchons également rapidement un igloo. Eh bien, voudriez-vous regarder ça ? Il y a une canne d'arrêt. C'est donc à quel point il est facile d'ajouter les tables de butin déjà existantes, n'est-ce pas ? Tout le code est bien sûr, une fois de plus disponible dans le référentiel GitHub ou dans un individu. Et c'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Si c'était le cas, j' apprécierais beaucoup un commentaire de votre part. Sinon, je vous verrai lors la prochaine conférence. Oui. 83. (intermédiaires): Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons examiner les progrès réalisés. Les progrès sont donc réalisés via des fichiers JSON. Ce que nous allons faire, c'est que nous allons aller dans notre dossier de données dans le dossier de cours MC, cliquer avec le bouton droit sur le nouveau répertoire et les avancées froides, en nous assurant que nous lisons cela correctement. Les objectifs qui sont très importants. Et je vais en fait copier les deux fichiers de base déjà préparés et je vais vous expliquer, c' est vrai. Vous pouvez donc voir que j'ai l'avancement du fichier JSON du cours MC et l'avancement avancé de la tige de dessilage. Et ces deux-là sont un peu différents. Mais ce qui se passe ici, c'est que nous avons une avancée. Nous le sommes, qui est essentiellement l'onglet. Cela crée donc un nouvel onglet Avancement. Si l'avancement n'a pas de parent, vous pouvez voir que c'est évident. Parcours Mc. Parcours Mc. Bien sûr, ça suffit. Et puis celui-ci n'a pas de parent, mais qu'il a un contexte. Et le contexte doit en fait être aussi précis. C'est très étrange, mais il faut qu'ils mettent votre ID et ensuite le bloc de textures, puis quel que soit le bloc, par exemple, vous n'étiez pas en arrière-plan, ou bien sûr, vous pourriez également mettre sur un autre dossier, dans un dossier différent, dans le dossier textures qui fonctionnerait également, mais le reste devrait être assez explicite. Vous avez un objet, obtenez un titre, c'est juste le titre de l'avancement réel. Ensuite, nous aurons une petite description ici. Quel est le cadre à une tâche ? Maintenant, je crois que vous pouvez simplement entrer ici. Il y a aussi des défis et des défis similaires. Il y a donc un point de vue différent, des choses différentes. Donc, des grille-pain, donc ce sera de savoir s'il va montrer ou non le toast en haut à droite de l'écran, puis annoncé la fermeture. Eh bien, cela devrait être assez explicite. Et maintenant, ils sont vraiment difficiles, disons que c' est le critère. Parce que nous abordons ici les exigences les déclencheurs et les conditions, nous allons simplement jeter un coup d'œil à cela en général. Nous n'allons pas créer de conditions ou de déclencheurs personnalisés parce que ce sera beaucoup difficile et c'est en fait quelque chose de beaucoup plus complexe pour le moment. Mais pour le moment, nous allons juste jeter un coup d'œil au déclencheur changé d'inventaire ici. Cela signifie que si je reçois un oracle, que je rentre dans mon inventaire, alors ce qui va se passer, c'est que je vais obtenir cette avancée. Et puis la même chose avec la canne d'arrêt, n'est-ce pas ? Si je reçois une canne d' arrêt dans mon inventaire et que je vais avoir cette avancée. C'est donc l'année des idées générales. Et encore une fois, j'ai une excellente ressource pour vous, ce qui est encore une fois, bien sûr, Miss vieux GitHub IO, où vous pouvez générer les fichiers JSON pour les avancées ici, c'est en fait comme incroyablement génial. Nous avons pu voir, par exemple, les conditions. Et puis il y a quelques conditions différentes. Nous pouvons dire, quelle est l'exigence ici ? Et vous pouvez voir qu'il existe plusieurs exigences différentes. Par exemple, utiliser un article même s'il y a peut-être un animal de pain éclaircissant canalisé. Comme vous pouvez le constater, il y a beaucoup de choses que vous pouvez mettre ici. Cochez, même prendre des listes, regarder des tics, ou il y a beaucoup de choses que vous pouvez faire dans une entité. Je recommande vivement de jouer un peu avec ça. Et puis, bien sûr, il y a toujours sur les référentiels GitHub des modes populaires où vous pouvez également jeter un coup d'œil à leurs progrès. Fortement recommandé, il faut parfois y réfléchir un peu. Maintenant, même si les progrès ne sont pas la chose la plus importante, vous savez, ils peuvent toujours être un ajout assez cool à votre tapis. Et juste pour l'achèvement, voyons si cela fonctionne, mais assurez-vous de faire une nouvelle première mondiale car si vous avez déjà eu l'un de ces articles dans votre inventaire, vous obtiendrez immédiatement les progrès. Il est préférable de créer un nouveau monde. C'est une idée très intelligente, ou nous nous retrouvons dans Minecraft. Voyons donc, et nous allons juste retirer le taux de lingots ici. Allons-y et voilà, pour que nous obtenions l' avancement ici même, nos mensonges dans les télécommunications. Et si nous allons dans les progrès, vous pouvez voir que nous avons déjà avancement de la canne d'abattage ici, comme nous attendons pour ainsi dire. Je viens d'obtenir une autre avancée. Donc, si je reçois, par exemple, le fer England, nous aurons un autre onglet. Et vous pouvez voir l'onglet Minecraft et ici l' onglet Modèle de cours MC pour le nom de l'onglet sera toujours le nom de la première avancée. Mais c'est essentiellement l'idée générale ici. En dehors de cela, sortons également la tige d'abattage, et nous allons également l'obtenir. Mais cela ne fonctionne pas. Ils sont des auteurs comme vous. C'est au moins ce que j'ai entendu dire. Et voyons juste ici. Vous y allez. Donc, tout ce qui fonctionne parfaitement là-bas serait déjà pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 84. (Intermédiaire) Comment créer des particules: Bon, bienvenue au cheval en tissu pour 118. Et dans cette conférence, nous allons jeter un coup d'œil sur la façon dont vous pouvez engendrer des particules dans le monde. Maintenant, la chose spécifique que nous allons examiner est essentiellement de posséder les particules dans le bloc SPD. Donc, dans cet exemple particulier, comment faire apparaître une particule dans un bloc. Et généralement, par exemple, pour les entités ou les créatures, cela devrait être très similaire en fait. Dans l'ensemble, vous n'avez besoin que d'une variable World et que vous devez être sur le client. Et pour cela, nous allons la remplacer la méthode de tick d'affichage aléatoire. Et celui-ci est essentiellement appelé uniquement au client et nous avons un monde de variables. C'est donc exactement ce dont nous avons besoin. Et ce que je ferai, c'est que je copierai le contenu de tout cela est disponible pour vous dans le dépôt GitHub ou un individu juste, eh bien. Et vous verrez ici que vous avez une chance. Mais nous avons 35 % de chances que ces particules apparaissent essentiellement, et nous fabriquons toujours un nouveau flotteur. Donc, parfois, nous avons tous les quatre petits et parfois nous n'avons aucun d'entre eux. C'est en quelque sorte l'idée générale. Et vous pouvez voir que la façon de frayer une particule consiste à appeler la particule mondiale à points points-points. Et nous devons fournir un type de particules. Il utilise le bouton central de la souris. Cliquez dessus. Il y a un tas de types de particules ici, les types de particules par défaut. En théorie, vous pouvez également lire le vôtre. C'est quelque chose que nous n'allons pas regarder dans cette conférence. Partout où nous pourrions jeter un coup d' œil à cela dans une prochaine conférence, ne sommes pas encore sûrs à 100 %. Et nous devons fournir la position. Donc les positions x, y et z. Vous pouvez voir que j'ajoute toujours un peu de hasard ici pour que nous ne répondions pas à la même position à chaque fois. Et puis la vitesse, eh bien, c'est juste la vitesse à laquelle cela se déplace. Et je voulais aller vers le haut. Et vous pouvez voir qu'ici, il se déplace essentiellement vers le haut. Mais on peut soit fumer, il y a d'autres choses comme les cendres, il y a une explosion. Il y a donc beaucoup de types de particules différents. Mais nous allons nous en tenir à cela pour le moment. Et le simple fait d'appeler cela quatre fois fait simplement en sorte qu'il y ait un peu plus de ces particules qui sont détenues partout où vous avez une variable World, vous pouvez simplement faire une déclaration if. Si le monde est client et que vous pouvez appeler la particule, cela ne fonctionnera que du côté client. C'est très important. C'est quelque chose en tête. Mais sinon, pour l'achèvement, voyons simplement si cela fonctionne. Ou les entreprises annoncées dans Minecraft et voyons qu'elles sont là. Ces petites particules sont déjà en train de monter du bloc SPD. Vous pouvez voir si je l'ai posé, voir certains d'entre eux se lèvent. Et c'est définitivement juste un hasard en appelant. Et bien sûr, vous pouvez toujours appeler plus ou moins selon ce que vous voulez faire, mais c'est toujours possible. Mais c'est l'idée générale. Le fait de frayer les particules, en particulier sur des blocs, mais à peu près sur n'importe quoi d'autre, c'est appeler le monde à notre méthode des particules, n'est-ce pas ? Mais ce serait déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et que vous apprendrez au New, et je vous verrai dans la prochaine conférence. Oui. 85. Peinture personnalisée (intermédiaire): Très bien, bienvenue au cours de tissus pour 118. Dans cette conférence, nous allons ajouter des peintures personnalisées à Minecraft. Et dans les peintures personnalisées, c'est en fait un processus très simple dans le package de cours MC, cliquez avec le bouton droit sur un nouveau package appelé peinture. Ensuite, au lieu de là, nous allons cliquer avec le bouton droit nouvelles peintures en mode classe Java. Et puis à l'intérieur de là, nous allons juste avoir besoin de quelques méthodes pour être exacts. Une peinture statique privée, un motif, une peinture de registre avec un paramètre de nom de chaîne et un motif de peinture, motif de fin. C'est très bien. Retournons le registre de données du registre, le motif de peinture de points de registre avec un nouvel identifiant, nom d'ID de mod n mod de cours MC. Ensuite, après les premières parenthèses, nous allons passer le motif de la peinture, puis le terminer par un point-virgule. Le pouvoir est également très important. Nous avons besoin d'une méthode de peinture de registre statique public des vides ici, va juste mettre en place ligne d'impression enregistrant les peintures pour une identification impaire. Juste pour que nous ayons cela parce que nous devons en fait appeler cela à côté de la méthode de mod de cours MC ici. Donc, dans la méthode on initialisée, nous allons le faire juste après les registres modaux. Ainsi, sur les peintures qui enregistrent des peintures. Et maintenant, nous allons ajouter les tableaux. Eh bien, comment cela se fait-il ? En fait, c'est très simple aussi. Motif de peinture finale statique publique au coucher du soleil ici. Et nous allons juste dire enregistrer peinture avec le nom Sunset. Ensuite, un nouveau motif de peinture, qui prend seulement deux entiers, la largeur de l' image et la hauteur de ces valeurs sont essentiellement exprimées en pixels. Oui, tant qu'ils correspondent, tout va bien. Il suffit donc de dupliquer cette fois avec Control D. Et nous allons aussi ajouter le planifié et le vagabond aussi. Et puis assurez-vous que nous changeons le nom dit bien planifié et émerveillé. Et puis les tailles ont aussi bien planifié un 16 par 16, et celui-ci est en fait prolongé de 32. C'est pour que vous ayez quelques exemples. Et alors la question est, eh bien, mais d'où venons-nous les tableaux ? Eh bien, tout d'abord, les peintures que j'ai sont réalisées également par le platine G.711. Par conséquent, si vous souhaitez les utiliser, veuillez prendre note de la licence. Si vous souhaitez les utiliser dans votre MOD public, notez la licence. Sinon, nous allons simplement les copier. Donc, ils vont vraiment entrer dans votre dossier de textures ici, n'est-ce pas ? Ainsi, dans les actifs MC textures grossières, puis peindre. Et puis ils sont là. Les trois tableaux, les noms ici doivent bien sûr correspondre au nom ici. Cela sera assez explicite à ce stade. Et alors que le reste va simplement prendre soin d'lui-même. C'est donc tout ce dont vous avez besoin. Vous avez besoin des peintures de cette classe et il est très important que vous appeliez cette méthode ici. Sinon, cela ne fonctionnera pas. Eh bien. Voyons juste les travaux. Très bien, nous nous retrouvons à Minecraft et j' ai déjà les tableaux. Déposons-le et voyons si nous pouvons avoir un bloc pour que notre piqûre soit là. Il y a le premier. Mais voyons ce que c'est non, ce n'est pas le cas. Ce ne sera pas notre coucher de soleil ou nous l'aurons à un moment donné. Je suis très certain, comme vous pouvez le constater, en gros, ils sont là. Il y a le prochain. Et voyons simplement, regardons. Eh bien, ça ne va pas marcher, mais celui-ci va marcher. Alors, faisons-le simplement. Et voyons si nous pouvons également obtenir le petit du 16 par 16. L'idée générale est donc, comme vous pouvez le dire clairement. est ainsi que les peintures s' ajoutent essentiellement à la rotation de la peinture normale. Mais c'est vraiment cool et bien, vous pouvez maintenant ajouter n'importe quelle peinture et oui, vous pouvez les rendre aussi grands et aussi beaux et que tout ce que vous voulez à 0. Il peut s'agir de n'importe quoi , tant qu'ils adhèrent aux centres normaux et il y a un fichier PNG dans votre dossier de textures. C'est à quel point ça peut être facile, non ? Mais ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous en apprendrez un peu plus de nouveauté. Et je vous verrai lors de la prochaine conférence. Oh, oui. 86. (Advanced) Entité de bloc personnalisé: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter une entité de blocs personnalisée à Minecraft. Maintenant, comme vous l' aurez probablement vu comme une conférence plus longue, car c' est un sujet très complexe. Et ce que je suggère fortement, c'est de regarder cette conférence et la prochaine conférence en retrait en même temps. Donc fondamentalement Mac tabac, parce que la prochaine conférence est immédiatement liée à cela et en fait, nous allons améliorer le fonctionnement de l'entité de bloc un peu mieux. La deuxième chose que je voulais mentionner est que si jamais je dis entité de tuile, je veux dire entité de bloc, elle a été renommée en 117. Et donc j'ai toujours parfois encore utilisé le nom de l'entité de tuile. C'est juste ce que c'est , mais je veux dire l'entité Brock. Et je vais aussi copier beaucoup de code et ensuite nous l' expliquerons essentiellement parce qu' écrire tout cela est absurde. Cela n'a cependant aucun sens. S'il vous plaît, soyez conscient. Il y a le référentiel GitHub et il y a des individus là où vous pouvez également copier où vous pouvez également copier tout le code. Vous n'avez pas du tout à vous inquiéter. Vous avez tout à votre disposition, donc ne vous inquiétez pas. Bon, alors commençons. La première chose dont nous allons avoir besoin, c' est que nous aurons réellement besoin d'un, quelque chose dans le package d'article, et ce sera un nouveau paquet, un ancien inventaire. Ensuite, à l'intérieur de là, nous allons créer une nouvelle interface ici, nouvelle interface de classe Java. Il s'agit de l'inventaire mis en œuvre. Et encore une fois, comme je l'ai dit , notre caviar, le tout, qui est à votre disposition, bien sûr, est pas si intéressant. L'idée générale est que tout d'abord, le Jean par les Juifs et, ou la justice, je suppose. Et c'est du domaine public. Donc, pas de soucis, nous pouvons l'utiliser. Mais tout le crédit va à juste pour cela, c'est en fait très utile l'année d'inventaire mise en œuvre. Et l'idée générale est que lorsque nous implémentons cette interface dans notre impressionnante entité Brock, nous pouvons très facilement utiliser l'inventaire qui lui est associé. Mais c'est l'idée générale. Nous allons juste avoir besoin de cela et reviendrons plus jamais cela parce que c'est presque comme déjà parfaitement fait. Mais nous n'avons besoin de rien d'autre ici avant de plonger dans l'entité de bloc, je vais vous montrer un peu la théorie derrière l'entité de bloc. Et pour cela, bien sûr, nous allons sortir les diapositives PowerPoint. C'est l' idée générale d'une entité de bloc. Il y a quatre parties. Il y a la classe de blocs II, classe d'entités de blocs, la classe de gestionnaire d'écran et la classe d'écran. Ce qui est très important ici, c'est que dans l'ensemble, la classe de blocs est probablement l' une des plus faciles. C'est là que vous cliquez avec le bouton droit de la souris, puis quelque chose dans l'entité Brock se produit car l'entité de bloc crée ensuite le gestionnaire d'écran. Le gestionnaire d'écran gère essentiellement l'écran. Cela semble fou, mais l' idée est qu'il y a une séparation en cours ici parce que la classe d'écran, Commençons ici n'est que client. Ok, ça veut dire que c' est littéralement juste cette image. Il y a quelques nuances ici. Bien sûr, nous pouvons afficher les flèches de progression. Nous pouvons afficher les acheteurs ici, des trucs comme ça. Oui. Mais c'est juste cette image. Je pourrais remplacer l' image par une image de mon visage ou une image par un chien ou ce que je veux. Et le gestionnaire d'écran, comme les emplacements réels ici, fonctionnerait toujours. Ils n'ont pas besoin de ressembler à ça. C'est une leçon très importante dont vous avez vraiment besoin, bien vous entrez dans la tête. C'est très important. C'est juste l'écran, ce n'est que le client, juste cette image. Maintenant, la classe d'écran ici a cependant une référence au gestionnaire d'écran. Et le gestionnaire a les emplacements dans l'inventaire, comme vous pouvez le voir en marquant le bleu pour l' inventaire des joueurs et la barre chaude. Et puis, comme le rose violet, nous avons le, en gros, les slots personnalisés avec l'écran Handler fait également est qu'il peut synchroniser les valeurs de l'entité de bloc, du serveur et du client. Maintenant, c'est quelque chose qui est très important et que c'est aussi quelque chose que nous allons voir dans la prochaine conférence, car cela nécessite un peu plus de configuration, pour ainsi dire. Et nous allons simplement le stocker en ayant une entité de bloc normale qui va faire des choses intéressantes. Mais c'est une chose très, très importante. Ensuite, en synchronisant ces valeurs, nous pouvons les utiliser dans la classe d'écran. Par exemple, affichez correctement la flèche de progression ici. C'est l'idée générale. Maintenant, l'entité de bloc elle-même, ce que celle-ci contient des données et des fonctionnalités pour un bloc. C'est l'idée générale. Et ensuite, il peut également avoir un inventaire. Pour cet inventaire, comme je l'ai dit, est en quelque sorte géré par le gestionnaire d'écran. Il y a un couplage très serré entre celui-ci et celui-ci. Et puis il n'y a pas trop de couplage entre ces deux-là, c'est simplement une référence. Ensuite, avec la classe de blocs, il n'y a qu'une référence ici. Ces deux-là sont donc certainement plus étroitement liés. Il y a une relation un peu étroite entre, bien sûr, l'écran et le gestionnaire d' écran, car ils ont les deux écrans dans le nom, est une très bonne indication qu'ils ont quelque chose à voir l'un avec l'autre. . Mais dans l'ensemble, c'est l'idée générale, c'est la théorie générale qui sous-tend cette théorie. Ce n'est rien de trop fou, si quelque chose ici est un peu déroutant, ne vous inquiétez pas. J'espère que je serai en mesure d'éclaircir les choses une fois que nous aurons réellement programmé tout cela. Mais revenons simplement à l'intelligence. Et maintenant, créons l'entité de bloc réelle. Ainsi, dans notre package de blocs, cliquez avec le bouton droit sur un nouveau package appelé entité. Et puis à l'intérieur de là, nous allons devoir connaître les clauses, le verrouillage du mode dans cette classe. Et puis aussi le calcium libre. Entité du rire, non ? Et c'est là. Cela va donc étendre l'entité de bloc. Et il va implémenter l'inventaire implémenté par la virgule d' usine de gestionnaire d'écran nommé la virgule d' usine de gestionnaire d'écran nommé, celui que nous avons déjà fait. Passons le curseur sur cela, disons Implémenter les méthodes et disons, Ok, je vais survoler à nouveau, créer une correspondance de constructeur super. Et maintenant, nous devrions être satisfaits de cela. Ainsi, les GetItems ici vous pouvez voir null. Eh bien, nous pouvons modifier cela très facilement car nous allons maintenant ajouter une liste d'articles par défaut privée avec laquelle s'appelle l'inventaire. Et cela sera égal à une valeur par défaut, une liste de taille quatre avec un point de pile d'éléments AMD. Et ce sera notre inventaire. Ce seront nos quatre créneaux. C'est donc logique. Et nous pouvons simplement le renvoyer ici. Donc, inventaire, il suffit de le retourner. Et cela devrait convenir pour le texte affiché. s'agit du texte affiché en haut de l'interface utilisateur. Nous allons juste économiser pour le temps d'être un nouveau texte littéral. Ou ça peut venir blaster, ça va aller. C'est tout à fait correct. Donc, dans le menu Créer ici, nous devons fournir un gestionnaire d'écran comme vous pouvez le voir. Maintenant, ce que je vais faire, c'est que je vais délibérément faire une erreur parce que sinon je l'oublierai probablement parce que, une erreur parce que sinon je comme je l'ai dit, il y a beaucoup de choses que nous devons faire ici. Cependant. C'est pourquoi je fais cela délibérément et c'est une erreur. Nous n'allons pas exécuter le client pendant certain temps de toute façon, donc du bruit là-bas. Ce que nous devions également faire, c'est supprimer le premier paramètre ici ou l'autre constructeur. Ensuite, nous devons faire le reste l'intérieur des entités de blocs MOD. Et ce que nous allons faire, c'est que nous allons dire un bloc statique public, type d' entité ou un recalc et loyer explosif. Nous allons appeler cela le blaster de soulignement de revenu Oracle. Maintenant, nous n'allons pas attribuer cela à quoi que ce soit, car ce que nous allons faire, c'est que nous allons avoir un registre public statique, nul , toutes les entités comme celle-ci exactement. Ce que je vais faire, c'est que je vais copier ça et je suis prêt à expliquer au fur et à mesure. Alors, qu'est-ce que c'est ? Nous allons donc appeler le registre qui s'enregistre pour le type d'entité de blocage. Tout cela devrait être assez explicite avec un nouvel identifiant d'Armada D et Oracle peut blaster. Ok, et ensuite nous allons appeler le générateur de type d' entité de bloc absolu à la création avec Oracle peut exploser ou deux-points d'entité, deux-points connus, eh bien, cela va créer un nouveau ou un pélican entité blaster, puis elle est affectée à un bloc particulier. Ce bloc sera le bloc que lorsque vous cliquez dessus avec le bouton droit de la souris, cette entité lui est affectée. Et nous devrons en fait changer quelque chose dans la classe de blocs elle-même. Ainsi, Oracle peut exploser ou bloquer la classe. Il va falloir changer certaines choses là-dedans. Mais pour le moment, nous allons être d'accord avec ça. Et je vais vraiment faire en sorte que cela soit un peu différent. C'est bon, c'est très bien. Et puis cette méthode de registre de toutes les entités doit être appelée dans la classe de mod de cours MC mode. Mais c'est également très important. On va juste appeler ça ici. Donc, bloquez les entités, j'ai enregistré une entité, donc c'est très important, sinon nous n'aurons pas tout à fait une flèche, mais il ne sera pas en mesure de sauvegarder les données correctement. C'est pourquoi nous allons en avoir besoin. Et puis, au lieu du type que nous n'avons pas, nous pouvons voir plus d'entités de livres qu'Oracle peut exploser. Et maintenant, toutes les flèches sauf celle que je veux avoir ont disparu. Et nous pouvons fondamentalement procéder à l'ouverture de la classe large, qui sera que l' Oracle peut exploser ou bloquer. Maintenant, nous avons déjà fait des choses qui sont complètement indépendantes de ce que nous avons. Donc, fondamentalement, la propriété de direction et tout cela, nous ne nous en soucions pas vraiment dans le sens où vous pouvez aussi avoir un bloc qui n'a pas ces choses, n'est-ce pas ? Ils sont indépendants les uns des autres. Mais ce que nous allons faire, c'est que nous allons étendre le bloc avec classe d' entité et nous allons implémenter interface du fournisseur d'entités de blocs. Passons le curseur sur ces méthodes d' implémentation. Utilisez la méthode Create block Entity que nous devons implémenter ici. Et ensuite, le reste va être très bien. Maintenant, nous avons cela que nous pouvons déjà faire, mais ici, nous allons juste dire qu'une vache peut exploser ou une entité ayant une position à l'état. Et c'est déjà fait ici. C'est en fait à quel point cela peut être facile. sera également nécessaire de faire si nous devons API sur le type de rendu. Je vais donc simplement copier cette méthode. Vous devez remplacer la méthode de type get rendu. Parce que lorsque vous surchargez ce cours, vous pouvez voir qu'il est invisible. Je ne suis pas sûr que ce soit le cas d'une raison quelconque, nous devons simplement passer outre cela. C'est bon. Ensuite, ce que je vais également remplacer, c'est la méthode de remplacement sur état avec des choses ici, comme je l'ai déjà mentionné, tout le code est disponible dans le référentiel GitHub ou dans individuel tout aussi bien. Donc, pas de soucis, vous pouvez également copier tout cela. Et cette méthode est vraiment vraiment cool. Il y a, cela va simplement supprimer toutes les informations de l' entité ou de l'entité Oracle sur le sol. Donc, c'est fondamentalement ce que ça fait, c' est vraiment cool. Et je recommande vivement de simplement l'utiliser aussi, car cela fait immédiatement tomber tout l'inventaire lorsque vous détruisez le bloc. Et puis, bien sûr, il y a une autre chose, à savoir les méthodes américaines. Donc, comme méthode de clic droit lorsque je mets cela ici. Vous voyez donc que ce que je vais faire, c'est que je vais dire, si je suis sur la rivière, alors je vais dire, Hé, créer une nouvelle usine de traitement d'écran. Et tant que ce n'est pas nul , je peux ouvrir l'écran géré. Et c'est que cela fait que les choses en mouvement soulèvent le gestionnaire d'écran via l'entité de bloc et ainsi de suite et ainsi de suite. Et puis, fondamentalement, il ouvre l'écran, mais ce sont les principales méthodes dont nous aurons besoin. Ensuite, il y a une autre méthode dont nous aurons besoin, et c'est la méthode get ticker. Mais c'est le ticker ici. Je vais juste avoir un ticker. Ensuite, vous pouvez voir ce que je vais renvoyer , c'est que je vais renvoyer le type de vérification, le battage médiatique et les entités de blocs non marquées, pas de recalc blaster. Et puis je vais dire que l'entité complexe RCA deux-points, coche deux-points. Maintenant, bien sûr, nous ne l' avons pas encore parce que nous n' avons pas de méthode de tick dans notre Oracle peut exploser ou entité, mais c'est ce que je vais ajouter également. Cela permet donc essentiellement la capacité de tick pour votre entité de bloc. Alors prenez, vous avez probablement entendu dire que c'est 125 de seconde et qu'il va être fait constamment, n'est-ce pas ? Donc, chaque tique, donc toutes les 125 secondes, quelque chose peut arriver. Et c'est exactement ce que nous voulons faire au sein de notre entité. À chaque tique, nous pouvons maintenant faire quelque chose. Et de la façon dont nous allons le faire, je vais copier plus de 1234 méthodes. C'est donc une fois la méthode publique statique de tick vide, puis trois méthodes personnalisées qui seront nécessaires pour démontrer comment vous pouvez, par exemple, créer quelque chose. Maintenant, c'est un exemple grossier, car dans la prochaine conférence, nous allons rendre la civilisation de recettes personnalisées et les clients heureux en disant que nous pouvons créer fichiers JSON pour nous-mêmes. comme machine, pour notre propre entité de blocs, ce qui est vraiment cool. Mais pour le moment, nous allons utiliser cela pour que nous ayons toutes les fonctionnalités ici. Et vous pouvez le voir, donc la méthode tick ici, elle a quatre paramètres, position du monde, nous avons l'état et nous avons l'entité elle-même. Ce qui est vraiment génial, c'est que l'entité, nous avons accès à cela et pouvons faire ce que nous voulons avec elle. Vous pouvez voir ce que je fais, c'est que je peux dire, n'ai pas de recette et n' a pas atteint cette limite. Et ensuite, je vais créer l'objet qui est quelque sorte l'idée générale ici. Et ce que je vais faire ici, vous pouvez voir, c'est que je vais juste retirer la première pile, la pile de la fente 0, arrêts de lot un et de l'emplacement deux. Et puis j'envoie la pile dans l'emplacement 3 à l'Oracle peut choisir x ici et je reçois le même nombre. Je vais donc simplement augmenter le nombre. C'est une idée générale. Et là, en fait nous devons en mettre trois là-dedans. C'est donc très intéressant ici. Que faut-il faire pour cela ? Eh bien, dans la première fente, j'ai besoin d'appeler Sliver, et la deuxième fente, j'ai besoin d'une pioche dorée. Et dans le troisième emplacement, ou dans la fente avec index deux, je vais devoir avoir un lingot oracle. C'est l'idée générale. Et si tout cela est vrai, et si la pile n'a pas atteint la limite, nous pouvons fabriquer l'article et nous le ferons, l'article est fabriqué. Maintenant, cela va ressembler à la prochaine conférence, mais un peu différent. Parce qu'une fois de plus, c'est juste une façon très grossière de tout coder dur. Et je vous promets de ne pas le faire. Ce n'est qu'un exemple pour cette conférence, juste pour que vous puissiez voir n'importe quelle fonctionnalité. La prochaine conférence, nous allons le faire correctement. Il y a très bien avec la sérialisation de la recette, je le recommande vivement. C'est pourquoi j'ai dit de regarder les deux conférences l'une après l'autre immédiatement, parce que ça va être bien, bien mieux, non ? Mais pour la plupart, l'entité de bloc est faite du gestionnaire d'écran ici est la dernière chose que nous devons faire. Mais pour cela, nous allons avoir besoin du gestionnaire d'écran et de l'écran. Ainsi, dans le package de cours MC, cliquez avec le bouton droit sur le nouveau package appelé écran. Et puis à l'intérieur de là, nous allons créer tout un tas de choses. Eh bien, les gestionnaires d'écran de mode, c'est le premier. Et ensuite, le second sera l' écran de recalc blasters. Et puis il y aura le résultat blaster dans Handler. Et ça va bien se passer. Et nous allons d'abord jeter un coup d'œil au gestionnaire d'écran. Ce sera le plus important, l' un des plus intéressants. Encore une fois, je vais copier l'intégralité de la classe et nous allons le parcourir pièce par pièce. Pas de soucis là, non ? Nous l'avons donc. Et nous allons avoir quelques théorèmes de flèches, pas de soucis, car bien sûr, nous devons définir le blaster d'écran Oracle. C'est à peu près la même chose que pour l'entité de bloc, là où nous référençons maintenant celle-ci au lieu de simplement obtenir le type à partir du paramètre. Et ce que vous verrez également, c'est qu'il y a deux emplacements ici, qui sont pour quelque raison que ce soit bien lus, sont des machines à sous personnalisées. Je vais aussi les copier. Cependant. Ce sont des symboles vraiment, très fréquents, comme vous pouvez le constater, celui-ci est très simple. Et puis les résultats sont que le peu de créneaux est également très simple. Et ensuite, nous pouvons réellement les importer dans l'ego. Et je vais les expliquer dans un instant. Mais dans l'ensemble, que fait le gestionnaire d'écran ? Eh bien, en gros, on vérifie la taille Hayes, c'est ça ? Eh bien, il doit en fait être quatre. C'est donc très intéressant. Et nous disons essentiellement, hé, a tout ce que nous devons faire. Il suffit de définir les champs ici, l'inventaire, le monde. Nous n'avons pas encore besoin du monde. Eh bien, peut-être que nous avons besoin du monde lors d'une conférence ultérieure. Ensuite, nous ajoutons nos propres machines à sous. Et c'est ainsi que nous les ajoutons, cette fente à points points, puis nous créons une nouvelle fente. Et vous pouvez voir que je fabrique ici un nouveau logement pour carburant moteur car ici, je veux seulement que du carburant soit placé. Et puis dans ces créneaux, j'ai de l'importance pour moi. Et puis c'est le créneau de résultat. Je ne veux pas non plus que le joueur y place des choses, seulement l'entité de tuile ou le gestionnaire d'écran. C'est très facile. Cela remplace simplement la méthode canon ici et la fente de carburant mod, en fait, j'ai pris la plupart de cela de la fente de carburant du four abstrait. Mais vous savez, en tant qu' idée ou en gros, mais c'est presque tout ce que vous devez faire. Les indices comptent bien sûr, non ? 0, 1, 2, 3. Ce sera également assez explicite. Et puis les x et y ici, ce sera quelque chose de très intéressant, car il s' agit des coordonnées du coin supérieur gauche 000 jusqu'à l'endroit où se trouve la fente. va être sur l'interface utilisateur réelle. Je vais copier sur l'interface graphique qui se dans le dossier textures, une interface graphique. Et puis c'est l' Oracle peut exploser ou l'interface graphique. Et je vais ouvrir ça. Et ce que j' expliquerai essentiellement, c'est que la façon dont cela fonctionne est la suivante. Que si je dois faire ça par exemple, non ? Vous pouvez le voir. Vous pouvez le voir, n'est-ce pas ? Donc ici, il y a 0, 0, on va compter à rebours. Et ensuite, nous allons venir à droite. Et puis ce pixel ici est ce dont nous avons besoin pour cette fente. Et vous pouvez voir qu'il est exactement 18 à droite et 50 en bas. C'est l'idée générale. Si vous avez Photoshop ou si vous avez GIMP ou paint.net, vous pouvez généralement utiliser l'outil Sélectionner pour voir à quelle distance il se trouve et vous n' avez qu'à le compter. C'est la seule façon dont cela fonctionne vraiment, c'est très ennuyeux. Cela peut être très ennuyeux, mais c'est juste ce que c'est. Ensuite, nous avons ces deux méthodes d'aide, qui sont également appelées l' inventaire et la barre chaude du joueur. Maintenant, c'est plus agréable à lire que d'avoir ce truc là-dedans une fois. C'est comme, je ne sais pas, comprendre pourquoi cela ne se fait pas aussi à la vanille. Parce que dans la vanille, c'est juste ça. Tout comme dans le constructeur. Je suis comme, d'accord, c'est bizarre. Ensuite, la méthode du lot transversal est quelque chose que nous n' allons pas regarder du tout. Cela nous permet simplement de cliquer en maintenant la touche Maj enfoncée sur cette pile, dans notre entité de bloc personnalisée. Chaque fois que nous n'allons pas regarder ça parce que c' est en fait des noix de friandises. C'est la pire méthode que j'ai jamais vue. Je ne veux tout simplement pas avoir quelque chose à voir là-dedans, donc ça n'a pas d'importance. Nous allons juste dire, merci que cela fonctionne et que tout va bien, nous pouvons utiliser la méthode va simplement dire : Hé, peut-on utiliser ça ? C'est à peu près tout. Si le joueur est trop loin, quelque chose comme ça. C'est tout ce que cela fait aussi. Passons maintenant aux gestionnaires d'écran, et mettons ça ici. En fait, ça va être assez simple. Il s'agit simplement d'un type de gestionnaire d'écran statique public ou d'un gestionnaire de blast ou d'écran. Le recomptage vient le gestionnaire de soulignement de soulignement ou de soulignement d'écran. Handler. Vous y allez. Est égal à un registre de gestionnaire d'écran, gestionnaire vert, registre, registre il y a. Et ça va être simple, mais c'est très important avec un nouvel identifiant de C corps mod, mod ID. Encore une fois, tout recalc vient sur son blaster de score. Et après les premières parenthèses, nous allons dire le gestionnaire d'écran de recalc et de blaster, deux-points, deux-points nouveaux, et finir ça par un point-virgule. C'est tout ce dont nous avons besoin ici. Encore une fois, le code est également disponible. Vous pouvez également le copier. Maintenant, ne pas tout écrire. Ici, dans le gestionnaire d'écran, nous pouvons voir que l'ère est résolue. Maintenant, dans l'entité de plâtre, nous pouvons également enfin résoudre cette flèche ici. Nous pouvons simplement dire que ce sera un nouvel enregistrement peut exploser ou un gestionnaire d'écran avec l'ID de l'évier, l'inventaire. Et puis c'est l'inventaire, car il s'agit bien sûr d' un inventaire mis en œuvre. Par conséquent, nous pouvons simplement le transmettre dans notre propre entité de blocs. Ensuite, nous pourrons fermer l'entité de bloc. Nous pouvons fermer ça. Nous pouvons fermer ça. Et ensuite, il ne reste que l'écran et l'écran est, comme je l'ai dit, à peu près l'image. Bien sûr, c'est un peu une hyperbole. Il y a un peu plus à cela. Je vais également copier ça et je vais vous expliquer. Donc, dans l'ensemble, vous pouvez voir que c'est un écran de poignée oracle vient béni son gestionnaire d'écran, très important que ce soit un écran géré. Il pointe également vers la texture que vous pouvez voir, c'est un identifiant qui pointe vers l'interface graphique des textures ou une interface graphique PNG de blaster de calcium, qui doit également correspondre. Et puis nous dessinons essentiellement la texture ici et dans les méthodes de dessin d'arrière-plan. Donc, en gros, il suffit de centrer le titre au milieu de l'entité de bloc. Et ensuite, la méthode de rendu ne fait que rendre l'arrière-plan, les infobulles. Et cette méthode de texture de dessin va être très intéressante, surtout lors de la prochaine conférence, où nous allons ajouter la progression du feu et la barre de progression des flèches. C'est ce que vous devez appeler essentiellement pour ajouter d'autres éléments à l'image, pour dessiner davantage sur l'image. Parce que si nous regardons cela, vous avez le feu ici et la flèche juste là. Et cela, nous devons superposer cela et élargir la taille de celui-ci en fonction, disons les progrès par exemple. C'est donc l'idée générale ici. Mais pour le moment, celle-ci, à droite, la texture de dessin avec x, y, 000 largeur de fond, hauteur de fond dessine simplement toute l'équipe du Goo ici. C'est l'idée générale. En dehors de cela, nous devons également appeler une chose dans le cours MC, méthode conforme ou plutôt la classe. Et ce sera le registre d'écran, le registre qui s'enregistre avec les modèles étant les gestionnaires point ou Malcom l'année dernière, le gestionnaire de la Suède et le calcium blaster écran deux-points, le côlon nouveau est très important que ce soit l'écran dans le deuxième paramètre et les gestionnaires d'écran de mode référencent essentiellement dans le premier. Très important, encore une fois, peut parfois être un peu déroutant, mais c'est la façon de base que cela doit être. Et puis tout devrait être configuré correctement. Et ils parlent de ce point, voyons si ça marche. Ou vous vous retrouvez à Minecraft. Et comme vous pouvez le constater, voyons simplement ce qui se passe. Il y a que le recalc et le blaster, et vous pouvez voir que tout fonctionne toujours bien. Nous pouvons même décaler le clic, c'est encore mieux. C'est plutôt cool. Maintenant, mettons simplement le, si on essayait de mettre autre chose ici, ça ne marche pas. Le niveau de cours, cependant, fonctionne parce qu'il a causé foie est un élément combustible, donc il fonctionne. Et ici, nous ne pouvons pas non plus rien insérer. Mettons simplement une pioche très accueillante et en bas, en haut. Et puis ici, un récapitulatif pourrait choisir x devrait apparaître. Et le voilà, ça a vraiment fonctionné. Maintenant, je ne suis pas sûr à 100  % s' ils sont toujours une flèche avec ça. Non, il n'y en a pas. Tout cela fonctionne. Et cela ne fonctionne pas non plus car la limite de pile ici a été atteinte. Nous pouvons donc en ajouter un autre, et dès que je le retire, l'autre est ajouté. Cependant. L'Oracle peut exploser fonctionne déjà. Bien sûr, il ne tire pas ici et il n'y a pas de barre de progression pour le moment. C'est ce que j'ai dit. Fondamentalement, tout est codé en dur et des trucs comme ça n'est certainement pas conseillé. C'est juste une façon que vous pouvez vraiment voir, hé, ça fonctionne vraiment et tout ici est, eh bien, très bien travailler, non ? Une autre chose que nous devons ajouter à l'explosion ou à l'entité est deux méthodes qui sont très importantes pour sauvegarder l'inventaire lorsque le monde réel s'améliore, lorsque vous quittez le monde, et ce sera la bonne méthode NVT et NVT en lecture. Et vous pouvez voir que dans les inventaires sont juste dans la viande que les stocks lus et lus sont vides. Vous y allez. Cela aurait donc été fatal. Eh bien, tu y vas. Il s'agit donc essentiellement de l'inventaire, n'est-ce pas ? Il écrit les listes par défaut de l' inventaire ici dans les données NVT , puis la liste rouge la lit. C'est donc l'idée de base ici. Et c'est très important que nous l' appelons également comme autrement, lorsque nous fermons le monde, cela ne sauve pas l'inventaire. C'est donc l' idée générale, n'est-ce pas ? Par exemple, en ce moment, j' ai 62 foies d'appels ici. Eh bien, fermons juste le monde. Et nous allons juste y retourner. Et voyons si les éclats de charbon restent et ils sont toujours là. Et là, ils sont 62 amoureux de la cause, Allons-y. Tout a été sauvé. Comme je l'ai dit, c'est un sujet très alambiqué et il y a beaucoup de pièces mobiles ici. La fiche de triche sera disponible pour vous en téléchargement, ainsi que bien sûr , vous avez le référentiel GitHub et l'endroit où vous pouvez jeter un coup d'œil à tout ce que vous allez. à ajouter ici. Et dans l'ensemble, ça va se passer, c'est exactement comme ça. Ainsi, l'entité des entités de bloc est tout simplement très compliquée et vous aurez juste besoin de passer à travers et d'essayer de comprendre chaque partie de celle-ci. J'espère que j'ai été en mesure de faciliter cela, quel que soit le cas. C'est tout pour cette conférence ici. J'espère que vous avez trouvé cela utile dans les apprentissages du nouveau, Si vous l' appréciez beaucoup, critique de votre part. Sinon, je vous verrai lors de la prochaine conférence. Oh, oui. 87. (Advanced) Types de recettes personnalisés de recettes personnalisées: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons examiner comment ajouter une recette de type Minecraft a. Auparavant, nous avons créé notre entité recalc et blaster breaké. Et je vous ai dit que c'est une façon très grossière de fabriquer ici. Parce que ce que nous voulons, c'est que nous voulons pouvoir utiliser fichiers JSON de recette normaux ou notre entité blaster. Cela va non seulement améliorer la situation, car nous n' avons pas à tout coder en dur ici. Et puis aussi, et c'est encore mieux. Il permet à un plus grand nombre de fabricants de packs, par exemple, ajouter des recettes personnalisées pour notre entité de verrouillage et des choses similaires. Une fois encore, je vais copier la majorité du code. Tout cela est donc disponible dans le référentiel GitHub ou dans les juristes. Vous avez donc tout à votre disposition et je vous expliquerai au fur et à mesure. Ainsi, dans le package de cours MC, cliquez avec le bouton droit sur un nouveau package appelé recette. Et puis à l'intérieur de là, nous aurons besoin deux cours, des recettes immortelles. Et puis aussi le recomptage arrive en dernier ou recette. Et nous allons commencer par copier l' intégralité des coûts respiratoires du blaster. Maintenant, encore une fois, je vais passer par là et je vais expliquer qu'il ne devrait y avoir aucune erreur ici. Tout d'abord, vous pouvez voir que cela implémente la recette de l'inventaire simple. C'est tout simplement logique parce qu'un inventaire simple est à peu près juste un inventaire simple. Vous pouvez voir qu'il existe trois champs. Il y a une sortie, il y a une liste d'ingrédients par défaut, qui sont les éléments de la recette. Il s'agit des entrées et il y a également un identifiant. C'est essentiellement le nom que vous pouvez avoir dans votre fichier JSON, mais nous allons le voir dans un instant. Ainsi, le constructeur de recette Oracle peut exploser exactement les trois paramètres différents que vous avez en tant que champs. C'est très important. Et puis il y a une méthode très importante et c'est la méthode correspondante. Maintenant, la méthode des correspondances, comme vous pouvez le voir, prend dans l'inventaire et vous pouvez également obtenir les articles de la recette. Donc, les éléments de la recette, c'est la liste qui a été lue à partir du fichier JSON, ce qui signifie que quelle que soit la liste que vous avez d' ingrédients ou d'éléments à l'intérieur de votre fichier JSON. Ils vont être sauvés ici. Et ce que ça essaie, c'est que ça va dire, c'est le premier ingrédient de notre liste, comme dans le fichier JSON, correspondre la pile à l'intérieur de l'inventaire. Si c'est le cas, nous allons continuer si le suivant correspond à la pile et à l' inventaire du deuxième emplacement. Pour cela aussi, nous allons renvoyer ceci, ce qui sera vrai, espérons-le, alors cela détermine essentiellement s'il y a ou non une recette présente à l'intérieur de l'inventaire. C'est très important. C'est donc l'une des principales méthodes qui est très importante. Mais aussi si vous avez un inventaire plus important, si vous avez plus de créneaux dans lesquels vous devez placer des objets. Il s'agit de la partie dans laquelle vous devez définir la fonctionnalité. Fondamentalement, c'est ce qui sera le plus coutume. Lorsque vous créez vos recettes personnalisées ou des entités rock personnalisées, essentiellement si elles ont l'air complètement différentes, si elles ont peut-être 12 emplacements différents et que vous devez mettre certaines choses dans certaines machines à sous et des trucs comme ça. Il s'agit essentiellement de la méthode dans laquelle la plupart de ces fonctionnalités seront la plupart de ces fonctionnalités programmées, comme implémentées. Et c'est très, c'est très difficile de vraiment traverser, accord, comment on doit tout faire pour toutes les manières différentes. Encore une fois, ici, à ce stade, la connaissance de Java, si vous ne l'avez pas, vous serez probablement perdu à jamais. Ce n'est pas, c'est très, très complexe et je suis sûr que vous l'avez déjà compris à ce stade. Cela va être très intéressant ici. En effet, les autres méthodes ne sont pas très intéressantes. Vous pour la méthode artisanale, nous avons juste, la sortie Fitts est juste vraie. Obtenir la sortie n'est qu'une copie de la sortie, l'identifiant. Nous allons juste obtenir une pièce d'identité, qui tourne l'edim. Et puis nous en arrivons à des choses intéressantes et c'est le sérialiseur de recettes ainsi que le type de recette. Parce que nous pouvons voir que nous avons deux classes statiques ici, la classe type et la classe de sérialiseur. Et en fait, c'était juste nous aider énormément parce qu'ils nous facilitent la vie. Parce que nous avons ici l'instance du type ainsi que le sérialiseur. Et nous pouvons simplement demander à ces deux méthodes ici où la classe de type n' est pas si intéressante. La classe de sérialiseur que vous pouvez voir comporte en fait trois méthodes. C'est la méthode de lecture, de lecture et d'écriture. Passons donc en revue aussi. La première chose ici, cette chaîne ici, le nom qui doit être donné dans le fichier JSON. Très important. Nous allons voir cela dans un instant. Mais il est très important que cela corresponde bien sûr là. Ensuite, nous avons la méthode de lecture ici. Il s'agit de la méthode de lecture à partir d'un fichier JSON. Cela va donc être lu à partir d'un fichier JSON, et vous pouvez le voir. Cela se lit donc en premier lieu , la sortie ici. Et il sera lu dans une zone adjacente des ingrédients. Ensuite, il va créer une liste par défaut de taille 2. Maintenant, vous pouvez dire, attendez, mais nous avons quatre lots différents. Oui, mais nous n'avons que deux emplacements d'entrée. Nous avons un emplacement de carburant pour les emplacements d'entrée et un emplacement de sortie. Et c'est pourquoi il n'y a que deux ans, car les intrants, il n' y a que deux intrants. Tous, dans n'importe quelle recette. En gros, nous allons juste définir correctement ces entrées. Et ensuite, nous allons faire une nouvelle recette ici. Et la même chose se produit à peu près avec l'autre lecture et la méthode d'écriture fait que nous utilisons dans le tampon des paquets. Tout cela fonctionne donc au fil de l'année du réseau. Ce qui est très important ici, c'est que lorsque nous écrivons des choses, n'est-ce pas ? Vous pouvez voir ce que je fais, c'est que je peux voir que j'écris un entier avec la taille de notre liste d'ingrédients. Ensuite, j'écris chacun des ingrédients, puis j'écris la sortie. Cette commande doit être exactement la même ici. Vous pouvez donc voir que j'ai lu un entier qui va être celui-ci. Ensuite, j'ai lu chacun des ingrédients et c'est fini. Et puis j'ai lu la sortie, mais l'ordre dans lequel vous l'écrivez pour le tampon de paquets doit être le même que l'ordre dans lequel vous la lisez. Vous faites une erreur là-bas. Dans l'environnement de développement, vous ne verrez rien qui ne va pas chez vous, vous allez vous voir. Quelque chose qui ne va pas, c'est que dès que vous le placez sur le serveur et que vous essayez de rejoindre le serveur, cela ne fonctionnera plus. Très important, très important que vous gardiez cela à l'esprit, que tout correspond ici. Et c' est à peu près le bus de recettes pour la recette de votre client. Il y a bien sûr un tas de choses que vous pourriez changer, n'est-ce pas ? Si vous dites, Hey, j' ai en fait plusieurs sorties. Bien sûr, vous pouvez changer cela. Vous pouvez dire, Hé, en fait, je n'ai qu' une seule entrée ou encore plus d'entrées, ou vous pouvez, c'est tout. Il y a quelque chose que nous sommes. Java est probablement ce qui vous retient parce que la plupart de ces choses sont à peu près des trucs Java normaux. Il n'y a presque rien ici qui dit Minecraft. La seule chose qui dit Minecraft est essentiellement la pile d'objets. Mais c'est quelque chose que les gens qui connaissent beaucoup de Java, mais pas beaucoup de Minecraft pourraient probablement trouver très, très vite. C'est donc quelque chose que je veux vraiment rentrer chez moi. En gros, c'est fini comme si le terrain de jeu n'était plus à ce stade. Nous sommes comme Indeed et oui, c'est juste ce qu'il va être, mais nous allons continuer et cela va être dans la classe de recettes. Et je vais aussi copier ça. C'est en fait très simple. Vous n'avez qu'une méthode de registre et vous pouvez voir tout d'abord, nous sommes un tiroir, nous enregistrons le sérialiseur de recette avec l'ID du sérialiseur, puis l' instance, puis le type de recette. Il y a aussi l'idée du type, puis de l' instance du type. C'est donc assez simple aussi. Et celui-ci, nous devons en fait appeler à l'intérieur de la classe MOD du cours MC. Et nous allons appeler ça. Faisons-le juste ici. Recettes Mod, pas enregistrer que vous allez pour ce que nous avons appelé ça, c'est très important. Et puis ces deux cours, nous pouvons en fait fermer parce que nous en avons fini avec eux. Et nous pourrons ensuite continuer à rejoindre l'entité. Nous avons déjà cette ouverture ici. Et maintenant, cela va être très intéressant, c'est que nous allons réécrire majoritairement l'entité ici. Parce que ce que nous allons ajouter, c'est que nous allons ajouter un délégué de propriété. Je vais donc le copier encore une fois, tout cela est disponible pour vous et vous pouvez voir que nous avons un délégué de propriété finale protégé et cela sera créé ou disons oui, créé à l'intérieur de le constructeur. Je vais donc aussi copier ça. Vous pouvez voir que ce délégué de propriété est égal à un nouveau délégué de propriété. Ensuite, nous avons des instructions de commutation qui faisaient référence à la progression, à la progression maximale, au temps de carburant et au temps maximum de carburant. L'idée générale est que nous avons ces quatre entiers ou ces quatre points de données que nous voulons transmettre dans le gestionnaire d'écran. Puis, plus tard, à l'écran, nous pouvons montrer les progrès et aussi le carburant. Eh bien, essentiellement dans la quantité de carburant qui brûle encore. Cela va donc être un peu plus compliqué une fois de plus, car nous devons le faire dans un délégué de propriété car cela doit être enregistré sur le serveur et le client. Car encore une fois, l' écran est uniquement client et le reste est essentiellement à la fois serveur et client. Et si nous le passons simplement, cela ne marchera pas. Vous franchissez essentiellement les barrières là-bas, ce que vous ne devriez pas faire. C'est donc très important. Ensuite, nous devrions également ajouter trois éléments au tarif dans la méthode GET. Il s'agit de la progression du blaster, du temps de carburant et du temps maximum avec la bonne méthode , en le plaçant ici. Alors, mettons ça ici. va bien se passer, là où nous lisons essentiellement dans la progression, le temps de champ et le temps maximum de champ. Ainsi, tout cela est également sauvegardé en ce moment, l'essentiel qui va être le changement de ces quatre méthodes. Encore une fois, je vais tout copier, mais j'espère que j' expliquerai bien, d'une manière qui sera satisfaisante. Il y a beaucoup de méthodes que nous devons copier. Il suffit donc de les copier et de voir si tout fonctionne ici. y a donc pas de flèches, ce qui est bien. Mais vous pouvez voir qu'il y a beaucoup de choses ici. Passons tout d'abord à la méthode des ticks. Encore une fois, la méthode des tick. J'ai retravaillé cela de la manière suivante. J'ai donc ici une méthode qui s'appelle la consommation de carburant. Maintenant, consommer du carburant signifie essentiellement que j'ai mis un combustible et qu'il brûle toujours sorte que le feu brûle encore. Vous le savez depuis le four normal, n'est-ce pas ? Les feux brûlent. Et si je devais mettre un ou un bloc, par exemple, ça commencerait à sentir. C'est la méthode consommant du carburant. C'est ce que ça revient, non ? Si c'est vrai, il y a encore quelque chose là-dedans. Si c'est faux, ce n'est pas le cas. Donc, tant que nous consommons du carburant, nous allons juste dire : Hé, temps de carburant va diminuer chaque tique, non ? C'est exactement ce qui arrive. Bon, c'est assez juste. Cela devrait donc être assez explicite. Ensuite, nous allons dire qu'il y a une recette. Maintenant que la méthode de la recette a complètement changé à cette fin. Je vais vous expliquer rapidement ce que c'est. Tout d'abord, nous allons juste obtenir le monde ne devrait pas être trop fou. Ensuite, nous réalisons un inventaire simple de la taille de l'inventaire des entités. Ensuite, nous ne faisons que définir chaque pile que nous avons dans notre entité sur l'inventaire. Maintenant, ce n'est qu'un raccourci pour confirmer l'inventaire ici. Parce que notre entité n'est pas un simple inventaire, mais nous devons disposer d'un inventaire simple pour notre recette, mais c'est l'idée générale. Et puis vous pouvez voir que nous obtenons cette option de notre recette, appelée match, et ensuite nous avons le monde mais le gestionnaire de recettes au premier match, où nous disons essentiellement, Hé, nous avons ce type, lire le type de recette, cet inventaire et ce monde, n'est-ce pas ? Et puis on dit simplement, hé, est-ce qu'il y a une correspondance pour ce type ? Y a-t-il une recette qui correspond à cet inventaire ? En gros, en disant, Hé, si la méthode correspondances dans la recette ici revient vraie. C'est l'idée générale, c'est ce qu'on appelle essentiellement, nous devrions également pouvoir le voir, mais c'est certainement plus compliqué que vous pouvez le voir, que l'idée générale est que vous pouvez voir la correspondance de type point. La méthode de correspondance est appelée et cela a essentiellement provoqué la méthode du matelas dans la recette. Et si c'est vrai , nous allons avoir quelque chose ici. Et les allumettes présentes disent simplement : Oui, nous avons trouvé une recette qui correspond ou l'inventaire du type de recette fourni. C'est donc vrai. Ensuite, nous savons que nous avons trouvé une recette et qu'il y a d'autres choses que nous devons vérifier. Ainsi, par exemple, peut insérer la quantité dans le slot de sortie, juste une méthode d'aide qui dit essentiellement, Hé, si le nombre maximum est plus grand que le nombre réel que nous avons déjà obtenu. Nous n'insérons rien. Cela permet simplement de s'assurer que, par exemple, lorsque nous avons déjà une pioche là-dedans, nous ne pouvons pas insérer d' autres actes de picotement, ce qui en fait une pile d'axes à choisir, ce qui, bien sûr, n'en fait aucun sens. Et puis nous avons également l'élément peut insérer dans l'emplacement de sortie, ce qui vérifie essentiellement, Hé, est-ce le même élément ou la pile est-elle vide ? Nous pouvons donc simplement entrer quelque chose là-dedans. Mais c'est essentiellement les méthodes qu'il vérifie également. Assurez-vous simplement que tout va bien et que rien ne soit fondamentalement écrasé. Eh bien, c' est la méthode Has Recette. Une fois que c'est le cas, nous allons voir, hein, est-ce maintenant ? Il n'y a pas de carburant dans un emplacement de carburant. Ce sera donc ici. Il dit simplement que c'est la première fente vide en gros, parce que nous savons que dans notre emplacement, qui a le carburant avec l'indice 0, s'agit d'une fente de carburant, donc il n'y a jamais eu que du carburant. C'est donc très intéressant. On peut donc dire : « Hé, si ce n'est pas vide, on sait qu'il y a du carburant dedans. Et si nous ne consommons pas de carburant pour le moment, nous allons simplement consommer du carburant. Mais cela n' arrive que lorsque nous avons une recette présente là-dedans, des trucs là-dedans. Et puis la méthode du carburant du cône Zoom, en fait aussi assez simple. Nous sommes juste une fois de plus en train de vérifier la santé mentale. S'assurer que ce n'est pas vide, c'est que nous en sommes absolument sûrs. Ensuite, nous réglons le temps de carburant à l'heure réelle de la pile retirée. Donc, si j'y mets un rhume, je vais me rendre cent, six cents pour le temps qu'il prenne les tiques. Et puis, s'il y a quelque raison que ce soit le foie, je vais en avoir 400 et ainsi de suite et ainsi de suite. Ainsi, cela règle simplement le temps de carburant, puis il fixe le temps de carburant maximum une fois le temps de carburant aussi bien que lui-même. Pour cette raison, nous avons besoin que les deux soient sûrs d'afficher correctement les progrès. Nous avons besoin du maximum, vous aurez le temps de champ actuel. L'heure du terrain est ce qui change. La durée maximale du champ reste fondamentalement la même une fois que c'est réglé, une fois que le carburant a été consommé, où en gros demander : Hé, est-ce que ça consomme du carburant ? Et si c'est le cas, nous pouvons progresser. Le progrès ici est donc celui de l' objet en cours de fabrication. Cela sera également affiché dans la flèche de progression. Et puis ici, vous pouvez voir qu'en ce moment, ce que j'ai mis en place, c'est que j'ai toujours une progression maximale de 72. Maintenant, c'est quelque chose que vous pourriez, par exemple, changer à l'intérieur de la recette et dire, hé, cela prend plus de temps, cela prend plus de temps, peu importe. Également possible pour le moment, je l'ai codé en dur. C'est juste quelque chose que j'ai décidé de faire, rien à craindre. Et puis nous disons essentiellement : Hé, si la progression est supérieure à la progression maximale, alors nous allons créer l'objet. Et puis la confection de l'article une fois de plus, juste pour leur contrôle de santé mentale, gros, à la fois en disant : « Hé, c'est une recette qui existe ici. S'il est présent, nous allons supprimer les emplacements 1 et 2. Nous allons donc retirer les articles de rafting qui sont importants. Nous n'allons pas enlever le sel zéroeth car cela se produit déjà lorsque nous recevons le carburant. Lorsque nous consommons le carburant, vous pouvez le voir, nous pouvons dire retirer la pile ici, puis récupérer l' article de cette pile. Fondamentalement, faites le carburant. C'est très important. C'est pourquoi nous ne retirons que 12. Et puis nous disons, Hé, nous définissons la pile de trois avec un nouvel élément, la pile de cet élément, qui est exactement l'élément obtenu de la sortie. C'est donc ce qui est lu dans, dans la sortie du fichier JSON de notre recette ou recette client et de notre compte je vais juste être augmenté d'un. Donc, s'il n'y a rien là-dedans, ça va être réglé sur un seul. S'il y a déjà quelque chose là-dedans, nous allons simplement l' augmenter d'un. C'est donc l'idée générale ici. Il y a aussi d'autres moyens de le faire. Par exemple, nous pourrions faire en sorte que vous puissiez spécifier le nombre d'entre eux. Et puis, au lieu de l' augmenter d'un, vous l'augmentez de ce nombre, ainsi de suite et ainsi de suite. Il y a beaucoup de choses que vous pouvez faire, mais l' ensemble, c'est comme ça que nous le faisons pour le moment. Tout cela à peu près au fur et à mesure, est beaucoup plus variable et variable de guerre, ou vous direz personnalisable. Vous pouvez donc faire de plus en plus de choses ici. Ensuite, nous appelons la méthode de progression de réinitialisation de l' entité, qui remet simplement la progression à 0 afin que nous sachions que tout est fondamentalement réinitialisé et malheureusement, nous n'avons pas encore fini. Mais j'espère que c'était une bonne présentation de tout cela et explique très bien tout cela, espère identique donc, s' il reste des questions, veuillez utiliser les questions et réponses, et j'essaierai. pour répondre au mieux aux questions que je peux. Je recommande également fortement d'être ouvert à l' expérimentation, jouer un peu avec ça, d'essayer un tas de choses. C'est toujours la meilleure chose que vous puissiez faire. Parce que ce que nous devons faire, c'est que nous devons entrer dans les classes d' écran et de gestionnaire d'écran. Nous devons en fait ajouter ici un nouveau paramètre qui sera les délégués de la partie ROM, donc délégué des propriétés, ancien délégué. Et c'est juste le formater un peu différemment de l'intérieur de l'autre ici, nous allons juste dire dans chaque délégué de propriété de taille quatre. Et ensuite, nous voulons ajouter cela en tant que champ. Donc, quand je parle de délégué privé, de propriété finale ou de délégué de propriété. Et puis nous sommes juste en train de régler cela après que l'inventaire assez délégué, délégué. Et puis dans l'entité, nous allons obtenir une flèche ici, car maintenant nous devons également transmettre ce délégué de propriété de points. Et l'erreur disparaît ici, l'entité doit être faite. Maintenant, je crois que je suis assez certain ici à la fin, ou nous voulons ajouter que nous voulons ajouter les propriétés d'ajout et ensuite ajouter le délégué ici. C'est littéralement tout ce que nous faisons. Et là, nous avons également besoin quatre méthodes différentes que nous voulons terminer. Et je vais bien sûr les expliquer aussi. Nous avons la méthode d'artisanat. Cela dit simplement : Hé, avons-nous des progrès en ce moment ? Si nous en faisons avec eux, nous sommes en train de fabriquer. Vous avez du carburant. Cela signifie simplement que si le carburant est supérieur à 0, nous savons que nous avons du carburant qui est brûlé. Et nous avons tous les deux besoin de la progression de l'échelle ainsi que de la progression du carburant à grande échelle. Maintenant, vous verrez que ces méthodes sont assez fréquentes folles, n'est-ce pas ? Eh bien, l'idée est que ce ne sont que les choses normales que vous devez calculer pour obtenir l'erreur. Par exemple, pour réduire ou la flèche de progression, n'est-ce pas ? Donc c'est une flèche de progrès ici n'est bien sûr pas tout à fait juste, n'est-ce pas. C'est la taille de la progression du carburant, disons quelqu'un comme ça, parce la taille des quelques progrès. Donc encore une fois, si j' ouvre l'interface graphique ici, c'est 14 par 14 et nous allons en gros tomber, non ? Nous voulons donc que ce soit 14 si le carburant est complet, et ensuite nous voulions simplement y aller avec celui-ci. Il s'agit de 26 de l'autre. C'est pourquoi cette flèche taille 26. Il s'agit donc toujours de la largeur des pixels de votre flèche ou de la hauteur, selon que vous voulez aller de haut en bas, de bas en haut ou de droite à gauche à droite. C'est l'idée générale. Quelque chose est déroutant ici. Ne vous inquiétez pas. Essayez beaucoup de choses selon certaines valeurs, voyez ce qui réagit, ce qui se passe. Je recommande toujours, non ? Mais dans l'ensemble, il devrait y avoir des mathématiques de base ici. Cela ne devrait pas être trop fou maintenant, mais nous l'utilisons. Eh bien, nous l'utilisons dans la boîte verte juste ici. Et je vais copier les deux dernières choses dont nous aurons besoin. Et voilà les textures larges ici. Ce sera donc la flèche et ce sera la texture du combustible. Maintenant, vous voyez déjà qu'il y a des trucs assez fous ici. Oui, c'est ça le truc. Parce que ce qui se passe, c'est le décalage ici, n'est-ce pas ? Le 8422 va être cette compensation. Je vais donc vous montrer ça. Il s'agit donc du taux d'erreur et la flèche commence ici, et c'est 84 pixels de ce côté, puis 22 pixels du haut vers le bas. Et c'est là que je veux dessiner cette flèche, non ? C'est ici que je veux dessiner ça. Et ensuite, que dois-je dessiner ? Eh bien, c'est celui-là. Ainsi, le 176 et le 14 coïncident exactement ici. Alors, la question est la suivante : quelle est la taille de ce que je veux dessiner ? La hauteur sera toujours de 36 tarifs, donc cela sera toujours là. Mais la progression de l'échelle va alors augmenter. La largeur de ce que je veux afficher est donc affichée au fur et à mesure que la progression augmente. Et c'est ainsi que la flèche est dessinée. Maintenant, pour le carburant, comme vous pouvez le voir, c'est beaucoup plus compliqué parce que ce que je veux réellement aller de haut en bas, et parce que les valeurs ici commencent par 0000 ici, nous devons faire quelques calculs. la folie ici même où nous augmentons et diminuons ces choses. Je ne m' inquièterais pas trop de ça. Ce sera toujours la même idée lorsque vous utilisez quelque chose que vous voulez augmenter de haut en bas. Dans l'ensemble, jouer avec cela va vous montrer comment cela fonctionne. J'espère que l'introduction générale ici est logique, n'est-ce pas ? Donc, où vous savez essentiellement d' où viennent ces valeurs, ce qu'elles pointent et pourquoi nous appelons essentiellement ce que nous appelons ici. Eh bien, ça, c'est logique ici. Mais sinon, nous en avons fini avec un code. C'était, encore une fois, une chose assez alambiquée. Il y a beaucoup de choses ici. Ajoutons maintenant une recette personnalisée. Pire encore parce que nous devons avoir une recette. Sinon, nous ne pouvons pas. Tout ce qui se passera dans notre dossier de données et dans le dossier recettes. Et cela va être le recalc et choisir X dans recalc et blaster. C'est donc dans la recette du cours MC qu'ils vont et c'est à ça que ça ressemble. Le type est constitué de noyaux MC ou d'un blaster de vache. Et il va faire un avertissement car cela n'existe pas. Non. Croyez-moi, il existe. On vient de s'en sortir. Et puis vous pouvez voir que la première sera une pioche dorée. Le dernier sera un lingot de calcium ou un lingot de calcium, puis la sortie sera un Oracle peut choisir x et vous pouvez simplement ajouter littéralement plusieurs fichiers JSON ressemblant à ceci. Et ils vont tous travailler. C'est la beauté de tout ça. C'est pourquoi, pendant ce temps. Cela semble avoir beaucoup de travail au début. Dès que vous pouvez y ajouter ces fichiers JSON, vous avez beaucoup plus de facilité avec eux. Donc, pour être sûr, voyons si ça marche. Ou ce que nous trouvons, c'est ça dans Minecraft. Et la première chose que je veux dire, si vous avez déjà une entité de bloc que vous asseyez supprimée, comme la détruire parce que cela pourrait avoir des effets néfastes là-dedans comme le NVT les données qui ont été enregistrées pour cela peuvent être très différentes. Nous devons réaffirmer cela et nous pouvons toujours l' ouvrir totalement bien. C'est très bien. Mais voyons un axe de cochon doré ici aussi. Vous pouvez donc voir si cela va fonctionner ou non. Mettons donc le foie de charbon ici. Mettons l'oracle en bas, puis juste ici, et voyons si quelque chose se passe. Et c'est là. Regardez la progression commence, ça baisse et bam, dans Oracle peut choisir x, les deux éléments ont disparu. Voyons si nous pouvions tous les deux là-dedans. Cela n'a donc pas l'impression que rien ne se passait et retirez le ruban et vous pouvez maintenant voir qu'il fonctionne encore bien sûr, car il y a encore du carburant là-dedans. Et bam, nous en avons un, les Orques entrent, arrivent ici, restent. Et puis il y a un gros X là. Si nous n'avons pas de carburant, rien ne se passe parce que nous n'avons pas de carburant. Et dès que je mettrai du carburant, il sera consommé. Et nous allons continuer avec ça. Cependant. C'est là. Tout fonctionne encore mieux qu'avant. Nous avons maintenant des progrès. Nous voyons combien, combien de carburant il reste. Et tout cela est absolument génial. Donc je veux dire, ça ne pourrait pas être mieux. Tout fonctionne toujours et c'est génial, non ? Encore une fois, cette conférence a été définitivement plus complexe une fois de plus. Mais ce sera à peu près le reste du cours parce que nous allons maintenant passer à d'autres choses. Et ensuite, la génération mondiale va entrer, ce qui va également être très compliqué. Donc, c'est juste ce que ça va être. Mais pour le moment, c'est à peu près tout cela pour cette conférence ici. J'espère que vous avez trouvé cela utile et les urines du nouveau, et je vous verrai lors de la prochaine conférence. Donc, oui. 88. (Advanced) Bois personnalisés: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter du bois personnalisé à Minecraft. Nous allons donc rendre un sujet un peu plus facile, couvrant essentiellement dans cette conférence, afin que nous puissions essentiellement remettre des deux dernières conférences. Et ensuite, nous continuerons immédiatement avec de la folie. Pour le moment. Le logo serait dépouillé, dépouillerait le blog et les planches. Tous ces éléments vont être ajoutés ici. Prenons simplement la rose rose et faisons ça le journal de soulignement en fleur de cerisier. Et puis, bien sûr, il est très important que nous changions cela aussi dans le nom. Donc, les fleurs de cerisier soulignent la bûche, alors c'est un bloc de pilier. Pour le bloc de piliers ici. Il n'y a qu'un seul paramètre. Et c'est à peu près tout ce que nous devons faire. Cela va donc copier la bûche de chêne et ensuite nous allons juste le copier cinq fois pour cela que nous avons sur ce genre. Donc, des groupes de deux fois deux, puis un seul. Et ensuite, on va juste passer par là. Ce sera donc la fleur de cerisier bois de fleurs de cerisier. Et la seule chose qui change ici, c'est que cela l'emporte réellement dans le bois de chêne. Maintenant, ce n'est pas strictement nécessaire. Cependant, j'aime bien le faire. Alors pourquoi pas ? Ce sera la bûche de cerise de soulignement dépouillée. Et même pour le nom. Cela commence par dépouiller. Et puis, ce sera la bûche de chêne dépouillée. Celui-ci est le trait de soulignement dépouillé. Le soulignement des fleurs de cerisier le ferait. Encore une fois la même chose ici. Souligner Cherry Blossom le ferait. Et puis il va prendre la même chose ici dépouillée. Ok, ils le feraient il y a ? Et puis ce sera le trait de soulignement. planches sont importantes, c'est au pluriel. Ou les planches sont généralement en Laurel. Et puis, ce sera un bloc fou , le bloc normal. Et ça va prendre les planches ici. Ce sera donc le soulignement planks ego. Et c'est tous les blocs enregistrés. Eh bien, c'était assez simple, n'est-ce pas ? Oui. Ce dont nous allons avoir besoin ici maintenant, c'est ce dont nous avons besoin pour les rendre impossibles. Comment pouvons-nous faire cela ? Eh bien, c'est vraiment facile dans la classe des registres modernes. Nous allons juste ajouter un nouveau vide statique privé pour la méthode Register Strip Bubbles. Et cela va appeler le registre des blocs scriptables. Ce registre avec le bloc de taupes commence une bûche ribosome , puis bloque la bûche de cerisier dépouillée de points. C'est donc très important. Nous allons juste dupliquer cela avec Control D. Lorsque cela changerait cela aussi, alors changer cela le ferait également. Vous y allez. Et n'oubliez pas d'appeler ça ici. C'est donc très important. Enregistrez les bulles de bande juste là. Et puis la mobilité des bandes, pour ainsi dire, est déjà terminée. N est déjà froid. Et maintenant passons à la partie préférée des fichiers de tout le monde, le fichier adjacent. Ou en fait, je dirais qu'ils sont certainement un peu plus compliqués que ce que l'on pourrait s'y attendre. Nous n' aurons donc que cinq blocs fichiers Js et nous allons juste les jeter un coup d'œil en général. Donc, vous voyez qu'un bloc de piliers ressemble essentiellement à ceci. Il possède ici des propriétés d'état de bloc d'axe, d'axe x , de l'axe des y et des valeurs qu'il peut prendre puis pointe simplement vers le même modèle, ou pointerait-il vers le même modèle, cependant, simplement pivoté dans le Cependant, vous pouvez voir que cela pointe vers l'horizontale et celle-ci également. Et celui-ci pointe le blog normal. C'est donc à peu près la seule différence entre ces planches qui sont absolument ennuyeuses, juste des états normaux du Bloc. Basé sur le fichier. se passe rien de fou là-bas. Ajoutons aussi la traduction parce que ça va être le cas, et puis je veux dire, parfois je l'oublie. Alors ajoutons-le aussi. Mettons-le juste ici. C'est donc quelque chose comme ça. La bûche, le bois, la bûche , les versions souvent dénudées et les planches. Et bien sûr, tout le code, les fichiers JSON, tout cela est disponible dans le référentiel GitHub ou un individu tout aussi. Parce que surtout quand nous arrivons maintenant aux fichiers JSON du modèle de blocs, eh bien, c'est là que nous commençons à dire, eh bien, vous savez, probablement copier. Je peux maintenant comprendre pourquoi cela peut être sensé. Parce qu'à un moment donné, c'est juste beaucoup. Il va donc y avoir sept dossiers à nouveau. Oh, ajoutons-les pour que nous ayons le, fermons juste un tas de choses que vous allez consigner. Il y a un verrou en haut, à droite, bien sûr, parce que le haut et le bas, les extrémités sont différentes des côtés. Il s'agit également de la colonne du cube. Et puis il en va de même pour l'horizontale, peu près la même chose. Les planches sont des planches normales. Je veux dire, je ne sais pas quoi vous dire. fait, les planches sont très ennuyeuses. L'extrémité du bois est la même parce que le bois, en gros, c'est juste l'écorce. Alors, qu'y a-t-il tout autour ? C'est l'idée ici. Ensuite, nous avons le haut dépouillé et la bûche. Encore une fois, c'est la même chose. C'est, tout reste le même, comme si le reste n' est pas si intéressant. Tout est considéré, c'est peu près tout ce qu'il y a à faire, non ? Et puis les modèles d'articles sont à peu près standard. Eh bien, ils seront juste 5 par chance. Et tout est toujours disponible pour vous. Ils pointent donc simplement vers un parent en particulier, essentiellement un modèle de bloc particulier. Et puis, bien sûr, nous voulons aussi tous les extras ici. Allons tout ça aussi. Il y a eux aussi, il n'y en a que cinq assez bizarrement. Et c'est à peu près tout ça pour ça. Et l'autre chose que nous voulons faire, c'est que nous voulons déjà ajouter quelques trucs ou faire preuve d' avenir, pour ainsi dire. Par conséquent, dans le dossier de données, dans le dossier Minecraft, nous allons ajouter des balises. Donc, numéro un, nous allons ajouter les journaux de journaux et les journaux qui gravent les balises. Nous pouvons donc voir ce qui suit. Vous pouvez donc voir que nous utilisons ici le mot-clic MC cours, des blocs de fleurs de cerisier. C'est fascinant. Qu'est-ce que c'est ? Eh bien, nous allons également avoir une étiquette personnalisée pour les bûches en fleurs de cerisier. Nous allons donc copier celle-ci aussi, c'est juste des balises normales comme vous pouvez le voir. Donc, cela pointe simplement sur tous les journaux et ensuite nous pouvons les référencer comme une balise comme celle-ci ici, ce qui est très intéressant. Et puis, dans les bûches qui brûlent, nous faisons essentiellement la même chose. Donc, nous ne faisons que cela. Les bûches qui brûlent. Si nous en avons, nous pouvons utiliser les journaux comme vous le ferez. Il suffit donc de les ajouter immédiatement aux articles de carburant. Ensuite, une autre chose que nous allons faire dans les balises, les balises Minecraft, cliquez avec le bouton droit sur le nouveau répertoire pour les éléments. Et puis à l'intérieur de là, nous allons ajouter la pile de planches, mais nous allons simplement ajouter cette touche. Et nous allons avoir les QCM, planches de cerisier en fleurs, car cela nous permettra de fabriquer certaines choses avec nos planches. Par exemple, une table d'artisanat ou je pense que c'est probablement presque ça. Je pense qu'il n'y a qu'un nombre limité de choses que nous pouvons fabriquer avec le piston de Planck, par exemple, fonctionneraient également. Donc, quelque chose comme ça. Et ce qui est également très important c'est que nous avons déjà ajouté ces journaux à notre balise journaux. Une fois que nous introduisons les feuilles, elles ne s'afficheront pas à côté de nos bûches. C'est donc très important, mais c'est tout ce que nous devons faire pour ajouter notre coutume. Voyons donc si cela fonctionne. Très bien, nous nous retrouvons à Minecraft. Comme vous pouvez le voir, tout a été ajouté et je peux le poser et ça a l'air tout simplement incroyable. 0 encore une fois, tout va bien. Et nous pouvons également le supprimer avec une hache avec le bouton droit de la souris. Vous voyez, je peux dépouiller tout ce jazz et tout fonctionne bien. Donc je veux dire, c'est à peu près tout ce qu'il y a à faire, ajouter Minecraft personnalisé, non ? Encore une fois, bien sûr, tout le code du fichier JSON est disponible dans le référentiel GitHub ou un individu tout aussi. Mais ce sera le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 89. (Advanced) Signaux personnalisés: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter un panneau personnalisé à Minecraft. Pour ajouter un signe personnalisé, en fait rendu assez facile parce que nous allons utiliser, voici l'exemple de signe de tissu du nouveau sondage est un référentiel de balle très utile. Maintenant, je veux m'assurer que vous savez que c'est sous la GPL, essentiellement sous licence publique générale. Donc, si vous souhaitez utiliser exactement le même code dans votre propre modèle, assurez-vous de suivre la licence, en vous assurant simplement que cela est bien compris. Bien entendu, cela sera également lié dans les ressources. Et continuons ici. Jetons donc un coup d'œil. Nous allons avoir besoin de deux choses. Tout d'abord, et ce sera deux mixins. intéressant, n'est-ce pas ? Je vais vraiment copier ces deux fichiers. Bien sûr, ils sont tous disponibles pour vous. Maintenant, ils sont très, très faciles. Ils ne sont pas si fous que ça. Vous pouvez donc voir que nous avons le type d'entité de bloc mixin, où il supporte également notre propre signe. Donc c'est très, en fait, ce n' est pas si fou, c'est de s'assurer que tant qu'un panneau mural , un bloc d' attribution ou un nd, un signe d'entité ici, tout ira bien. Et l'accessoire de type sinusoïdal le rend tellement fondamentalement que nous pouvons accéder au type de signe réel. Parce que la classe de type de signe ici, vous pouvez voir qu'elle est protégée. Nous pouvons créer un nouveau type de signe. Et avec cela, nous ne pouvons fondamentalement pas. Que va-t-on en faire ? Eh bien, tout d'abord, nous allons ajouter ça au tissu, au cours de MC mixins Jason, parce que, oh mon garçon, si on oublie ça, ce ne serait pas si bon. Nous allons les ajouter ici. Ce n'est que le nom d'une seconde de ces fichiers, très important qu'ils correspondent. Et ensuite, nous pourrons commencer. Et continuez. Allons-nous dans le paquet de blocs indie, donc nous allons manger les panneaux dans le paquet de blocs. Nous allons donc créer un nouveau type de signe de modèle. Donc ils vont juste faire un signe final public statique, vieux soulignement Sherry fleurit. Cela sera égal à l'accessoire de type sinusoïdal qui enregistre un nouvel accessoire de type de signe, un nouveau maintien de type de signe, un trait de soulignement Sherry, une fleur. Et c'est tout ce que nous devons faire pour créer un nouveau type de signe mod ou un nouveau type de signe. Et ensuite, nous pourrons continuer dans la classe plus de blocs. Ou nous allons juste copier les planches ici. Et puis, ce qui est très important, c'est que ces deux éléments seront enregistrés sans bloc. Parce que ce qui est intéressant dans les panneaux c'est que nous avons un panneau mural et un panneau normal. Et ce sera là que nous aurons les mêmes éléments associés. Nous allons donc avoir un bloc mental, puis nous aurons un bloc de signes normal. Ensuite, la même chose se passe ici. Signe de soulignement, ligne normale. Et puis il s'agit d'un bloc de panneau mural, qui, en tant que deuxième paramètre, prend en fait les types de signe mod point chaque fleur. Et ensuite, il n'y a pas de groupe d'articles ici, car bien sûr que nous n'avons pas, nous n'avons pas d' article en bloc que celui-ci. Même mod. Les types de panneaux sont géniaux et remplacent ensuite cela par un trottoir. Vous y allez. Maintenant, ce sont les deux blocs enregistrés essentiellement par voie rectale. C'est génial. Ensuite, dans la classe plus d'articles, nous allons devoir créer un nouvel article. Donc, nous allons juste trouver un seau à miel ici. Signe de soulignement en fleur de cerisier. Et ensuite, la même chose ici. Signe de soulignement de fleur très soulignant. Et il va s'agir d' un élément de signalisation I et d'article. Et ensuite, le premier sera ceci. Le nombre maximum sera en fait de 16. Et ensuite, nous aurons plus de blocs de signes de points. Et le signe plus de blocs de mur de points comme deuxième paramètre, l'ego ou le troisième, je suppose. C'est donc l'article fait en amine qui a été presque complètement fait à ce stade. C'est vraiment fou à quel point ça va vite, mais avec les mixins, ça va rendre notre vie incroyablement plus facile. Comme si c'était l'une des grandes choses que le mixin nous fournit. Mais ce que nous devons maintenant ajouter, c'est encore certains bassins d'États en bloc. Nous aurions encore besoin d'un bonjour dans le bloc C, Jason juste ici. Ce sera donc le signe de la fleur de cerisier, qui indique simplement le signe de la fleur de cerisier. Ensuite, nous avons également besoin du panneau mural en fleurs de cerisier. Nous avons cependant besoin de ces deux postes pointant vers le même modèle de bloc. Et ensuite, dans les articles, nous allons juste avoir un objet ici que les propriétaires de fleurs de cerisier pourraient signer. Et là aussi, il en va de même pour les cerisiers en fleurs. Et puis, dans les modèles, nous n'avons qu'un seul modèle ici, comme je l'ai dit . Et c'est le modèle de signe normal car il ne définit que la particule. Comme vous pouvez le constater, c'est tout ce qu' il faut essentiellement ici. Dans l'article, bien sûr, nous n' avons qu'un seul article. Eh bien, nous n'avons qu'un seul article. Il y a donc simplement des pointes vers la texture normale. Ce sera les textures de l'objet ici. Je vais juste copier ça. Panneau très génial juste là. Et comment est-il affiché en 3D ? Eh bien, c'est fondamentalement une chose intéressante, mais nous devons retourner à nouveau dans notre dossier Minecraft Textures. Ensuite, dans le dossier de l'entité, nous devons ajouter le dossier des signes. Et puis le nom de ce nom doit correspondre au nom que nous avons donné dans la classe des types sinus. C'est donc très important. Cela doit essentiellement correspondre à celui-ci. Et c'est ainsi qu'il est affiché en 3 D, n'est-ce pas ? Et après avoir ajouté tout cela, voyons si ça marche. Très bien, nous nous trouvons à Minecraft et regardons ça. En fait, ça va être un bloc. Eh bien, je veux dire, ce n'est pas la pire chose qui soit, mais voyons simplement si le panneau fonctionne réellement et qu'ils s'en vont, ça marche. C'est génial. Eh bien, je suis encore dans un costume comme celui-ci, et ensuite, posons-le sur le sol aussi. Cela fonctionne également et tout fonctionne très bien. Donc je suis, la seule chose que nous devons vraiment corriger, c'est la traduction ici. Mais ce n'est bien sûr pas une solution facile, il suffit de changer cela pour bloquer. Et ensuite, nous allons aussi le faire baisser pour qu' il soit un peu plus organisé ici. Mais ça résume à peu près tout ça, non ? Et après avoir corrigé la traduction ici, nous avons fini. C'est ainsi que vous pouvez ajouter un signe personnalisé à Minecraft. ensemble, avec l'aide du référentiel. Comme je l'ai dit, il va être lié dans les ressources. C'est plutôt simple, non ? Mais ce serait déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Donc, oui. 90. (avancé) Mise à jour de Minecraft et tissu: Ou je me réjouis de revenir au cours de tissus pour 118 ans. Et dans cette conférence, nous allons mettre à jour Minecraft et Fabric vers la nouvelle version 1181. C'est vrai. Donc, la mise à jour d'une version peut généralement être, eh bien, je ne dirais pas nécessairement risquée, mais il peut y avoir beaucoup de changements entre les versions et certaines choses peuvent changer. Heureusement pour nous, les changements ici ne sont en fait pas présents. n'y a donc aucun changement dans tout ce qui devrait encore fonctionner dans les années 1800 avec la nouvelle version fabric. Ce que nous allons faire, c'est que nous allons ouvrir notre fichier de propriétés Gradle. Et voilà ici, les dépendances et les propriétés du tissu, d'autres choses que nous allons changer. Et c'est exactement le site que nous voulons ouvrir. Je l'ai déjà ouvert ici et vous pouvez voir assurer que nous sommes sur la bonne version ici, 1181. Et c'est ce que nous voulons copier avant de continuer un message du futur. Comme 1 1000th 2 vient de sortir, je vous recommande fortement ce que vous faites, c'est de le garder sur 100 1800. Si vous avez suivi les cours avec 118, je vous recommande vivement de rester sur un XIXe siècle au lieu de passer immédiatement à cent huit cent deux, car un 1800 à toutes les prochaines années la génération mondiale ne va pas travailler avec 172 à la fin du cours, il y aura une section dans laquelle nous pourrons regarder si vous voulez aller jusqu'au des années 1800 pour garder cela à l'esprit. Je recommande donc vivement de conserver à 181 points. Et puis vous pouvez mettre à jour à la toute fin du cours, cliquer avec le bouton droit de la souris Copier, puis nous voulons simplement le coller ici et vous pouvez voir que peu de choses ont changé. Donc, la version tissu, nous sommes en fait sur la version en tissu la plus récente. C'est génial. Nous pouvons donc supprimer cela. Nous pouvons voir que la version du chargeur ici est en fait nouvelle, donc nous allons simplement la remplacer par elle. Et puis la version du Minecraft et du fil sont toutes deux modifiées. Nous allons également remplacer ces deux éléments. Et puis, en gros, il suffit de sauvegarder cela et de le recharger avec la charge que Gradle change ici parce que maintenant je vais reconstruire le projet avec environ 1.18.1 et la nouvelle version de fil, même avec le chargeur. Il aurait probablement pu changer la version du mod ici aussi, mais tout ira bien. Je pense que c'est bon. Et voilà, construisez avec succès. Maintenant, tout ici va être cartographié. Et ce que nous pouvons faire, c'est que nous pouvons, je vous recommande vivement de faire le débogage pour la première fois. Donc, quand je l' ai exécuté pour la première fois que j'ai acheté, le jeu n'a pas commencé, mais dès que je l'ai lancé pour la deuxième fois, il a commencé. Il y a donc probablement quelque chose en arrière-plan qui doit être téléchargé la première fois. Donc, si vous obtenez une erreur pour certains qui l'exécutent, lancez-le à nouveau et voyez si cela fonctionne à nouveau parce que c'était une chose très étrange, mais nous allons juste voir si cela va fonctionner ou non. Mais bien sûr, c'est l'erreur attendue parce que nous ne sommes pas connectés, Minecraft a déjà démarré sur un autre écran. Alors, tu y vas. huit cent un beau, absolument génial. Et voilà. Nous sommes dans le jeu, en gros, ça marche. Allons dans le monde juste pour nous assurer que tout fonctionne entre les versions. Habituellement, s'il s'agit de la même version, donc si ce n'est que les derniers changements numériques, les changements n'affecteront probablement pas trop. Parfois, il y a des choses qui sont obsolètes d'une version de tissu à l'autre. C'est peut-être le cas. Je vais essayer de tout garder aussi à jour que possible. Donc, en gros, je vais ajouter une conférence quelque part où c'est comme si, hé, ça a changé. faut que tu le fasses comme ça maintenant. Mais dans l'ensemble, vous pouvez voir que je peux toujours cliquer avec le bouton droit ici. Ils sont toujours, j'ai toujours la vitesse ici. Donc, dans l'ensemble, tout fonctionne toujours très bien ici, non ? Et c'est en fait à quel point il est facile de mettre à jour. Donc, juste pour l' achèvement ici, faisons quelque chose comme Faisons à ce stade, nous sommes à une version comme 0.1.5 ou quelque chose comme ça. Je pense que j'en ai envie. Ensuite, nous allons placer ceci à 118 du nom de base de l'archive. Nous ne changerons pas parce que bien sûr, c'est toujours le cours 118 du tissu et ça va bien se passer. Mais maintenant, nous sommes sur la version micro 1800 et la dernière version en fil de la version inférieure. Et c'est en fait à quel point il est plus facile de mettre à jour le tissu déjà pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. 91. (Genre du monde): Ou je reviendrai au cours de tissus pour 118 ans. Et dans cette conférence, nous allons ajouter un arbre à Minecraft, non ? L'ajout d'un arbre implique donc également l'ajout de feuilles et d'un jeune arbre. Et cela impliquera également d'ajouter les os de l'ours de la génération de rôles, car le frai réel de l'arbre est en quelque sorte un peu mêlé à la génération mondiale. Mais pour le moment, tout d'abord, nous allons aller à la classe des boîtes aux lettres et nous allons créer les feuilles et les jeunes arbres. Nous allons copier sur les planches ici les planches de fleurs de cerisier et nous allons dire des feuilles ici, puis des feuilles ici. Et peut-être que les élifs bloquent. Et ça va copier les feuilles de chêne. Ensuite, la même chose ici, l' échantillonnage de fleurs de cerisier et ensuite le gaule ici aussi. Et c'est un nouveau bloc de culbutage. Et ensuite, nous allons avoir la même chose que nous avons eue auparavant. L'axe ici est protégé. Par conséquent, nous allons devoir créer un mod de cette classe Building Block. Nous allons juste étendre la classe de blocs de gaule, sur cette création de constructeur correspondant super. Et nous allons simplement rendre cela public. Et au lieu du bloc frère où vous utilisez le mod sublingual, il y a maintenant deux paramètres dont nous allons avoir besoin. Vous pouvez voir que nous avons besoin d' un générateur de frères et sœurs. C'est donc quelque chose que nous allons créer à l'intérieur d'un nouveau package. Donc, cours MC, cliquez avec le bouton droit sur le nouveau package. ancien monde va créer le paquet mondial. Et puis une nouvelle fonctionnalité cool de package. Et à l'intérieur, nous allons créer un nouveau paquet appelé « paquet arbre et industrie ». Nous allons créer une nouvelle classe Java appelée Cherry Blossom Tackling Generator. Nous allons devoir en créer de nouveaux pour chaque arbre que nous voulons ajouter. Ceci est égal au générateur de gaules, de jeunes arbres. Et cela implémente simplement une méthode et c'est la méthode get trois fonctionnalités. Pour l'instant, nous allons garder cette valeur nulle. Nous ajouterons la fonctionnalité configurée ici dans un instant. Ensuite, nous allons juste dire un nouveau générateur de double fleur. Et c'est essentiellement tout ce que nous devons faire ici. Mais les deux sont terminés. Ajoutons-les immédiatement à la couche de rendu appropriée ici, car nous n'avons plus à y penser. Ainsi, les feuilles et l' échantillonnage aussi. Et puis aussi ici, s'assurer que cela copie le jeune arbre d'ailleurs, c'est aussi important il y a un jour. Ensuite, nous allons immédiatement ajouter tous les fichiers JSON car ils sont terminés. Et ensuite, nous pourrons continuer avec le code après cela. Ils sont tous deux essentiellement des fichiers JSON normaux. Vous pouvez voir juste les feuilles ici et le jeune arbre ici, ou le bloc indique Jason Lange. La traduction, je veux dire, à ce stade, serait assez explicite. Ici, ils vont les feuilles et les gaules qu'avec les fichiers de modèle en bloc. La seule chose intéressante ici est que l'échantillonnage a ici une texture croisée et une texture croisée, mais les feuilles sont un bloc normal tout autour. C'est la seule chose intéressante ici. Et puis il y a une autre chose intéressante dans la texture de l'article ou le jeune arbre. Et c'est que le jeune arbre a une texture normale, comme vous pouvez le voir. Il pointe donc ici une texture en bloc, car le jeune arbre qui est affiché dans le monde, dans le motif croisé, est identique à celui d'un objet. En gros, c'est ce que c'est le cas. Ensuite, nous pouvons simplement ajouter le gaule et les textures de feuilles. Vous y allez. Et puis tout a été ajouté à peu près pour que nous n'ayons plus à nous inquiéter à ce sujet. Et maintenant, nous n'avons plus qu'à ajouter la caractéristique et figurée ici qui fraie avec l'arbre, par exemple, lorsque nous l'avons fariné. C'est donc la première partie, puis la prochaine conférence, nous allons voir comment frayer l'arbre en tant que génération mondiale. Cependant, dans le cadre de la génération mondiale, nous allons créer dans le package de fonctionnalités, cliquer avec le bouton droit de la souris sur la nouvelle classe Java. Et c'est la classe d'entités configurées en mode. Et pour cela, nous allons vraiment avoir besoin de quelques choses. Numéro 1, allez, nous allons avoir besoin, je vais copier ces méthodes. Tout le code est bien sûr disponible dans le référentiel GitHub ou un individu, vous pouvez voir que j'ai enregistré méthode des fonctionnalités configurées ici. C'est quelque chose que nous allons appeler tout en haut de la méthode initialisée, en fait Assez drainée, mais c'est là que nous devons appeler cela un besoin faible de l'appeler tout en haut. Sinon, l'ordre d' initialisation ne fonctionne pas tout à fait. Ensuite, nous avons également cette méthode de registre, que vous pouvez voir s'il s'agit d'un enregistrement religieux, une fonctionnalité Configurer sous le nom donné ici. Et c'est presque tout ce qu'il y a à faire. Et nous allons en avoir besoin parce que je vais en fait copier la fonction configurée en fleur de cerisier. Et j'expliquerai au fur et à mesure que nous avançons, ce que vous verrez, c'est que nous l'enregistrons essentiellement sous le nom de fleur de cerisier et qu'il s'agit d'un arbre de fonctionnalités configuré. C'est donc l'idée. Si nous cliquons sur le bouton central de la souris sur l'arbre, vous pouvez voir qu'il s'agit d'une fonctionnalité arborescente ou simplement d'une fonctionnalité. Et dès que vous appelez configuré, il se transforme en fonction configurée. Et nous passons dans a, b. Constructeur de conflits de fonctionnalités, qui a ensuite besoin certaines choses pour que nous puissions cliquer dessus du milieu de la souris et vous pouvez voir, oh, c'est un fournisseur de tronc, un placeur de tronc, fournisseur de feuillage, un complètement pour la placer et ensuite une taille minimale. L'idée générale ici est donc que nous avons un fournisseur de blocs par exemple. Ceci, le premier est, fournit ce que va être le journal. Ce sera donc quel que soit le coffre. Ensuite, nous avons un autre choix que nous pouvons faire différents emplacements de coffre. Je peux donc cliquer sur le bouton central de la souris dessus et appuyer sur Control H sur le placer. Et vous pouvez voir qu'il existe différents types de placers de coffre. Et oui, vous pouvez aussi créer le vôtre, non ? Ils le sont, beaucoup de connaissances en Java sont probablement nécessaires parce que c'est assez difficile de les faire. Ensuite, le troisième paramètre correspond aux feuilles que vous souhaitez avoir. Et puis le blob tout, chaque endroit, ou dans ce cas, est la façon dont les feuilles sont affichées. Encore une fois, vous pouvez aller ici et jeter un coup d'œil aux placers de feuillage Control H. Et vous pouvez voir essentiellement qu'il y a un tas d'options. Une fois de plus, je recommande vivement de jouer un peu avec ça. Et puis les deux calques se présentent, nous pouvons revenir en arrière. C'était la taille minimale, donc je ne suis toujours pas sûr à 100% de ce que c'est exactement. Je crois que l' idée générale est que c'est l'espace qui doit être autour de l'arbre. Si je ne me trompe pas, c' est quelque chose, mais dans l' ensemble de la génération mondiale, il y a tellement de parties mobiles que c'est fou. Et puis il est passé de 16e, 170 à 180. Maintenant, tout change assez régulièrement. En général, cependant. Il est parfois difficile de suivre le rythme. Mais je crois que c'est ce que c'est. Et nous devons le renvoyer dans le générateur de jeunes arbres ici. Nous devons donc dire que mod configurait les caractéristiques que le cerisier en fleurs. Ensuite, nous reviendrons ceci. Tout devrait bien se passer. Donc, maintenant, en théorie, dès que nous avons posé le jeune arbre et que nous avons identifié la farine d'os, ou que le temps passe, il va devenir un arbre. Il s'agit donc essentiellement de la première partie de tout cela. Voyons donc si cela fonctionne ou si je suis dit dans Minecraft comme vous pouvez le voir, le jeune arbre et les feuilles ont été ajoutés. Ne sont-ils pas beaux pour l'instant, posons le jeune arbre et moins de mil osseux et voyons si nous pouvons obtenir un arbre et là c'est un arbre puissant, grand et fort. C'est vraiment cool. Et essayons aussi d' mettre quelques-uns ici. Et voyons s'ils peuvent réellement grandir. Lorsque j'active la règle de messagerie instantanée, vitesse des tics aléatoires et l'aversion l' augmentent par la folie. Voyons voir. Ils y vont. Laissez celui-ci apparaître parce qu'il est trop proche. En fait, nous devons nous laisser partir un peu et ensuite ça va probablement apparaître aussi. Si vous y allez, c'est très bien. Donc, tout fonctionne totalement bien, comme on s'y attendrait, non ? Et encore une fois, pour résumer chaque nouvel arbre que vous voulez avoir, vous aurez besoin d'une nouvelle fonctionnalité configurée de conflits amers, ainsi que d'un générateur de jeunes arbres personnalisé puis un jeune arbre personnalisé. Et c'est essentiellement les trois choses dont vous allez avoir besoin pour faciliter essentiellement un arbre qui pousse à partir d'un jeune arbre soit quand il farine d' os à ou au fil du temps. Pourquoi ? Mais ce serait tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et qu'il apprend que le nouveau, si vous le faisiez, j' apprécierais beaucoup une critique de votre part. Sinon, je vous verrai lors la prochaine conférence. Oui. 92. Génération d'arbres (Genre du monde: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons examiner comment ajouter des arbres à tige, la génération mondiale. Mais nous avons créé le plateau personnalisé la dernière fois et maintenant nous allons l' ajouter à la génération mondiale. Et plus précisément, nous verrons également comment vous pouvez très facilement filtrer le biome auquel il est destiné. Ce que nous allons faire, c'est que nous allons avoir besoin de quelques cours supplémentaires pour cela. Le premier se trouve dans la classe d'entités, cliquer avec le bouton droit de la souris sur une nouvelle classe Java appelée entités placées par le modèle très important de cliquer avec le bouton droit de la souris sur une nouvelle classe Java appelée entités placées par le modèle. Ce sera probablement la classe principale aujourd'hui. Et cela va être très intéressant car il y a deux méthodes différentes dont nous aurons besoin. Une fois de plus, je vais les copier. Le tribunal est à votre disposition, bien sûr, dans le référentiel GitHub ou un individu juste ceci, la fonction de lieu de registre de méthode et la méthode de clé de registre. Eh bien, ces deux éléments sont très importants ici. Et celui d'entre eux essentiellement, cela obtient la clé de registre pour un lieu spécifique fonctionnalités. C'est donc en quelque sorte ce que nous allons devoir faire référence lorsque nous voulons réellement l'engendrer. Et cela, cela enregistre en fait la fonction place et la clé de registre réelle que je vais également copier, en fait assez simple. Vous pouvez voir que c'est juste une clé de registre d' une fonction de clé de lieu de registre que la clé a placée par la fleur de cerisier. Et c'est égal à la clé de registre. Et puis le nom ici, fondamentalement le même nom que l'entité placée, obtiendra également. C'est donc très important. Mais avant de pouvoir créer la fonction placée pour l'arbre, nous devons en fait obtenir une autre fonctionnalité configurée ici, n'est-ce pas ? Maintenant, il y a quelque chose de très intéressant. Donc, pour voir essentiellement le code vanille pour les entités et autres choses, nous pouvons aller à la classe d'entités. Et maintenant, ce que vous pourriez avoir, c'est la ligne bleue ici et essentiellement rien d'autre ici. Pour résoudre ce problème, nous pouvons aller au terminal et nous pouvons mettre des sources de points, de barre oblique Gradle, w, Jan. Et puis il suffit de faire passer ça , puis de laisser passer ça. Et puis, une fois que cela aura été fait, j'espère que les sources généreront essentiellement pour nous de la même manière. Il y a une autre astuce que nous pouvons utiliser essentiellement pour voir les vraies sources, essentiellement pour Minecraft. Juste là, on y va. 58 secondes. Construire avec succès, c'est très bien. Si une construction a échoué et qu'elle dit : Hé, j'aime bien celle-ci. Regardez-moi ça. Vous n'utilisez pas la bonne version. Ce que vous pouvez faire, c'est que vous pouvez ajouter la maison Java aux propriétés radiales dans lesquelles vous devez modifier votre variable d'environnement domestique Java, une ou l'autre fonctionnerait. Mais pour le moment, c'est très bien. Donc maintenant, nous pouvons le faire est que nous pouvons le bouton central de la souris, cliquer sur Feature et vous verrez que cela ne fonctionne toujours pas bien, je peux aller à choisir les sources. Et puis je dirai que je vais utiliser les sources cartographiques. Je dis oui et je vois tout d'un coup que tout est ici. Et maintenant, nous pouvons voir à quoi ressemble le code source réel. Et pour celle-ci, par exemple, cela ne nous intéresse pas trop. Mais si je reviens au milieu de la souris, cliquez à nouveau dessus, vous pouvez voir partout où cela a été utilisé. Et vous pouvez voir qu'il est utilisé dans l'arborescence des classes d'entités configurées comme, oh, c'est très intéressant, n'est-ce pas ? C'est comme, oui, c'est très intéressant de voir, par exemple, la fonctionnalité de configuration AUC est une fonctionnalité configurée sur le registre avec la fonction de configuration de l'arborescence avec essentiellement les fonctionnalités de OK. Vous pouvez le voir ici. Fondamentalement, c'est juste un constructeur déjà fait. Vous pouvez voir Tree Conflict Builder. Et puis littéralement tout ce que nous avons fait aussi, n'est-ce pas ? Nous avons créé un verrou StateProvider du journal. Nous avons fait un placeur de coffre et tout ce jazz. Donc, tout cela se fait ici également. Mais maintenant, cette fonctionnalité d' arborescence réelle, fonctionnalité configurée de configuration est utilisée à nouveau. Donc, si j'ai le bouton central de la souris, cliquez à nouveau dessus, vous pouvez voir que cela est utilisé dans les fonctions de l'arborescence, n'est-ce pas ? Et si je vais ici et que je vois qu'il s'agit maintenant d'un objet d'entité placé et celui-ci, car la largeur survivrait à filtrer dessus. Mais maintenant, c'est encore plus fou et s'il vous plaît supportez avec moi pour le moment. Vous pouvez voir que cette fonction de lieu est ensuite utilisée dans les entités configurées par la végétation avec d'autres éléments aléatoires. Donc, c'est comme un fou, non ? Pour que vous puissiez voir que c' est la ligne, donc la ligne 66. Et voyez ceci est la végétation sombre de la forêt, qui est une fois une caractéristique configurée de l'entité aléatoire Conflict. Celui-ci est utilisé dans une fonction de lieu. Encore une fois, bien que nous passons essentiellement d'une fonctionnalité configurée à l'autre pour configurer une fonctionnalité à l'autre. Cela semble fou comme une façon de s'y prendre. Ce que je recommande vivement, c'est de passer en revue toutes les classes d'entités ici. En gros, il y a beaucoup de choses ici. C'est vraiment fou. Il y a tellement de choses ici. Je recommande vivement de passer par le, essentiellement les caractéristiques de la place de l'arbre sont incroyablement intéressantes. Et en gros pour voir, eh bien, comment fait la vanille ? Comment la vanille fait-elle apparaître des trucs ? Et nous allons faire une chose similaire. Disons, Eh bien, la même chose que nous allons faire, c'est que nous allons à nouveau entrer dans notre classe de fonctionnalités configurées en mode. Donc, juste ici. Et nous allons immédiatement prendre cette fonctionnalité configurée et en créer une autre fonctionnalité de configuration. Maintenant, je vais également copier ça. C'est celui avec la configuration aléatoire des entités dans ce cas. Et vous pouvez voir que cela prend essentiellement le sélecteur aléatoire de la fonction, mélange un nouveau conflit d'entités aléatoire configuré aléatoire, puis prend le cerisier en fleur avec le filtre survivrait du cerise, gaule ou la même chose. Donc, en gros, c'est un peu alambiqué. Il y a probablement une meilleure façon faire, mais pour le moment, c'est la meilleure façon que j'ai trouvé que cela pouvait fonctionner et que cela devrait fonctionner. Et c'est vraiment très bien et nous allons travailler maintenant. La raison pour laquelle nous avons besoin de la fonctionnalité configurée ici est que nous voulons ce filtre. Maintenant, le problème est que ce filtre, si je clique sur le bouton central de la souris dessus, vous pouvez voir que cela renvoie une fonction de lieu. Et le problème est qu'une fois que j' ai une fonction place, je ne peux pas faire d'autres placements là-dessus. Je ne peux donc jamais faire qu'un seul placement en particulier ici. Et c'est tout. Maintenant, il y a probablement, comme je l'ai dit, une autre façon de le faire qui va être hachée et un peu d'amine 1.18 est très nouvelle et la génération mondiale est complètement refaite. Il y aura peut-être une mise à jour à ce sujet à un moment donné. Mais pour le moment, cela fonctionne absolument au fait, il n'y a pas de souci. Nous allons donc utiliser cela maintenant et en créer une fonctionnalité de lieu. Donc, dans les fonctionnalités du marché, dernier point mais non le moindre, je vais également copier cela. C'est la fleur de cerisier placée. Et vous pouvez voir que je prends le Cherry Blossom Tree Random, qui est exactement celui-ci ici. Et je vais l'utiliser avec le placement de modificateurs de caractéristiques végétales, que j'ai, que je peux essentiellement entrer. Vous pouvez donc voir qu'il s'agit essentiellement d'une liste particulière de modificateurs déjà construits. Et puis je vais dire, Hey, prenez le compte des modificateurs supplémentaires. Qu'est-ce que c'est ? Ce que cela devrait faire, c'est qu'il devrait frayer un arbre par tronc. Il a 10 % de chances de répondre à des problèmes supplémentaires. Croyez que c'est en quelque sorte l'idée générale dans laquelle vous vous trouvez pourrait même apparaître un peu plus. Mais dans l'ensemble, c'est l'idée générale. Donc, si vous voulez, par exemple, un arbre super rare, mais que vous pouvez le faire, c'est juste que vous ne pouvez pas compter 0. Et ensuite, comme une chance de 0,1 % qu' un sponsor supplémentaire par exemple, ou pour nos besoins ici, nous voulons bien sûr le voir. Nous voulons voir l'arbre réel sur. Alors, faisons-le comme ça. Cela détermine essentiellement la façon dont l' arbre fraie réellement. Ce qui est très important, c'est que cette clé ici et ces années clés de ces livres, livres , ces deux noms doivent être identiques. C'est très important. Et puis, ce que nous allons faire, c'est que nous aurons besoin de deux nouveaux cours. En fait, c'est dans la classe mondiale. Tout d'abord, dans le package de travail, cliquez avec le bouton droit sur un nouveau package appelé Jen. Et puis à l'intérieur de là, nous aurons deux nouvelles classes, la classe mod trois générations et ensuite aussi la classe de génération mondiale mod. Ainsi, dans la classe générateur d'arbre du modèle, nous allons ajouter un vide statique public, générer un arbre. Res le fait en fait. Peut-être voulons-nous en créer plusieurs. Et ici, WHO a appelé les modifications de mole iam qui ajoutent des sélecteurs de fonctionnalités. Et puis, ici, nous pouvons sélectionner différents biomes. On peut dire, Hé, il suffit de prendre tous les biomes, de prendre tous ceux qui sont en surmenage. On peut même y aller par tag ici. Vous pouvez donc voir qu' il existe de nombreuses façons différentes d'utiliser cela. On va, on va faire les catégories et on va dire des plans de points de catégorie pour que l'on ne fasse que le frayer dans les plans par ohms. Et puis l'étape de génération ici, nous allons dire étape de génération, et c'est la décoration végétale. Je vais le montrer dans un instant. Ensuite, le marché présente cette clé. Nous voulons donc que la clé ici soit transmise. Et ensuite, cela générera notre dernière caractéristique dans tous les biomes qui ont les plans de catégorie à l'étape de génération végétale. Alors, en fait, allons-y. Vous pouvez constater qu'il existe différentes étapes de génération. Et il est très important de manger cette commande en gros. Ainsi, une fois que nous avons, par exemple , un minerai souterrain, vous pouvez les voir avant la décoration végétale. Par conséquent, nous devrons ajouter les rames avant cela. C'est donc très important et vous devrez également toujours faire la bonne chose ici. Mais généralement, il est très clair quelle est l'étape de génération réelle dans la génération mondiale moderne. Maintenant, il va y avoir une méthode simple aussi. Ce sera le vide statique public. Nous allons juste appeler cette génération mondiale en mode dégénéré, rayon ou ce nom le plus cool, mais cela suffira définitivement. Ensuite, cela va appeler la génération de l'arbre du modèle qui a généré des arbres. Et puis celui-ci ici sera simplement appelé tout en bas de la méthode initialisée. Cependant, la génération mondiale moderne, génère à nouveau le monde moderne, et c'est tout. Récapitons-le encore une fois. Fermons tout ce que nous avons et rouvrons ceux que nous avons modifiés. Nous avions donc une nouvelle fonctionnalité configurée que nous devons ajouter pour nous assurer que le cerisier en fleur ne fraye que là où un jeune arbre est valide. C'est pourquoi c'est si important ici. C'est fait, alors nous pouvons en créer une fonctionnalité, qui va essentiellement filtrer un peu plus encore avec un certain placement. Le placement spécifique que nous avons choisi était le nombre supplémentaire, vivement recommandé. Par exemple, en entrant ici, vous pouvez voir les modificateurs de placement pour le bouton central de la souris cliquez dessus, et je crois que je peux cliquer à nouveau dessus. Vous pouvez ensuite voir, par exemple, où toutes ces fonctionnalités ont été utilisées. Il y en a donc, par exemple, déjà préparés une fois que vous êtes dans la classe d'entités de place, que vous pouvez utiliser. Il y a donc beaucoup de choses là-dedans. Je crois que ceux-ci sont également utilisés avec le contrôle H Certainement vous pouvez voir qu'il y a des caractéristiques de placement carré , décalage aléatoire. Il y a beaucoup de choses ici. Je peux encore une fois recommander vivement de jouer avec. Soyez ouvert à l' expérimentation pour cela. Surtout quand il s'agit de la génération mondiale. C'est très compliqué. Et donc, si vous avez quelque chose en tête que vous voulez exactement comme vous le voulez, qui, vous allez devoir essayer un tas de choses avec ça. Mais cette fonction de lieu a alors essentiellement la même clé ici que la clé. Cette clé porte donc le même nom que la fonction lieu et doit correspondre. Et puis nous pouvons l'appeler dans la génération de l'arbre modèle avec ces modifications biologiques, c'est quelque chose que le tissu nous offre maintenant, c'est une caractéristique expérimentale qui peut être supprimée ou modifiée sans un autre avis. C'est très important pour le moment. Il fonctionne toujours. Nous pouvons toujours l'utiliser s'il change un jour. Bien sûr, je vais faire et mettre à jour une conférence quelque part pour que vous sachiez comment vous pouvez le faire sans ce cours. Mais pour le moment, nous allons l'utiliser car il est très facile à utiliser et il fonctionne parfaitement. Et puis, fondamentalement, c'est juste pris dans la génération mondiale moderne ou plus de la classe mondiale. Et que la norme est appelée dans le, sur un littéralisme. C'est donc à peu près tout ce qu'il y a à faire pour l'instant. Voyons si ça marche, non ? N'oubliez pas de créer un nouveau monde pour cela. Parce que, bien sûr, nous nous tournons avec la génération rurale où chaque fois que vous faites cela, je recommande vivement de créer un nouveau monde juste pour être sûr que tout se produise correctement. Voyons voir, ou nous nous retrouvons dans Minecraft. Alors, passons juste par les avions ici. Et voyons si les cerisiers en fleurs apparaissent là. Et voyons voir, ils sont comme si ce n'était pas un gros biome ici, mais ils sont en train de frayer. Et c'est tout simplement génial. Ainsi, comme vous pouvez le constater, en réponse, c'est en quelque sorte le général un cerf chaque année quant à qu'ils sont petits si les biomes sont un peu plus gros, vous pouvez bien sûr le voir un peu plus clairement. Mais pour le moment, c'est tout à fait génial. Et comme je le dis toujours, en ce qui concerne les chiffres, il faudra modifier les chiffres d'une façon ou d'une autre. C'est donc une partie importante de tout cela. C'est donc quelque chose que vous devez absolument garder à l'esprit, non ? Mais tout fonctionne et c'est à peu près la première conférence de la section de la génération de la guerre mondiale. J'espère que vous avez trouvé cela utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. Oh, oui. 93. Génération de fleurs du genre du monde: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons examiner comment ajouter la génération de farine à votre MOD. Maintenant, encore une fois, beaucoup de choses seront copiées, mais cette fois, ce ne sera pas tant que ça. Le noyau est, bien sûr, pour vous disponible dans le référentiel GitHub ou un individu. Maintenant, l'idée générale ici est que lorsqu'il s'agit de générer des fleurs, l' une des choses que les gens pourraient demander est, eh bien, comment avez-vous compris cela ? En fait, ce n'est pas si fou que ça. C'est à peu près la même chose que ce que nous avons fait auparavant. Cliquez sur le bouton central de la souris sur la classe d'entités , puis vous avez, par exemple, l'entité fleur, n'est-ce pas ? Et puis je peux cliquer sur le bouton central de la souris dessus et voir où il a été utilisé. Par exemple, il a été utilisé dans la fleur par défaut. Ensuite, ce que je fais, c'est que je copie littéralement sur la fleur par défaut ici, vous pouvez voir que je sélectionne la ligne entière, appuyez sur Control C, Control V, puis jetez un coup d' œil à tout ce dont j'ai besoin. Et puis vous pouvez voir que, hé, ça prend un lion dandy et je me dis, d'accord, donc je peux remplacer ça par ma propre fleur, trucs comme ça et ainsi de suite et ainsi de suite. Et c'est à peu près comme ça que vous faites, n'est-ce pas ? Vous ne faites que tribu continuellement et ensuite, avec cela, vous l'avez fondamentalement , eh bien, vous l' inversez et ensuite vous savez comment cela fonctionne. Tout d'abord, nous allons copier la fonctionnalité configurée ici, et nous verrons que l'une des choses ici est rouge, et c'est exactement le conflit de fonctionnalité Créer un patch aléatoire est, je Je crois que c'est soit ici, soit dans la décoration végétale, je pense que c'est utilisé ici. Ce n'est pas celui que nous voulons. Nous voulons y jeter un coup d'œil. Celui-là, je crois. Non, ce n'est pas le cas. Vous pouvez donc voir qu' il y en a beaucoup d' autres ici en fait. Et en fait, celui que nous voulons est le suivant. Je vais vraiment le copier. C'est celui-là juste ici. va de même du conflit de fonctionnalité de correctif aléatoire d'un fournisseur de blocs assis et un certain nombre d'essais ici que cela appelle simplement cette méthode ici. Donc, pas de soucis là-bas. Et l'idée générale ici est que cela remplit maintenant tout ce qui crée le conflit aléatoire des fonctionnalités de patch. Nous pouvons également y jeter un coup d'œil. Mais ce ne sera pas vraiment intéressant pour nous, est-ce que ceux comme les classes de conflits de fonctionnalités sont bien, parfois compliqués. Je veux dire, tout cela est assez compliqué, comme vous l' aurez probablement deviné et réalisé à ce stade. Mais dans l'ensemble, il s'agit de la fonctionnalité configurée. Et maintenant, lorsque nous y réfléchissons, accord, nous avons une fonctionnalité configurée, mais ce dont nous avons également besoin, c'est que nous avons également besoin d'une fonction placée qui soit exactement correcte. Donc, dans notre classe d'entités placées par modèle, maintenant, je vais copier ça. Maintenant, celui-ci est en fait assez simple parce que vous pouvez voir cela la rose rose placée et celui-ci va être des registres, une fonction de lieu. Nous allons extraire la fonction configurée de notre classe d' entités configurées en mode lorsque, par exemple, avec un emplacement particulier. Et dans ce cas, nous allons ajouter le placement du filtre de rareté de quatre et un placement carré, juste un modificateur normal ici avec la carte de hauteur, puis le modificateur de positionnement biologique. C'est donc assez fou, comme d'où ça vient ? Eh bien, encore une fois, il joue les caractéristiques de certaines des fleurs réelles. Si nous venons de jeter un coup d'œil à cette fonction de configuration végétale appropriée. Nous allons simplement les prendre et ensuite nous pourrons, par exemple, voir les caractéristiques de la végétation, de la végétation ici. Notre chaud, c'est la ligne 73. Et on peut juste voir une rareté ici, carrée aussi. Il prend également la carte de hauteur du bloc de mouvement et le modificateur de placement du biome. C'est donc essentiellement de là que viennent tous ces éléments. J'ai simplement pris tout ça de la vanille et ça marche à merveille. C'est donc à peu près l'idée générale. Maintenant, nous allons également avoir besoin d'une nouvelle clé de registre. Ce sera donc la clé de soulignement de la police rose rose . Cela portera le même nom que celui-ci, car ceux-ci devront correspondre. Et c'est à peu près tout ce que nous devons faire maintenant, nous devons bien sûr encore engendrer cela. Mais pour cela, nous avons besoin dans le paquet de génération en nouveau mode, d'un bus de génération inférieure. Et je vais juste copier la méthode ici. Ce n'est rien de trop fou. Oh, regardez ce modèle placé des caractéristiques, elles vont et puis toute l'année devrait aller bien. Une fois de plus, ils ne vont apparaître que dans les avions juste pour que nous l'ayons essentiellement dans le même biome. Et ensuite, il faudra juste le refroidir ici. Cela peut donc être appelé au-dessus ou en dessous. C'est important car les deux sont des décorations végétales. Tout ici s' appelle une ingénierie, a été ajouté correctement. Voyons si ça marche. Une fois de plus, n'oubliez pas de créer un nouveau monde car nous avons une fois de plus de désordre avec la génération mondiale. Voyons donc ce que nous pouvons voir. Et comme la chance l'aurait fait, nous sommes déjà à côté d'un avion et ils sont là, les roses roses du matin en petites parcelles ici. Et vous pouvez voir qu'il y a un autre patch. Et puis il y a un gros patch ici. C'est plutôt cool. Et vous pouvez voir, bien sûr, une fois de plus, déconner les chiffres est la principale chose que vous devrez faire pour obtenir votre génération. Il suffit d'écrire si vous vouliez un peu différemment. Bien sûr, pas de soucis. Vous pouvez toujours essayer ça. Mais pour le moment, c'est vraiment génial et ils apparaissent tous, eh bien, c' est plutôt cool, non ? Mais ce sera déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et ignorant le nouveau. Encore une fois, tout le code est bien sûr disponible dans le référentiel GitHub ou un individu. Et je vous verrai lors de la prochaine conférence. Donc, oui. 94. (Genre du monde): Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons faire ce que vous attendiez tous. Voyons comment ajouter ou générer Minecraft quand il s'agit de la génération, ou la génération est à peu près la seule chose où tout le monde est comme, Oh mon Dieu, j'ai besoin de savoir comment ou génération fonctionne. C'est la chose la plus importante de tous les temps. Ils veulent leur sport dans le monde entier. Et c'est exactement ce que nous allons faire maintenant. Mais encore une fois, dépêchez-vous de comprendre ça. Nous allons cliquer sur le bouton central de la souris sur la fonction. Et ce que vous trouverez ici ou ceci, ou oui, en effet, c' est une caractéristique. Et si je clique simplement dessus, vous pouvez voir qu'il existe des fonctionnalités configurées. Ainsi, par exemple, il y a des diamants, petits diamants, des gros diamants enterrés. Mais jetons simplement un coup d'œil à la fonctionnalité Diamond Small configurée. Vous pouvez voir qu'il s'agit d'une ou d'une fonctionnalité Conflict Diamond or. Alors, qu'est-ce que c'est ? S'agit-il d'une liste de tous les conflits futurs , de notre cible, nous allons devoir le faire nous-mêmes. Mais pas de soucis. Ce n'est pas comme si ce n'est pas si difficile. Maintenant, je vais à nouveau tout copier, mais tout est bien sûr disponible dans le référentiel GitHub ou un individu tout aussi. Et pour un ou, comme je l'ai dit, nous avons besoin d'une liste de ces cibles ici ainsi que d'une fonctionnalité configurée. Maintenant, c' est presque tout ce dont nous avons besoin. Et vous pouvez voir qu'en prévision de la cible ici, il y a essentiellement deux taux cibles. Donc, si je rends ça un peu différent pour qu'il soit un peu différent ici. Alors, tu y vas. Maintenant, vous pouvez clairement voir les deux cibles et les deux blocs qui y sont associés. Une cible a des tests de règles qu'elle suit, n'est-ce pas ? Donc le test de règle que vous pouvez voir ici ne fait que vérifier, Hé, est-ce que ça correspond à ce bloc particulier ici ? Donc, dans ce cas, nous disons, Hé, tout ce qui peut fondamentalement remplacer par une pierre, la pierre ou, puis il y a aussi de l' ardoise profonde ou remplaçable. C'est donc l'idée générale ici. Parce que, bien sûr, notre normale ou peut remplacer, ou devrait pouvoir remplacer la pierre normale et ensuite dormir profondément ou devrait pouvoir remplacer l'ardoise profonde. Maintenant, il ne s'agit pas seulement de stocker, cela peut, par exemple, apparaître directement et des trucs comme ça. Et la même chose avec un sommeil profond. Il y a comme d'autres choses, d'autres types de blocs qui peuvent également apparaître à l'état profond et c'est pourquoi cela est nécessaire. Maintenant, la taille ici va être très intéressante car la taille, si nous y allons réellement, vous pouvez voir qu'elle indique uniquement la taille et la taille qui y signifie que cela devrait être la taille moyenne d'une veine. Il devrait donc s'agir de la taille de la veine. Et puis comment cela apparaît dans le monde réel, vous serez en mesure de configurer à nouveau avec l'entité placée, que nous avons réellement besoin d'une chose très intéressante et que c'est une nouvelle classe et le caractéristiques emballées. C'est donc le mode ou les mangeurs et nous allons simplement copier sur deux méthodes. Maintenant, ces méthodes proviennent de la fonctionnalité ou elle-même. Donc, à partir de la vanille ou des fonctionnalités, je les ai simplement pris et les ai rendus publics ici afin que nous puissions y accéder afin que nous puissions très facilement API sur le lieu fonctionnalité ici, qui est l'oracle se plaint comme vous pouvez le voir, car l'oracle vient ou avec un emplacement spécifique, puis les modificateurs avec nombre. Donc, le nombre de veines que vous êtes indique essentiellement combien de veines doivent apparaître par tronc. C'est au moins que je comprends actuellement que le modificateur de compte est le nombre de veines qui apparaissent par tronc. Et puis nous avons un modificateur de placement de la plage de hauteur de trapèze. Vous avez peut-être vu cette image de la façon dont les minerais apparaissent maintenant. Et il y a différents types de fonctionnalités fondamentalement, ou différents types de modificateurs ont-ils apparu ? Il y a le trapèze, il y a de l'uniforme et vous pouvez même créer des fournisseurs de hauteur personnalisés. Nous pouvons voir qu'il y a une constante trapézoïdale uniforme, très biaisée, pondérée, biaisée envers eux. C'est donc très intéressant. Il y a donc différents fournisseurs de hauteur que vous pouvez mettre là-dedans. Si, par exemple, vous êtes comme, non, je veux que cela apparaisse comme très, très ennuyeux, très biaisé à hauteur inférieure du fournisseur peut être fait. Vous pouvez voir que vous pouvez les créer très facilement. Alors là encore une fois, expérimentez, expérimentez, expérimentez , soyez ouvert à l'expérimentation, surtout avec cela visuellement jouer avec cela. C'est un exemple de la façon de le faire, n'est-ce pas ? On va essentiellement dire, Hé, ça peut apparaître de 80 à 80 négatifs. C'est essentiellement à des fins de test, pour le moment. Si je voulais vraiment faire ce rappel de notre probablement, utilisez probablement le modificateur très biaisé vers les huit derniers modificateurs de placement parce que j'ai l'impression que c'est ce serait les refroidisseurs et diminuera probablement le nombre également. Mais nous voulons simplement montrer que cela fonctionne essentiellement ici. Et puis la clé, encore une fois, est très facile, mais c'est juste la touche de rappel, de soulignement ou de dévissage. Alors, la même chose ici. Il doit s'agir du même nom que celui-ci, bien sûr encore une fois, joue même fonctionnalité avec la clé de registre. Ensuite, nous avons juste besoin d'une nouvelle origine de modèle ici. Donc, mod ou génération copiez rapidement cela. C'est à peu près le même que les autres. Ce ne sont que des fonctions placées de démonstration qu'il y a. Et puis cela se trouve à peu près dans le monde entier. Il s'agit donc d' une autre chose et c'est à l'étape de la génération souterraine ou de la génération. Ce qui est très important, c'est que cela soit appelé avant la décoration végétale. Ainsi, MAR ou génération génèrent des portes. C'est très important. Sinon, cela ne fonctionnera pas correctement. Mais c'est encore une fois tout ce dont nous avons besoin. Nous avons donc juste besoin d'une fonctionnalité de configuration qui prend réellement en compte une liste de cibles, ce qui est très important car vous voulez bien sûr que le magasin et l'état profond ou simplement une petite taille soit le la taille des veines, essentiellement la taille de la veine ici. Et puis placez la fonctionnalité. Nous pouvons dire combien de veines par transcription sont nées, puis de quelle manière elles devraient apparaître. Mais dans ce cas, trapèze, puis un décalage Y. Donc, en gros, dites : Hé, de quel niveau Y à quel niveau devraient-ils apparaître ? C'est l'idée générale. Encore une fois, je recommande vivement de jouer avec. Vous pouvez cliquer sur le bouton central de la souris et voir ce que vous pouvez modifier. Différents fournisseurs HIE, tout cela. Je le recommande vivement. Il suffit de jouer avec ça. Si vous avez des valeurs différentes ou des fonctionnalités différentes selon lesquelles vous souhaitez que votre cheval apparaisse différemment. Mais pour le moment, voyons si cela fonctionne. Et bien sûr, comme si souvent parce que nous avons foiré avec la génération mondiale. Créons un nouveau monde, ou un pharmacien à Minecraft est en fait une très bonne commande que nous pouvons utiliser, qui ne fait que remplir toutes les choses ci-dessous d'air. Et nous pouvons, en gros, je vais jeter un coup d'œil à tout ça. Voyons donc si quelque chose que nous voulons est apparu ici. Et pour celui-là, il ne ressemble pas vraiment à ça. Alors, n'allons pas dans la survie, mais en fait dans le mode dictateur. Et passons à travers et voyons si nous pouvons trouver que le, OU juste ici, nous l'avons. Donc, une partie de cela est apparue. Vous pouvez en voir d'autres ici. C'est en fait des vieux hommes, une veine encore plus grande ici. Comme vous pouvez le voir, il est apparu parfaitement bien. Et il y en a probablement encore plus autour de nous. il y en a quelques-uns, d'autres encore. Donc, c'est à quel point c'est plutôt cool. Et c'est bien sûr un sommeil profond. Maintenant, il fraie aussi et pierre bien sûr. Alors, regardez cela là, par exemple, nous l'avons immédiatement trouvé. C'est donc à peu près à quel point c'est facile, non ? Je pense que je le souligne assez pour que vous puissiez expérimenter un peu cela et l'essayer. Je ne vais donc pas me répéter, mais je dirai que c'est tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et vieux du nouveau. Et je vous verrai lors de la prochaine conférence. Donc, oui. 95. Comment créer un fichier JAR de votre Mod: Bon, bienvenue au cours de tissu pour 118. Dans cette courte conférence, nous allons voir comment créer un fichier JAR à partir de votre modèle. Et la façon dont vous faites cela est que vous ouvrez le terminal et que vous mettez en barre oblique Gradle w construit. Maintenant, tu ne fais que laisser passer ça. Cela ne devrait pas prendre beaucoup de temps. Il faudra environ 10 secondes. Vous y allez. Cinq secondes en fait, peut-être un peu plus longtemps si votre PC est un peu plus lent, mais pas de soucis du tout. Si vous obtenez une erreur ici vous n'utilisez peut-être pas la bonne version de Java. Vous pouvez spécifier la variable d'origine Java ici pour qu'elle prenne le bon JDK. En dehors de cela, vous trouverez maintenant votre fichier JAR à l'intérieur de vos dossiers. Donc, dans le dossier Build, en fait, nous allons simplement cliquer avec le bouton droit de la souris sur cet explorateur ouvert ici. Nous allons créer des libs de dossiers, puis celui-ci ici. Le nom le plus court est donc votre fichier JAR. Et vous pouvez maintenant ajouter ceci et essayer jouer avec cela ajouté à un serveur, ce genre de choses. Tout fonctionne comme n'importe quel autre fichier JAR que vous pouvez télécharger, par exemple, à partir de travailleurs fourrage ou quelque chose comme ça, n'est-ce pas ? Mais c'est tout pour cette conférence ici. Et c'est aussi pour le contenu planifié, disons, pour le premier lot de contenu de ce cours. À présent, d'autres sujets seront ajoutés à l'avenir. Donc, après cette conférence, il y aura une section appelée quelques sujets supplémentaires ou quelque chose du genre, où d'autres sujets seront ajoutés à l'avenir. Donc, peut-être que si vous regardez ce cours juste après sa sortie, il n'y aura peut-être rien là. Mais à l'avenir, quelque chose pourrait s'en sortir. C'est assez fréquent, cool. J'espère donc que certains sujets plus avancés y seront également abordés. peut-être que certains sujets moins avancés qui pourraient encore être utiles et qui auraient pu être demandés beaucoup, n'est-ce pas ? Mais ce serait tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et ignorant le nouveau. J'espère que je vous verrai lors de la prochaine conférence. Donc, oui. 96. (sujets supplémentaires): Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons mettre à jour notre tissu vers la version la plus récente. Pour moi, au moins. Je veux dire, je suppose que ce sera probablement une version un peu plus récente, même pour vous. Mais pour cela, bien sûr, nous allons aller dans le fichier de propriétés Gradle et ensuite nous pourrons accéder à ce fichier ici. Donc deux versions EMC Net, HTML et moi l' avons déjà ouvert. Voici donc les nouvelles versions ici des mappings de fils, du chargeur et de la version tissu car nous continuons un message du futur car 118 à deux vient de sortir. Je recommande vivement ce que vous faites, c'est de le garder sur cent huit cent un. Si vous avez suivi les cours avec 118, je vous recommande vivement de rester sur années 1800 au lieu de passer immédiatement à 172 parce qu'un siècle et toute la génération mondiale à venir est Je ne vais pas travailler avec les années 1800. À la fin du cours, il y aura une section où nous pourrons regarder si vous voulez aller jusqu'au XIXe siècle pour garder cela à l'esprit. Je recommande donc vivement de conserver à 181 points. Et puis vous pouvez mettre à jour à la toute fin du cours, nous allons faire c'est que je vais mettre ça sur l'autre moniteur et je vais juste le copier comme ça. Et ensuite, nous avons les trois autres ici. Ce sont donc ces trois qu'ils ont fait il y a et ensuite nous allons les déplacer. Et c'est à peu près tout ça. Et puis nous allons simplement cliquer sur le petit éléphant ici qui n'apparaît pas. Vous pouvez toujours ouvrir l'onglet Gradle , puis cliquer sur ce bouton. Et quand il est construit, une fois de plus, cela peut prendre un peu de temps. Cela peut prendre une minute ou deux, ou cela peut ne prendre que trente secondes, dépend de votre vitesse sur la connexion Internet, vous ayez mis à jour ou non choses comme ça par le passé. Mais une fois que c'est fini, nous allons juste attendre patiemment que celui-ci soit terminé et ensuite nous verrons si des erreurs peuvent survenir ou non. Très bien, vous pouvez voir pour moi qu'il a fallu 50 secondes, donc pas trop longtemps, vraiment très bien. Et dans l'ensemble, pour le moment, je ne reçois aucune erreur ou ce que nous pouvons faire, c'est que nous pouvons simplement démarrer la tâche d' exécution du client et voyons simplement si des erreurs peuvent se produire là-bas ou non. Bien sûr, encore une fois, il pourrait y avoir un peu de rouge ici, des avertissements différents, au moins, qui devraient être totalement corrects tant que les vrais clients commenceront, tout ira bien. cette époque, comme toujours, c'est juste une erreur normale que nous avons constatée à chaque démarrage du client. Donc, pas de soucis là-bas. Et voilà. La fenêtre est donc déjà chargée. Et voyons voir. Nous y sommes. Donc, tout fonctionne parfaitement et c'est en fait à quel point il est facile à mettre à jour. Maintenant, si bien sûr déjà vu une mise à jour, je voulais le faire une fois de plus avant d'entrer dans le mur, les sujets supplémentaires que nous allons discuter dans le, lors des conférences à venir. Donc, ça va être vraiment intéressant, des choses vraiment avancées. Mais je suis sûr que nous parviendrons à et ça va être vraiment intéressant. Mais c'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. 97. (Sujets supplémentaires): Très bien, bienvenue au cours de tissus pour 118. Et dans cette conférence, nous allons jeter un coup d'œil à la façon dont vous pouvez ajouter des gouttes expérimentées à vos blocs. Maintenant, c'est quelque chose qui énigme peu de gens dans le passé, mais c'est assez simple une fois que vous savez où regarder. Et c'est essentiellement que nous allons appuyer deux fois sur la touche Maj , puis nous allons jeter un coup d'œil à la classe de bloc oral où je vais m'assurer que cela inclut des non-projets. Et ensuite, nous allons choisir celui-ci ici. Et puis, en fait, passons au terminal ici. Et disons que Gradle w sources juste au cas où après les mises à jour. Parfois, vous devez le quand beaucoup de choses sont mises à jour, vous devez réellement faire les sources de génération ici. Et laissons cela se dérouler et nous pourrons voir ce que la classe a à nous offrir. là que tu y vas. a fallu environ une minute, puis c'est fini. Et maintenant, ce que nous pouvons faire, c'est théoriquement, nous pouvons la chercher à nouveau, en nous assurant une fois de plus que nous choisissons ceci, puis nous obtenons toujours la barre bleue, mais maintenant nous pouvons choisir les sources ici. Qui sont les sources cartographiées disent, d'accord, et après le recharge, nous devrions avoir la classe appropriée. Habituellement, la différence n' est pas une cigogne, mais elle peut parfois être une différence. Veiller à ce que nous ayons les bonnes sources ici au lieu de les décompiler. Maintenant, la classe de blocs orange ici nous donne la possibilité de transmettre également un uniforme dans le fournisseur, ce qui est l'expérience qui diminue en réalité, tout en détruisant ce bloc. C'est en fait tout ce que nous devons faire. Donc, dans notre classe de blocs de mode, par exemple, prenons le résultat oracle ou le cas des plus, nous ne voudrions probablement pas que l'expérience supplémentaire disparaisse. Mais nous allons le faire ici parce que c' est logique de le faire à titre d'exemple, sont généralement bien sûr, parce que notre calcium ori ou notre bloc gouttes Rory calcium, généralement vous ne voudriez pas ajouter l'expérience ici. Mais pour un exemple, nous allons le faire après les réglages du bloc de tissu. Nous allons juste ajouter un autre paramètre ici et ce sera l'uniforme de la création de points de fournisseur. On va juste dire quelque chose comme trois à sept. Voyons ce que nous pouvons également jeter un coup d'œil dans le bloc ou ici, nous examinons où cela a été utilisé. Donc, le bouton central de la souris cliquez dessus et, par exemple, voyant l'émeraude ou juste à titre d'exemple, nous allons voir le fournisseur. voici exactement 37. C'est à peu près la taille que vous voulez. Je crois que cela devrait être tous les différents ou les blocs où cela a été utilisé. Mais bien sûr, vous pouvez changer cela. Peut-être que vous avez une commande incroyablement rare et que vous voulez peut-être que cela soit beaucoup plus élevé, mais bien sûr aussi. C'est en fait tout ce dont vous avez besoin pour avoir votre expérience de chute de blocs également. Donc, pour l'achèvement, voyons si ça marche ou si Francis est de retour dans Minecraft. Alors, passons juste à moi un petit peu de ça et voilà. Voyez qu'il laisse tomber l'expérience aussi. Et comme je l'ai dit, vous pouvez simplement changer les entiers qu'ils sont, puis essayer de diluer dans combien d'expérience vous voulez qu'elle soit supprimée. Et nous pouvons juste voir, je peux continuer ici et il travaille continuellement. C'est en fait à quel point il est facile d'ajouter une expérience client qui diminue la vôtre. C'est déjà arrivé, pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose nouveau et je vous verrai lors de la prochaine conférence. 98. (Sujets supplémentaires): Ou je me réjouis de revenir au cours de tissus pour 118 ans. Et dans cette conférence, nous allons ajouter un bloc transparent personnalisé à Minecraft. C'est encore une fois, une de ces choses qui est assez simple une fois que vous savez quoi faire, bien sûr, c'est généralement l'astuce. Mais allons juste entrer et copions les feuilles de cerisier ici. Et ce sera la fenêtre de soulignement hivernal, même si l'hiver s'estompe lentement mais sûrement. Mais c'est bien sûr très bien. Il y a, bien sûr, que ça va revenir un peu de temps. L'hiver arrive. Bien sûr. On va en faire un nouveau bloc de verre il y a eux et ça va juste copier le verre ici. C'est à peu près tout ce dont nous avons besoin. Maintenant, ajoutons aussi qu'il n'était pas opaque. C'est en fait très important et ajoutons de la force ici aussi. Pourquoi ne pas avoir de force personnalisée ? Et ça va bien se passer. Et pour le bloc, c'est tout ce dont nous avons besoin. Maintenant, la raison pour laquelle nous avons besoin de la classe de bloc de verre est que si nous y entrons, point le plus central, cliquez dessus, puis le bouton central de la souris en cliquant sur le bloc de classe abstraite, vous pouvez voir qu'il a tout d'abord, la forme de collision de la caméra est vide. Ensuite, nous avons le niveau de lumière d' occlusion ambiante. C'est nécessaire pour que la lumière passe à travers. Et ensuite, nous avons également la méthode translucide, qui revient essentiellement vraie ici. C'est pourquoi nous utilisons le bloc de verre, c'est tout simplement logique. Maintenant, ce que nous devons faire pour que la fenêtre d'hiver soit correctement ajoutée dans la classe client du cours MC, nous allons copier l'échantillonnage ici. Je ne vais pas en faire la fenêtre hivernale, et nous allons rendre cette couche de rendu translucide. Alors, devenez translucide. Il est très important que nous ajoutions cela également. Et ensuite, la transparence réelle est terminée. Bien sûr, nous devons encore ajouter les fichiers JSON normaux que nous allons copier sur tout ce qui se trouve ici, bien sûr, disponibles dans le référentiel GitHub, un individu tout aussi. La course de la mer, le bloc States n'est absolument qu'un quotidien normal, en fait un peu ennuyeux. bloc indique le fichier JSON. Et ensuite, copions également la traduction ici. Ce n'est rien, rien de trop fou. Rien qui devrait vous alarmer de quelque manière que ce soit, forme ou forme. C'est juste normal comme on a déjà vu beaucoup de fois. Idem avec le fichier JSON du modèle de blocs. Vous pouvez voir tout à fait normal ce que militarisme dépose et nous allons aller 33. Oui, nous allons passer par un fichier JSON modal à trois éléments tout à fait normal. Et puis prenons aussi la texture que vous avez finie et ce serait à peu près tout. C'est tout ce dont nous avons besoin. Donc deux choses très importantes, ce qui en fait un nouveau bloc de classe non opaque. Et puis assurez-vous que cela s'appelle votre couche de rendu translucide. Et après avoir ajouté tout cela, voyons si cela fonctionne ou si des réponses dans Minecraft z, la fenêtre hivernale a été ajoutée avec succès au jeu. Alors, posons-le et vous pouvez voir, voilà. On peut regarder à travers ça et ça a l'air assez incroyable. Donc, travailler à peu près comme le verre normal, comme on s'y attendrait. Et nous allons avoir une autre chose et nous allons jeter un coup d' œil aux textes une fois de plus pour vous montrer une autre chose qui est très importante pour les blocs transparents personnalisés. Nous avons ouvert la fenêtre d'hiver PNG ici. Et une fois, bien sûr, il est très important ici que ces pixels soient bien sûr transparents. Ils ont une valeur Alpha qui est inférieure à un. est très important que la valeur alpha de certains pixels soit bien sûr inférieure à un. Sinon, il ne sera pas transparent. C'est donc à peu près tout ce qu'il y a à faire. Vous pouvez le faire dans GIMP, en peinture sur net ou dans deux excellents programmes. J'utilise personnellement Photoshop, mais ces deux-là fonctionneraient aussi. Mais quel que soit le cas, c'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. 99. (sujets supplémentaires) Ajouter des éléments animés: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter un élément animé personnalisé à Minecraft. Maintenant, l'ajout d'un élément animé est en fait un processus assez simple. Maintenant, il va s'agir d'une texture qui va être animée et évoluer au fil du temps. Pour cela, bien sûr, nous allons avoir besoin d'un nouvel article. Allons donc dans notre classe plus d'articles à moins que la copie supérieure au-dessus de l'article du bol, en fait, ce sera probablement le plus facile. Et parmi notre appel, le rappel de soulignement magique vient souligner la poussière. Et ensuite, la même chose ici. soulignement magique ou une poussière de soulignement calcique. Maintenant, il va s' agir d'un article normal. Curieux, n'est-ce pas ? Oui, l'article lui-même est très, très simple à réaliser. Ce qui est intéressant, c'est en fait la texture elle-même ainsi que le métafichier MAC associé. intéressant, qu'est-ce que ça fait, ce que nous allons voir. Mais tout d'abord, ajoutons la traduction ici pour que nous l'ayons. Ensuite, nous allons également ajouter le fichier de modèle. Maintenant, le fichier modèle, on peut dire : Eh bien, le fichier de modèle doit être un peu compliqué, n'est-ce pas ? Ça va probablement être vraiment génial. Et non, il s'agit en fait d'un fichier de modèle normal, comme vous pouvez le voir clairement, qui pointe simplement vers une texture. Et la texture est la chose qui va être la partie intéressante, eh bien, intéressante de tout cela. Nous allons donc copier cela, y compris le fichier MC Mehta. Maintenant, tout cela est bien sûr disponible pour vous dans le référentiel GitHub en individuel. Et vous pouvez voir ici, c'est la poussière elle-même. Et vous pouvez voir qu'il s' agit de textures multiples. Et ce sont les images référencées dans le métafichier MC. Vous pouvez voir 012345, c'est à peu près 012345. Ils vont s'en aller, ils vont être essentiellement animés dans un terme français de 16 ans. Je recommande vivement de changer cela et de jouer un peu avec ça, être ouvert à l'expérimentation ici. L'interpolation signifie simplement qu' elle s'estompe en quelque sorte d' une image à l'autre au lieu de changer discrètement. C'est l'idée générale de l' interpolation dans ce cas, et c'est l'idée ici. C'est donc tout ce qu'il y a à faire. Maintenant, il est très important que le métafichier MC porte le même nom que la texture, y compris le point PNG. C'est extrêmement important. S'il vous plaît, assurez-vous que cela est bien écrit. Encore une fois, l'une de ces choses où il est préférable vérifier ou de tripler l'orthographe. Et pour quelques exemples, pour les blocs. Par exemple, vous pouvez accéder aux bibliothèques externes ici pour obtenir des cartes de projet de microbes réseau, ainsi de suite. Et nous allons aller dans le dossier des ressources, bloc textures Minecraft. Et nous allons jeter un coup d'œil au bloc magma car celui-ci est également animé. Vous pouvez voir que la texture du magma est en fait libre, différentes textures. Et voici le métafichier MAC. Encore une fois, presque exactement la même chose que pour le métafichier actuel que nous avons ici. Vous pouvez voir que c'est juste un temps différent pour le magma et c'est à peu près tout ce qu' il y a à recommander, comme je l'ai dit, de jouer un peu avec ça. Essayez-le et voyez ce que vous pouvez trouver. Mais sinon, voyons si la texture animée fonctionne correctement. Ou un Minecraft. Comme vous pouvez le constater, la poussière magique a été ajoutée avec succès et vous pouvez voir qu'elle a l'air effrayante, incroyable. Il génère ou s' anime plutôt automatiquement. Vous pouvez voir que c'est juste ça a l'air vraiment cool car il a, vous savez, un effet étincelant. Et comme je l'ai dit, c'est complètement personnalisable. Vous pouvez simplement changer le métafichier MC, jouer un peu avec cela et ensuite vous pouvez juste avec cela, juste avec des trucs de base comme ça, vous pouvez déjà ajouter des choses fréquentes assez cool dans votre modèle. C'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose nouveau et je vous verrai lors de la prochaine conférence. 100. (sujets supplémentaires): Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons créer un écran de menu personnalisé. Maintenant, cela va être très intéressant, car un écran de menu personnalisé est quelque chose très intéressant à ajouter à votre MOD. Maintenant, l'une des choses que je veux mentionner immédiatement, c'est que lorsque nous créons l'écran de menu dans cette conférence, nous allons le faire pour qu'il s'affiche toujours. Et puis lors de la prochaine conférence où nous allons parler de configs, nous allons faire en sorte que vous puissiez déterminer si la chose s'affiche ou non. C'est très important que vous ajoutiez cela. Sinon, votre MOD ne sera jamais ajouté à aucun pack de mod. Vous devez rendre cela configurable. Mais c'est quelque chose que nous verrons lors de la prochaine conférence. Dans celui-ci, nous allons créer l'écran de titre personnalisé du mur. Ce qui va être vraiment intéressant, c'est que j'ai vu beaucoup de façons que cela a été fait auparavant, mais en gros toujours en utilisant la classe d'écran de titre. Ce sera donc l'écran de titre. Là, vous passez sous celui-ci juste ici et écran de l'interface graphique du client microbe. Et c'était très étrange parce qu'ils ont toujours fait l'intégralité du titre. Screen Maker a fait un mixin et vient de changer. Je veux dire, beaucoup de choses ici. Et j'étais comme, je ne peux pas imaginer que ce soit la seule façon de le faire. En fait, ce n'est pas le seul moyen de le faire. J'ai trouvé un moyen beaucoup, beaucoup plus facile et meilleur. On va toujours avoir besoin d'un mixin, mais ça va être très simple. Donc, tout d'abord, nous allons créer une nouvelle classe imitant et un mélange d'écran de qualité emballé. Vas-y et ça va ressembler à ça. Je vais le copier. Je vais dire, Oh mon Dieu, c'est beaucoup trop exactement. Ce n'est presque rien. Vous allez en faire une interface. Cela va mélanger la classe d'écran. Et il y aura juste un accessoire ici ou la liste des objets dessinables. C'est tout ce dont nous allons avoir besoin ici. C'est littéralement tout ce dont nous avons besoin. Ensuite, bien sûr, pour le mixage, nous devons aussi ajouter que cela est mélangé ici maintenant, très important, c' est sous le client. C'est très important, car cela n' affectera que le client. C'est pourquoi nous devons avoir cela ici. Nous pouvons également le voir dans l'environnement d'écran, valeur, le type d'environnement ici est client. Cela ne s'est produit que chez le client. Par conséquent, nous devons placer le mixage dans le client, dans le JSON de mixage. Une fois que nous avons fait cela, nous sommes maintenant logés. D'accord, comment allons-nous procéder maintenant ? Nous allons créer un nouvel écran de titre. Nous allons juste être dans le paquet util. Cliquez avec le bouton droit sur la nouvelle classe Java appelée le, je vais appeler ça l'écran de varech et de titre inactif. Vous y allez. Cela va étendre la classe de l'écran titre. Vous pouvez voir que nous n' avons pas à survoler cela et que nous n'avons rien à faire ici. Mais ce que je vais faire, c'est que je vais copier le contenu de ce document. Encore une fois, tout cela est disponible dans le référentiel GitHub et dans les particuliers. Je vais expliquer ce qu'est le FREC. Ici Hubbard. Nous pouvons voir cet éclaboussement. Il s'agit de l' identifiant réel qui pointe vers mon image que je voulais remplacer la largeur normale de l'image. Ensuite, nous avons également la texture des écrans de titre Minecraft. Ce n'est que le Minecraft qui est écrit essentiellement en haut, au milieu, en haut de l'écran de titre réel car nous devions l'ajouter. Une fois encore. La façon dont cela fonctionne est que nous appelons cette méthode de rendu. La première chose qu'il fait, c'est qu'il affiche l'écran de titre normal. Comme vous pouvez le constater, je l'ai divisé en quatre méthodes différentes ici. Ensuite, nous dessinons notre écran de titre personnalisé. Ensuite, nous allons dessiner le logo Microsoft avec je vais dessiner les avis de copyright, puis nous allons dessiner l'écran de titre et les boutons. J'étais très important, c'est que toujours garder les avis de copyright là-dedans et pas sûr à 100%. Mais je pense que si vous ne les avez pas, vous pourriez commettre une fraude aux droits d'auteur ou quelque chose comme ça. Alors gardez-les là-dedans. Il suffit de le garder comme ça. Il s'agit à peu près du même code que celui de l'écran de titre. La plupart de ces choses ont été tirées de l'écran de titre. Le logo actuel ici est entièrement à partir de l'écran de titre. Les boutons de l'écran proviennent de l'écran de titre, puis de l'écran de titre personnalisé. Celui-là est un peu un peu un peu un peu un maximum de choses client, mais la plupart de cela en tant que clients, vous pouvez voir que la plupart des choses sont très similaires à cela aussi. Nous dessinons simplement une texture différente ici. Et c'est à peu près tout ce que nous faisons. Maintenant. Que va-t-on faire de cet écran de titre ? Eh bien, nous allons rendre un nouvel événement intéressant. Dans le package d'événements RV, nous allons cliquer avec le bouton droit sur la nouvelle classe Java et il s'agira l'événement remplacer l'écran titre. Voyons ce que je vais appeler ça. Cela implémentera le point Events de l'écran avant, et nous devons prendre celui-ci ici. Cet événement est essentiel avant qu' un événement particulier ne soit initialisé. Nous allons ensuite implémenter la méthode avant initialisation ici. Ensuite, je copierai le contenu, ce qui sera aussi très simple. Mais ce que nous allons juste dire, c'est bon, si l'écran en cours d'initialisation est un écran de titre et qu'il ne s' agit pas de notre écran de titre. Nous allons juste définir cet écran sur l'écran de titre. C'est assez facilement exagéré ici. C'est littéralement exagéré. Et maintenant, nous avons juste besoin de faire ce registre, cet événement réel ici. Et ça va se faire dans la classe des clients. Donc le client de cours MC, très important. Et puis ici, nous allons juste dire des événements d'écran avant cette fois de l'usine d'événements ici. Et puis on va juste dire un enregistrement, un nouvel événement de remplacement, un nouvel événement remplacement de l'écran de titre. C'est ça. Maintenant, l'écran de titre sera remplacé par cette texture ici. Nous avons bien sûr, je dois encore ajouter cette texture. Sinon, nous allons juste obtenir une texture noire et rose, qui n'est pas ce que nous voulons à ce moment aller dans l'interface graphique puis en arrière-plan, donc un nouveau répertoire, leur arrière-plan il y a. Et ensuite, nous allons copier ça. Ceci est également disponible pour vous. Toutefois, veuillez noter qu' un avis de droit d'auteur est associé à cela. Une fois de plus, on peut prendre ici le fichier des crédits. Vous pouvez en voir certains près de votre genou. Il s'agit donc encore une fois de la même licence Creative Commons. Ensuite, il vous suffit de lier la page Fiverr juste là. Il gardera cela à l'esprit également si vous voulez l'utiliser. Je recommande vivement de ne pas l'utiliser car cela n'a aucun sens car lorsque vous verrez la texture réelle ici, je ne le fais pas, vous n'avez pas besoin de l'utiliser. Quoi qu'il en soit, c'est tout ce dont nous avons besoin. Voyons maintenant si cela fonctionne ou s'il commence à se charger ici et nous devrions tout de suite, bien sûr, le voir. Et nous y sommes. L'écran de titre personnalisé fonctionne exactement comme vous l' attendez. Les boutons fonctionnent toujours. Je veux dire que c'est un très mauvais exemple, mais voilà. Je peux donc cliquer sur tout et tout fonctionne toujours. Et nous avons ici le personnage de microbe Milo tenant un tutoriel de signe par colonne et ligne. Ici, sur la gauche, nous avons un peu de spoiler juste ici. Alors, qui sait ce que signifie cette combinaison ? Qui sait ? Mais dans l'ensemble, j'aime vraiment que ce soit vraiment cool et que tout fonctionne. Vous pouvez donc même consulter le droit d'auteur ici. Vous pouvez toujours cliquer dessus et tout fonctionne toujours très bien. C'est en fait à quel point il est facile d'ajouter un écran de titre personnalisé à mon métier, n'est-ce pas ? Et comme je l'ai dit, je recommande vivement de consulter la prochaine conférence, où nous allons également ajouter un conflit à cela. Parce que si vous ne rencontrez pas le conflit, vous devez le rendre configurable. Je vais juste le dire, mais pour le moment, c'est tout pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. 101. (sujets supplémentaires) Ajouter des figues simples et base: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter un simple conflit à Minecraft. Qu'est-ce que cela signifie ? Comment fonctionnent les conflits ? Eh bien, tout d'abord, nous allons utiliser un cours déjà créé. Et c'est juste ici, du tissu, lèvres simples ici. C'est de la part d'un magistrat Vmax. Méfiez-vous ou assurez-vous qu'il s' agit d'un droit d'auteur. Et donc ça va être la licence du MIT juste pour que tu sois au courant de ça. Assurez-vous donc de savoir que c'est le cas. Le simple conflit ici est en fait, je veux dire, assez simple. Ce n'est pas vraiment trop compliqué, mais nous allons l'utiliser. Et bien sûr, tout cela est également disponible pour vous dans le référentiel GitHub en individuel. Et je vais en fait copier les trois classes créées dans le paquet de cours MC, cliquez avec le bouton droit sur le nouveau package appelé config. Ensuite, à l'intérieur de là, je vais copier les trois cours. Comme je l'ai dit, ils sont tous disponibles pour téléchargement. Mais voyons voir. Vous y allez. Ils sont là. Nous avons la classe de conflit simple, qui n'est généralement qu' une classe Java normale. À l'intérieur d'ici, rien ici n'est essentiellement destiné à Minecraft ou à tissu. Ce n'est que du code Java normal. Ici, j'ai fait une petite modification ici, c' est qu'elle reconnaît une valeur commune après une valeur qui est tout ce que j'ai essentiellement ajouté ici aussi. Juste, parce que mon, je l'ai trouvé un peu plus agréable à cause de la façon dont je l'ai configuré pour que nous ayons ce fournisseur de conflits ici. Nous pouvons constater qu'il ne s'agit que d'une configuration par défaut. Qu'est-ce que cela fait maintenant ? C'est vraiment juste une liste de paires. Nous allons donc avoir une paire clé-valeur pour qu'un conflit soit assez sensé, où il y a une chaîne qui sera la clé, puis un type de valeur. Nous ne savons pas quelle valeur parce que nous pouvons essentiellement enregistrer des choses dans différentes valeurs et c' est dans la classe des conflits de mod est fondamentalement bien fait ici, nous avons cette méthode de conflits de registre, que nous allons appeler dans un instant . Mais qu'est-ce que cela fait ? Eh bien, c'est un nouveau fournisseur de conflits. Il crée ensuite les conflits. Il s'agit de la création réelle des conflits. Vous pouvez voir que nous ajoutons simplement paires clé-valeur à ce fournisseur de conflits moderne ici. L'idée est que c'est la clé. Vous pouvez voir que je viens d' avoir quelques exemples ici. Valeur de test T, nous avons une autre valeur de test. Une autre valeur de test est une chaîne en double, ou bien avoir ces commentaires ici juste pour qu' il soit un peu plus facile pour le joueur ou l'utilisateur réel de modifier ce conflit afin qu'il sache quel type ils Je veux changer cela par. Vous pouvez également y ajouter d'autres éléments. Comme les choses possibles que vous pouvez mettre ici, quelque chose comme ça serait également le cas. Et vous pouvez voir qu'il y a ici la valeur e-value de remplacement de l' écran de titre , qui est la plus importante, et qui est celle que nous allons jeter un coup d' œil dans un instant. pour le moment, nous allons aller ici et, tout en haut de ce qui n'est pas initialisé, nous voulons dire conflits de mods, pas des conflits enregistrés. C'est à peu près tout ce que nous devons faire ici. Comme je l'ai dit, bien sûr, tout le code est disponible. Maintenant, le plus important est que vous ne puissiez pas utiliser vos valeurs configurées ici partout. Et c'est quelque chose qui est très important ici. Parce que certains, en gros, ce que nous allons faire, c'est qu'on va juste diriger un client pour un instant. Et je vais expliquer pourquoi il pourrait y avoir des problèmes ici. Nous avons donc deux fils différents, n'est-ce pas ? Il y a donc le thread du serveur et le client pour cela est bien sûr aussi la raison pour laquelle nous avons le mod MC cœurs ici et la classe client du cours MC. Parce que ce n'est que le client, c'est pour les deux. Il devrait s'agir de quatre points communs. Essentiellement. Notre configuration en ce moment va être intéressante car sur le, si nous sommes sur le serveur , il va être chargé. Et ensuite, si nous sommes sur le client, il sera également chargé. Maintenant que j'ai mon microphone, il a commencé et je peux arrêter. Et maintenant, je devrais pouvoir trouver mon conflit sous le dossier R1 dans les conflits. Et voilà, le conflit de cours MC ou les propriétés. Et vous pouvez voir qu'ils sont là. Vous avez donc la clé réelle ici et ensuite quelle que soit cette valeur, et vous pouvez également voir la valeur par défaut ainsi que le commentaire que j'ai essentiellement ajouté ici. C'est l'idée générale, et c'est ainsi qu'elle est affichée. Encore une fois, ce qui est intéressant, c' est que ce fichier va être le même pour le serveur et le client. Maintenant, si, par exemple, nous devions changer quelque chose dans les autres éléments, par exemple, et dire qu'il y a un nombre maximum différent ici. Ce sera une inadéquation entre le serveur et le client. Méfiez-vous très bien de l'endroit où vous utilisez cela. J'ai constaté que les conflits dans le tissu sont beaucoup plus difficiles à faire correctement. Ensuite, à Forge, je ne sais pas s'il n'y a pas vraiment de bonne solution que j'ai trouvée. Toutes les API Config sont toutes incroyablement alambiquées et peu faciles à suivre. Je ne suis pas sûr à 100 %. Ce simple conflit ici suffira pour certains clients ou certains trucs, 100% pour le serveur. Eh bien, nous verrons. Et vous pourriez aussi séparer cela pour faire un, ces trois classes fondamentalement, ou plutôt ces deux classes en font un mod. Les conflits de clients n' appellent cela que sur le client, alors il ne devrait même pas s'agir d'un cratère sur le serveur, car bien sûr, le remplacement de l'écran tuilé en ce moment, dans ce cas ici, en fait quelque chose qui ne se produit dans le client réel. Mais tout de même, ça devrait être tout à fait parfait. Nous allons donc passer à l'événement Remplacer l'écran de titre. Et ensuite, nous allons dire que nous allons dire mod, client de mod, plus de conflits. Ils font plus de conflits qui remplacent l'écran de titre. Et nous allons juste ajouter une fin et ce sera tout. En gros, vous allez simplement vérifier si c'est vrai ou non. Et si nous devions, par exemple, changer cela par faux ici, puis recommencer. Une fois que cela a été créé une fois, il devrait maintenant lire la valeur réelle dans. Et ça va dire, hé, remplacer l'écran de titre est faux et ensuite ne pas remplacer l'écran de titre. Mais comme je l'ai dit, il y a encore quelques obstacles sur le front des conflits. Ce n'est donc certainement pas la meilleure solution pour le moment. Vous y allez. Il fonctionne. Il s'agit la meilleure solution pour le moment, mais ce n'est probablement pas la meilleure solution à jamais. Je n'ai pas encore trouvé une très bonne implémentation de tout ce qui est une bonne API de conflit pour fabric, mais c'est ce que c'est. Néanmoins, nous avons maintenant au moins ajouté l' année du conflit pour l'écran, ce qui est essentiellement la chose la plus importante ici. Vous avez aussi quelque chose pour les conflits, sorte qu'il y a au moins qu'ils aient tendance à aller dans la bonne direction. Au fait, le wiki Fabric MC contient une liste de quelques conflits différents. Comme je l'ai dit, je n'ai trouvé aucun des autres comme si intéressant ou bien fait. Au moins, je ne l'ai pas vraiment fait, j'ai passé un peu de temps avec chacun d'eux. Et le simple conflit est vraiment facile à utiliser pendant le cas d'utilisation que nous avons. Je vais également relier cela afin que vous puissiez jeter un coup d'œil à certains des autres. Mais pour le moment, je pense que tout ira bien. C'est déjà le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et nouveau, et je vous verrai lors de la prochaine conférence. 102. (sujets supplémentaires) Ajouter des effets personnalisés: Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter un effet personnalisé à Minecraft. C'est une chose très intéressante car l'effet réel vient d'un autre étudiant qui avait réellement importé cet effet dans sa mafia mais qui avait un problème. Et j'ai pu le réparer. Et je me suis dit, c'est vraiment un effet cool. Je veux essentiellement montrer comment cela fonctionne et c'est en fait beaucoup plus simple que vous ne le pensez. Dans notre forfait de cours MC. Nous allons cliquer avec le bouton droit sur un nouveau package en vigueur. Et puis, au lieu de là, nous allons faire deux nouveaux cours. L'un d'eux sera la classe Mode Effects. Ensuite, l'autre sera l'effet de gel. L'effet que ça va fonctionner, c' est qu'il va geler une entité ou qu'elle ne peut plus bouger. Vous savez, je ne dirais pas nécessairement de problèmes ici, mais ça va être intéressant à voir parce qu'il y a une sorte de façons intéressantes, disons, que cela fonctionne, mais nous allons simplement voir comment cela fonctionne. Je vais copier le contenu de la classe réelle, étendre la classe d'impact de statut que vous pouvez voir. Et puis, en gros, ils auront un constructeur normal ici. Nous allons remplacer la méthode d'effet d' application de mise à jour. Donc, ce sera la méthode de ticking qui va essentiellement bloquer chaque coche qu' une entité a cet effet d'état appliqué à elle. Et ensuite, nous devons également remplacer la méthode d' effet de mise à jour peut appliquer et renvoyer un vrai ici pour que cette méthode soit même couche parce que si c'est faux, alors c'est Même pas de manteau. Vous pouvez voir que nous prenons simplement les coordonnées actuelles des entités réelles , puis les définissons, permet à l'entité réelle de revenir à ces coordonnées. Il peut y avoir des problèmes avec cela, surtout en ce qui concerne le vol. Cependant, pour le joueur réel, cette méthode appelée est très importante. Et pour tous les autres, donc tout ce qui a une entité qui circule dans le monde, alors la vitesse définie est importante car cela fait en sorte que les animaux ou un zombie ou tout ce qui pourrait ne plus pouvoir bouger. Ces deux éléments sont donc importants, et c'est à peu près tout ce que vous devez faire ici dans la classe Mode Effects. Nous allons encore une fois copier ça parce que pourquoi pas ? En fait, ce n'est pas tant que ça. Et aussi, bien sûr, tout ce qui s'offre à vous dans le passé ou à un individu tout aussi bien. On ne voit rien de trop fou. Nous avons l'effet statut que nous ne l' enregistrons ici. Et nous l' enregistrons à l'intérieur du charbon d'effets de registre, ce qui est bien sûr quelque chose que nous devons appeler au lieu du cours MC Ahmad ici, nous allons juste passer par le bas. ici. Nous allons dire plus d'effets, pas enregistrer les effets. Vous y allez. Et c'est tout ce que nous devons faire maintenant, nous devons encore ajouter une chose de plus et cela sera dans le dossier Textures du cours MC assets. Vous souhaitez créer un nouveau répertoire appelé effet de soulignement mob. Effet. Voilà, Effect. Et ensuite, nous voulons ajouter le gel PNG à celui-ci sera le PNG réel ou l'image réelle qui s' affiche lorsque vous aurez cet effet. C'est en fait tout ce qu'il y a à faire. Ce n'est vraiment pas si compliqué, surtout l' effet de statut en soi. La catégorie ici devrait être assez explicite. C'est juste la couleur que vous pouvez voir, c'est juste la couleur réelle de celle-ci, de cet effet de statut qui va être utilisé, je crois aux océans et aux Perses, nous allons voir la prochaine conférence également. Pour le moment, nous allons simplement avoir cet effet sans portion. Et après avoir ajouté tout cela, voyons si cela fonctionne ou s' il était de retour dans Minecraft. Alors ajoutons et voyons si je peux me donner l'effet ici. Donc, ce sera un joueur là et vous pouvez voir l' effet de gel du cours MC est là. Alors donnons-le moi et tu vois, je ne peux pas en bouger en essayant d' appuyer sur les touches, est-à-dire que ça ne marche pas, non ? Et vous pouvez voir que nous n'avons pas traduction réelle pour le moment , mais tout ira bien. Et vous pouvez voir que je ne peux pas, je ne peux même pas déplacer la souris. Je peux toujours frapper des blocs si je suis heureux. Mais vous pouvez voir que c'est comme beaucoup , je suis fondamentalement gelé. Il y a probablement quelque chose que vous pouvez également faire pour ne pas avoir cette secousse lorsque vous essayez de déplacer la souris ici. Mais dans l'ensemble, cela fonctionne. Et puis dès que l'effet s' efface, c'est parti. Maintenant, je peux déménager à nouveau et tout fonctionne bien. C'est vraiment cool. Comme je l'ai dit, tout le reste sera ajouté à la prochaine conférence, y compris une partie et toute la traduction sera également présente. Mais ce sera tout pour cette conférence ici. J'espère que vous avez trouvé cela utile et des millions sur le Nouveau, et je vous verrai lors de la prochaine conférence. 103. (sujets supplémentaires): Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter des potions personnalisées à Minecraft. Maintenant, les portions personnalisées sont très intéressantes, et cela va bien sûr se détacher de l'efficacité de la frise que nous avons ajoutée lors de la dernière conférence. Ce que nous allons faire, c'est qu'on va faire un nouveau paquet ici, et on va appeler ça le paquet de potions. Vous y allez. Ensuite, au lieu de là, nous allons créer une nouvelle classe Java appelée les océans mod. Il y a eux. Encore une fois, je vais copier le contenu ici. Mais avant de pouvoir copier le contenu, ce que nous voulons faire, c'est en fait que nous voulons le copier ici. Si nous voulons obtenir la frise de portion puis enregistrer la méthode de potion ou cela est bien sûr disponible dans le référentiel GitHub et les intérêts individuels. Donc, pas de soucis. Ensuite, je vais ajouter la méthode des potions de registre modifiée ici, car nous allons pouvoir ajouter les recettes de potions Register dans un instant parce que pour les recettes que nous avons ajoutées, nous avons vraiment besoin d'un mélange ici, mais pas de soucis du tout. En fait, ce ne sera pas compliqué. Mais cette méthode de potions de registre appellera ici. Donc, sous les effets moteurs, plus de potion, commencez à enregistrer la potion. Alors, tu y vas. Ça devrait être ça. Maintenant, il est important que nous attribuions ce champ à l'intérieur de la méthode des potions de registre. Je n'en suis pas sûr à 100 %. C'est juste un peu bizarre ici, mais j'ai découvert que cela fonctionne. Et si, si nous l'affectons immédiatement ici lorsque nous initialisons le champ et que cela ne fonctionne pas. Mais quel que soit le cas, nous avons maintenant besoin d'un mélange. Donc, si nous examinons le registre des recettes de brassage ici en ce moment, ils sont dans une recette de microbes nets. C'est une classe formidable qui enregistre toutes les différentes recettes de potions. Et vous pourriez être comme, c'est génial, mais malheureusement, la méthode de recette de potion de registre est privée. C'est un problème ici, bien sûr, parce que cela signifie que nous ne pouvons pas simplement l'ajouter. Si c'était public, ce sera beaucoup plus facile. Mais heureusement, on peut simplement utiliser un mélange. Et pour ça, on va faire un nouveau cours Java, et ça va être la recette de brassage. Votre mixin de registre. Vous y allez. Alors ce sera le cas, je vais en fait copier et c'est encore une fois très simple et bien sûr tout à votre disposition. Je vais changer ça en interface. Cela va bien sûr mélanger la classe de registre des recettes de brassage. Ensuite, nous allons avoir cette méthode statique appelée simplement invoquer la recette de portion de registre, veillant à ce que ce nom ici soit le même que, laissez-moi revenir ici comme ce nom ici. Ce nom doit donc correspondre à celui de Volcker. Et ensuite, nous ajoutons simplement cet assertion parce que cela ne devrait jamais être froid. Si le mélange et fonctionne correctement, alors cette méthode devrait être appelée une encoche, tout ce qui est écrit ici, c'est juste une autre chose. Et ensuite, nous devons aussi ajouter dans le parcours EMT, la course mixte. Et très important, vous voulez ajouter ceci, mais ajoutons cela juste ici sous le mixin. C'est donc très important sous mixage, pas Client ici, en s'assurant que cela est écrit correctement. Nous pouvons donc simplement vérifier la copie, en sautant ceci et tout ce qui est écrit correctement. C'est génial. Ensuite, ce que nous voulons faire, c'est que nous voulons aller au cours des portions MOD une fois de plus. Et nous allons juste faire cocher une dette privée. Non, tu y vas. Vide statique. Nous allons appeler cela les recettes de potions du registre. Et puis à l'intérieur, ce que nous allons faire, c'est que nous allons appeler le mélange du registre des recettes de brassage, invoquer la recette de portion de registre. Et puis je vais juste dire que nous allons utiliser les portions. Gênant, maladroit. Il y a eux. Et puis je veux que les éléments de mod commencent ou le lingot de calcium, nous devons être ajoutés et ensuite nous obtiendrons la portion plus élevée de potion début ici. Et c'est à peu près tout ce dont nous avons besoin maintenant, celui-ci doit être froid ici. On va donc appeler ça en bas, ici. Une fois que tous les Perses ont été enregistrés pour nos portions personnalisées, nous enregistrerons également les recettes de portions. Et cela va être enregistré au fait, pour les trois portions différentes, pas de potion. Potion, ainsi que la portion persistante. C'est à peu près tout ce dont nous avons besoin ici. Ensuite, nous avons encore besoin de la traduction, ce qui est très important. Et nous allons également ajouter la traduction. Mais la traduction est très intéressante car les éléments ici, donc les parties sont en fait sous l'espace de noms Minecraft. ne sais pas pourquoi c'est le cas. Je pense que, je veux dire, c'est évidemment le cas parce que lorsque nous enregistrons une potion, la portion réelle sera enregistrée sous Minecraft. C'est juste ce que c' est, mais c'est très bien. Et ensuite, nous en avons également besoin pour cet effet ici. Je vais juste ajouter ça. Nous allons juste ajouter cela en bas, ici. Effectuez donc le gel du cours MC, et c'est juste gratuit. Ce sont donc les quatre traductions dont nous avons besoin. Et c'est en fait tout ce que nous avions besoin d'ajouter, la portion incluant la recette de la potion. Donc, je suppose que nous allons voir si cela fonctionne ou s'il s'agit de fossiles dans Minecraft. Essayons donc de voir si je peux ou non fabriquer ma partie personnalisée. Donc, si je mets l' oracle en place, nous commençons déjà à progresser ici. C'est déjà très bien, bien sûr, parce que cela signifie qu' il fonctionne au moins la recette. Maintenant, j'espère que nous obtenons également les bonnes portions réelles ici aussi parce que sinon vous obtenez parfois la potion inconfortable si quelque chose a mal tourné, mais nous n'avons pas gelé la potion, éclabousser une partie de gel et l'océan persistant également. Mais pour l'instant, nous pouvons aller voir aussi bien comment cela fonctionne pour les mamans. Allons juste tuer l'année des moutons. Et voyons vraiment ce que nous pouvons voir. Si j'ajoute des moutons ici, c'est en fait quelques-uns d'entre eux. Mais si je viens de casser ça, vous pouvez voir maintenant qu'ils sont tous gelés. Et ce que je peux faire, c'est que vous pouvez voir que si je le frappe, ça va vraiment être intéressant parce qu'ils vont en fait flotter en l'air ainsi que le Y est de bien sûr aussi un congelé là-bas. Voyons en fait, faisons ce qui suit. Encore une autre portion de gel ici. Allons faire entrer des zombies. Et voyons voir. Je vais revenir aux survivants qu'ils vont me suivre , puis les geler. Et puis on a pu voir qu'ils sont tous gelés. Très, très drôle, mais ça marche vraiment. Et parfois, ils sont encore dégelés. Retournez ici, voilà. Et c'est en fait à quel point c'est facile. Et comme vous pouvez le constater, tous ces éléments ont été ajoutés correctement, les portions ont été ajoutées, tout fonctionne également. Revenons ici et voyons toutes les portions et les recettes de potions. C'est donc plutôt cool. Ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous avez appris quelque chose de nouveau. Je vous verrai lors de la prochaine conférence. 104. (Sujets supplémentaires) Ajouter des entités personnalisées avec Geckolib: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter une entité personnalisée à Minecraft. La conférence tant attendue sur la façon d'ajouter une mob personnalisée ou entité personnalisée à Minecraft est enfin ici. Et dans l'ensemble, ce sera assez simple. Je pense que tout est considéré, il y a beaucoup d'étapes que nous devons franchir, mais chacune des différentes étapes n'est pas si difficile en soi. La première chose que je veux dire, c'est que toutes les entités que nous allons créer ici seront des entités à lèvres gecko. Nous n'allons donc pas faire d'entités vanillées. Nous allons immédiatement commencer par les entités de lèvre gecko. Et je vais vraiment relier quelque chose ici. Ce sera donc la lèvre gecko, essentiellement le dépôt GitHub ici. Ainsi, la lèvre gecko que vous pouvez voir est une bibliothèque d'animation ou des microbes mathématiques. Et pour le moment, ce que nous allons faire c'est que nous allons utiliser cela pour implémenter réellement les entités réelles. Et cela nous permettra également d'obtenir un peu plus agréable de les animer. Je recommande donc vivement de le faire également. Je veux dire aussi la conférence ici et les conférences à venir sur les entités vont toujours exiger que la bibliothèque de lèvres gecko ne contourne pas ça. Et ce n'est pas non plus une chose. Certaines personnes se disent : Oh, je ne veux pas que d'autres personnes aient à télécharger un autre mois de mars, des trucs comme ça. Ne vous inquiétez pas du tout à ce sujet. Je recommande fortement d'être ouvert à cela car pour l'utilisateur, généralement beaucoup de choses se produisent dans les packs de mod de toute façon. Et puis quelque chose comme la lèvre du gecko est probablement là d'une façon ou d'une autre. Quel que soit le cas, vous pouvez voir l'utilisation du tissu. Nous avons des choses différentes que nous devons copier. Ce que je vais faire, c'est que je l'ai déjà sur mon autre moniteur ici pour moi. Ce que je vais faire, c'est que je vais copier des choses pour que vous puissiez voir que nous devons d' abord ajouter une URL maven ici dans les référentiels. Donc, ce sera celui qui sera toujours le même. Et ensuite, nous pourrons y jeter un coup d'œil. Ce sera donc 32 qui sont en fait la même version que celle que j'ai ici aussi. Et ça va être sous dépendances. Nous allons donc mettre ça ici. La plupart des implémentations logiciels gravant gecko lib, équilibre, fichier pointillé, fabric dash 118, puis 3032. Et c'est en fait tout ce dont nous avons besoin. Vous pouvez voir que c'est pour forgé, donc nous n'avons pas besoin de cela. Et puis il y a des trucs d' initialisation ici, gros ce que nous allons être d'accord avec ça. Revenons ici et rechargeons ça. On va donc recharger ça une fois de plus, pour prendre quelques minutes, peut-être, quelque chose comme ça. Cela peut également prendre 20 secondes. Bien sûr, cela dépend beaucoup de votre connexion Internet et aussi de votre mur sur la vitesse de votre PC pendant 13 secondes. C'est plutôt sympa. Jetons donc un coup d' œil à ce que nous pouvons voir maintenant. Il y a beaucoup de choses que nous devons ajouter dans notre forfait de cours MC. Cliquez avec le bouton droit sur un nouveau package appelé entités ou entité en fait, faisons-le. Vous y allez. Et puis, au lieu de là, nous allons créer un nouveau package appelé Custom. Et puis tout d'abord, dans le package d'entités, nous allons cliquer avec le bouton droit sur la nouvelle classe Java appelée entités mod. Vous y allez. Et la classe plus d'entités va être remplie juste un instant. Nous avons tout d'abord besoin des entités réelles. Donc, dans notre package personnalisé, cliquez avec le bouton droit sur la nouvelle classe Java, et ce sera l'entité de raton laveur. Vous y allez. Et c'est ce que nous avons fait. Maintenant, je vais copier une quantité assez sensée de choses ici, ce qui va être, vous allez dire, d'accord, c'est pas mal de choses ici. Ne vous inquiétez pas à ce sujet. L'idée générale ici est que même s'il y a pas mal de choses que je veux copier et je vais copier. Tout d'abord, bien sûr, tout cela est également disponible dans le référentiel GitHub de l' individu. Je vous recommande donc vivement de devoir vérifier ça d'une façon ou d'une autre. Et puis il y a aussi beaucoup de choses que je vais essayer d'expliquer du mieux que je peux faire. Tout d'abord, cela va étendre l'entité animale ici même. Et ensuite, il va également implémenter l'IA animatable. Vous pouvez voir que c'est d'Ecolab. Nous allons survoler cela et implémenter des méthodes. Et puis nous allons dire, d' accord, après que cela soit fait, vous verrez que la méthode d'essai Create est que pour l'entité animale, nous allons garder cette valeur nulle pour le moment. En fait, nous n' allons pas jeter un coup d'œil à l'apparition d' entités tribales à l'heure actuelle. Dans les prochaines conférences, nous verrons peut-être qu' il y aura une autre conférence là-dessus à l'avenir. Mais pour le moment, rien comme prévu. Quoi qu'il en soit, il y a aussi les contrôleurs de registre et l'usine d'animation ici. Ceux-ci proviennent de l'interface animatable. Et puis on passe encore une fois au-dessus de ça. Fondamentalement, créez ensuite un constructeur correspondant super. Et voilà. Maintenant, rendons immédiatement ce constructeur public pour que nous ayons cela. Et puis on va le faire, c'est que je vais ajouter le facteur d'animation ici. Nous allons donc animer à l'usine d'animation, vous pouvez voir assez simple nouvelle usine d'information privée, usine, nouvelle usine d'animation. Et puis en passant ça, on va juste le rendre ici. Nous n'allons pas ajouter d' animations là-dedans. En fait, quoi qu'il en soit, le mettre en place ici n'est pas du tout inquiétant. Donc, tout va bien se passer. Ensuite, il y a deux autres choses que nous rencontrons définitivement. La première chose dont nous avons réellement besoin, c'est de dire que cette caméra ignorée de points pour Ostrom est vraie. Honnêtement, je ne suis pas sûr à 100% de ce que cela fait. Je sais juste que nous devrions l'appeler. C'est donc l'idée générale. Parfois, c'est le cas dans les entités, également le sujet assez complexe, donc pas de soucis là-bas. Mais quel que soit le cas, c'est la chose la plus facile. Ensuite, nous voulons ajouter quelques attributs. Nous allons copier via la méthode set attributs. Vous pouvez voir qu'ici, nous construisons essentiellement des attributs. Vous pouvez le voir au maximum, à la santé, vitesse des dégâts et à des trucs comme ça. Donc, nous sommes en train de configurer cela dans cette entité particulière, ces chiffres, bien sûr, vous pouvez les modifier comme vous le souhaitez, mais ils doivent être là. C'est très important. Ensuite, nous avons également besoin de quelques objectifs. Il s'agit de l'IA de votre marque globale. Essentiellement. Maintenant, j'ai deux choses ici qui sont fondamentalement, je peux déjà supprimer. Nous allons en avoir besoin dans un peu. allons essentiellement dans les conférences futures lorsque nous fabriquons cette entité raton laveur, également T-Mobile. C'est quelque chose pour les futures conférences. Comme je l'ai dit, nous pouvons constater qu'il y a des objectifs différents ici et qu'ils ont des priorités différentes. Plus le numéro de priorité est bas, plus l' objectif réel est élevé dans sa priorité. La priorité 0 serait la première chose qui arrive. Et ensuite, s'il y a un conflit entre l'essentiel, si deux objectifs pouvaient être exécutés que celui avec la priorité inférieure et exécutés en face parce que c'est exactement comme ça que cela fonctionne. Et c'est en fait toutes les choses différentes que nous devons ajouter. Il n'y a rien d'autre à ajouter dans cette entité elle-même. Tout le reste vient, eh bien, je veux dire un peu plus tard quand nous allons commencer par l'entité de table. Ainsi, dans les conférences futures, l'entité d'enregistrement est terminée. Allons donc dans la classe des entités mod. Et encore une fois, je vais le copier, mais je ne m'inquiète pas du tout. Parce qu'une fois de plus, tout cela est disponible pour vous et nous allons passer par là pour que nous puissions voir que nous y allons, je vais créer un nouveau type d'entité de notre entité d' enregistrement client ici ? Et puis nous allons simplement appeler registre, registre, qui enregistrera un nouveau type d'entité. On va dire que c' est ce qu'on appelle le raton laveur. Ensuite, nous allons appeler le type d'entité Fabric Builder, pour créer un nouveau type d'entité. Je vais dire que c'est un groupe de créatures juré, bien sûr, différents types de ponts, comme vous pouvez le voir. Vous pouvez aussi voir où ça dit « paisible », oui, et ça ira bien. Ensuite, créer une nouvelle entité de raton laveur vous assure que vous l'êtes, que vous avez créé votre instructeur République. Sinon, vous obtiendrez une erreur ici, bien sûr. Et les dimensions ici correspondent aux dimensions de la boîte à hanches de cette entité. Et puis on va juste appeler le bâtiment juste là et ce sera tout. Ce n'est évidemment pas tout parce que rien ne peut être aussi simple. Dans le package d'entité, nous allons cliquer avec le bouton droit sur un nouveau package appelé client. Et à l'intérieur d'ici, nous allons faire le modèle et le rendu. Ce sera deux cours, donc ce sera le modèle du raton laveur. Et nous allons aussi fabriquer le raton laveur. Si vous allez dans le rendu de raton laveur de classe Java, vous y allez. Ce sont les deux classes dont nous aurons besoin, une fois de plus, pour copier certains trucs ici. Je vais donc commencer par faire le modèle. Juste là. Cela va réellement étendre le modèle GO animé. Vous pouvez voir hors type entité raton laveur. Vous y allez. Et puis, si je survole ça, je peux voir trois méthodes que nous devons mettre en œuvre. Ce sont les trois qui obtiennent l'emplacement modal, modélisés comme l'emplacement de la texture et sont animés par emplacement. Et encore une fois, comme je l'ai dit, je vais copier l'abondance , mais rien de trop fou. Nous ne faisons que créer de nouveaux identifiants sous notre ID de modèle, puis nous mettons les différents. Ici, il s'agit de l'emplacement de la texture, animation et de l'emplacement du modèle. Nous allons les ajouter dans un instant. Tout d'abord, nous devons finir le code ou je veux finir le code, puis nous allons également passer au banc de bloc pour voir notre modèle de raton laveur personnalisé. Et nous allons d'abord voir le moteur de rendu réel. Nous allons donc dire que c'est étend le rendu d'entité géo de type raccoon entité. Et ils s'en vont. Et puis nous allons survoler ce constructeur rapide qui correspond super. Ensuite, il faut enlever le premier modèle. Le deuxième paramètre ici en fait, car ici nous voulons passer dans un nouveau modèle de raton laveur. C'est ce que nous voulons. Et puis, pour être sûr, nous allons également écraser la méthode get texture location. Je vais juste passer un passe-temps. Vous pouvez donc voir que cela pointe vers la même texture. Celle-ci indique. Cela devrait être à peu près tout ce dont nous avons besoin. Et c'est en fait ces deux classes terminées. Nous devons maintenant combiner le moteur de rendu avec les entités. Alors, comment pouvons-nous faire cela ? Eh bien, nous allons entrer dans notre cours MC, la méthode client. Et puis tout en bas où nous allons dire, nous allons dire l'entité, rendre un registre, celui-ci ici, enregistrer des entités en mode, ce raton laveur. Ensuite, nous allons dire que le deux-points du rendu d' enregistrement, deux points savaient que nous ne devrions pas avoir d'erreurs si tout a été configuré correctement. Ainsi, les entités réelles, la classe CRF et configurées correctement, l'étendue a été configurée correctement, alors nous ne devrions pas obtenir d'erreur. Et maintenant, la chose fonctionne réellement. Mais maintenant, bien sûr, nous avons toujours besoin d'une entité. D'où trouver une entité ? Eh bien, l'entité que vous obtenez d'un banc de blocs. Maintenant, nous l' avons déjà vu auparavant, mais nous allons y retourner. Et ici, vous pouvez voir le raton laveur. N'est-ce pas juste incroyable ? Je l'aime vraiment, mais cela se fait par Euro ou donc cela va bien sûr faire déposer les créanciers. Ce sera là aussi un lien. Mais j'aime vraiment ça. Vous pouvez voir qu'il s'agit essentiellement d' un modèle à lèvres gecko. Ce dont vous allez avoir besoin, c'est sous les plugins de fichiers. Non, ce n'est pas nécessaire, non ? Nous allons faire des plugins. Voici les animations de lèvres gecko util. Vous avez besoin de ce plugin ici. Sinon, ça ne fonctionnera pas. Et puis vous pouvez créer, si vous faites un nouveau, vous pouvez créer un modèle animé à lèvres gecko. Il s'agit donc d'une lèvre gecko animer le modèle. Et qu'y a-t-il de si spécial à ce sujet ? Eh bien, vous avez cet onglet animé ici, et vous pouvez voir qu'il y a différentes animations pour cela. Mais ces animations dans ce cas sont déjà faites, mais pas de soucis bien sûr. Nous les verrons dans une conférence ultérieure quand nous parcourrons les animations pour le moment, ce que nous voulons seulement c'est que nous voulions seulement exporter le modèle gecko, c'est que ce n'est pas le cas. vous apparaissent au allez à convertir, convertir le projet, fait, allez à convertir, convertir le projet, puis assurez-vous choisir le modèle animé gecko live. Si cela apparaît ici, vous devriez être en mesure de le faire correctement. Pour que je puisse économiser, je peux simplement dire exporter un modèle glycolytique. Et ensuite, nous allons essentiellement l'exporter. Maintenant, je vais le copier aussi. On va donc y retourner. Le modèle est donc un fichier géo, Geo Dot JSON, et qui doit passer sous votre dossier de ressources. Et puis nous allons créer un nouveau dossier ici, le répertoire GO, puis il y va. Donc, nous allons juste copier ça. Vous y allez. Et vous pouvez voir que c'est la géométrie du raton laveur. Donc, parfois, j'ai eu une faute de frappe là-dedans, mais pas de soucis du tout. Cela devrait encore fonctionner parce que ce qui vraiment recherché, c'est ce nom ici. Et tant que ce nom fonctionne avec le nom donné ici, vous pouvez voir la géode de chien de raton laveur GO adjacente. C'est ça, celui-ci pointe vers le milieu. Nous avons toujours besoin de l'emplacement de la texture qui sera sous les textures, bien sûr. Ensuite, sous un nouveau dossier appelé entité. Au lieu de là, nous allons créer un nouveau dossier appelé raton laveur. Alors ce sera le point de raton laveur PNG. Nous allons donc copier ça aussi. Vous y allez. Et maintenant, tout est mis en place. La durée de l'animation que nous pouvons ignorer pour le moment. Comme je l'ai dit, nous allons franchir cette étape à la fois, et c'est à peu près tout ce que nous devions faire pour ajouter le raton laveur réel. Bien sûr, comme je l'ai dit, à l'intérieur du banc de bloc, il y aura beaucoup de choses que vous devrez faire ici. Ce fichier de banc de blocs sera également disponible. Donc, pas de soucis là-bas. Vous pouvez essentiellement prendre ceci et l'essayer , puis voir ce que vous pouvez utiliser avec cela. Sinon, il est très important que nous utilisions essentiellement le gecko en direct à partir de ce moment. Et dans l'ensemble des autres choses devraient être faites ici, nous avons sélectionné dans cette rivière le raton laveur et le rendu. Et juste pour passer en revue la question pour une entité personnalisée, ce dont vous aurez besoin, c'est que vous aurez besoin de la classe d'entités. Vous n'avez pas besoin d'un moteur de rendu ni de modèle. Maintenant, c'est la même chose si vous n'utilisez pas Ecolab. Cependant, l'extension ici, bien sûr, ce sera différent car ce sera un modèle GO animé ici pour gecko lip. Et ce ne sera pas ça pour une entité normale ou vanillée, n'est-ce pas ? Il y a donc une autre chose que nous devons faire c'est de définir les attributs. Maintenant, nous allons le faire dans nos registres, ici, les registres de mode, nous allons juste faire un vide statique privé de nouvelle classe. Et ce sera les attributs de registre, mais cela va être une entité de refroidissement de l'atelier, appelons-le en fait un registre d'attributs par défaut de fabric . Il y a eux, ils enregistrent des entités mod, ce raton laveur. Et ensuite, nous allons juste appeler les attributs du jeu de données de l'entité raton laveur qu'ils ont il y a. Et cela devrait être que l'erreur doit être ici ou que l' avertissement ici devrait être correct. Et puis, bien sûr, nous allons appeler cela ici, enregistrer les attributs qu'ils sont un objectif. Et puis une autre chose qui est, bien sûr, très importante. Tout ce qui sera considéré sera les œufs de frai. On va donc avoir besoin d'un œuf de frai pour le raton laveur. Allons dans notre classe d'éléments de mode et ajoutons cela également. On va juste copier ça. Ce sera l'œuf de soulignement du raton laveur . Maintenant, cela va être appelé l'œuf de soulignement du raton laveur. Il va s'agir d'un nouvel article ici. Le premier paramètre va être les types d' entités mod qui raton laveur et parmi vont avoir une couleur primaire. Je vais donc les copier parce que ce sont essentiellement les couleurs du sperme et de l' ovule. Et je me suis déjà installé pour que nous n'ayons pas besoin de l'ajouter à nouveau. Maintenant, ce que nous devons faire, et c'est très étrange, mais je veux dire, c'est ce que c'est. Nous devons en fait ajouter un fichier de spawn AG Jason dans le fichier adjacent du modèle d'élément. Donc, dans le dossier de l'élément modèles et copiez-le. Maintenant, cela va être très, très simple. Vous pouvez voir qu'il a juste le parent de l'œuf de frai du modèle d'article, puis ils répondent à la coloration. Il y a aussi l'ajout de la traduction parce que nous avons également fait cela. C'est un article ici. Mettons-le ici. Vous y allez. Ainsi, le raton laveur a frayé l' œuf également ajouté avec succès et il devrait immédiatement fonctionner. Je veux dire, c'est à peu près à quel point cela devrait être facile. Et maintenant, je suis assez certain que tout a été ajouté ici. Nous pouvons voir qu'il y a quelques étapes ici. Cependant, une fois que vous les examinés encore et encore, cela est assez raisonnable quant aux objectifs ici. Je tiens à dire qu'il y a beaucoup d'objectifs. Donc, si le bouton central de la souris clique sur le but ici, vous pouvez voir la classe de buts. Et si j'appuie sur ce bouton puis sur Control H, vous pouvez voir tous les différents objectifs qui sont dans la vanille et je peux même les développer. Il y a encore plus d'objectifs ici. Vous pouvez l'un ou l'autre, vous pouvez y jeter un coup d'œil. Vous pouvez même atteindre vos propres objectifs. En théorie, c'est très compliqué. Nous n'allons pas en parler de sitôt. Les objectifs sont très, très compliqués et la meilleure façon d'y jeter un coup d'œil est tout d' abord les objectifs vanille. Ensuite, vous pouvez toujours jeter un coup d'œil à certains référentiels GitHub d' autres mods où il peut y avoir entités avec des objectifs intéressants que vous avez vus. Et vous pouvez ensuite jeter un coup d'œil à la façon dont ils sont réalisés et tirer des leçons du fait que les objectifs sont très compliqués. C'est de l'IA, c'est ce que c'est. Mais pour le moment, c'est tout ce dont nous avons besoin. Donc, je suppose que nous allons voir si cela fonctionne ou si des réponses en microphysique voient que le frai du raton laveur a été ajouté. Voyons maintenant si nous pouvons l'engendrer. Et le voilà, le raton laveur fraie en fait et ils vont se promener, bien sûr, en ce moment, pas vraiment animés du tout. Et ils en ont également quelques-uns. Mais s'ils ont réellement survécu comme deux coups, trois coups avec une autre source de lumière. C'est donc assez fou parce qu'ils aident, bien sûr, ont été fixés assez haut. Mais c'est quelque chose que l' on peut toujours changer. C'est quelque chose qui est toujours ouvert à l'expérimentation ici, mais vous pouvez voir les véritables frayères de l'animal. C'est vraiment cool. Et bien, je veux dire, voyons où l'avenir des mène avec eux. Et jetons un coup d'œil à la classe d'entités car il y a d'autres choses que nous pouvons ajouter, qui pourraient vous intéresser, où nous nous retrouvons dans le et juste pour que vous l'ayez vu parce que ce sera probablement quelque chose que les gens vont demander. Parce que, je veux dire, bien sûr, vous pouvez toujours aller dans la classe des animaux ici et jeter un coup d'œil à toutes les méthodes que vous pourriez ignorer. Idem en passant, avec l'entité passive et l'entité consciente du chemin, etc. Nous pouvons voir que les entités remontent jusqu'à l'entité vivante, dont le reste provient essentiellement de la hiérarchie. Je recommande vivement également de les vérifier. Il y a tellement de choses à gagner en regardant les entités vanillées. Vous pouvez toujours trouver des choses intéressantes comme elles fonctionnent. Mais une chose qui peut également être posée, comment ajouter des sons personnalisés à mon entité ? Et pour cela, nous avons quatre méthodes différentes ici où je vais copier le son ambiant, le son hertz vers le son sourd et le son pas. Ces quatre méthodes, vous pouvez simplement renvoyer un événement sonore. Cela inclut bien sûr les événements sonores personnalisés que nous avons déjà vus lors de conférences précédentes. Cela fonctionnerait donc également. Je le recommande vivement, vous pouvez le faire et ensuite il va jouer ces sons dans des circonstances spécifiques. Je voulais vraiment le montrer aussi. C'est peut-être quelque chose qui vous intéresse. Sinon, tous les autres recommandent vivement de jeter un coup d'œil à certains exemples de vanille. Et ensuite, en gros, en regardant comment nous pouvons faire lors des conférences à venir. Parce que, comme je l'ai dit, nous allons faire quelques conférences différentes sur le fonctionnement des entités réelles. Nous allons donc configurer les animations réelles. La prochaine fois. Nous allons jeter un coup d'œil à une partie de la variance, puis à d'autres choses aussi, ce qui est vraiment intéressant. Je recommande donc de les vérifier également. Mais pour l'instant, ce sera le cas pour cette conférence ici. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau si vous le faisiez, j'apprécierais beaucoup un commentaire de votre part. Sinon, je vous verrai lors de la prochaine conférence. 105. (Sujets supplémentaires) Ajouter des entités avec Geckolib et BlockBench: Ou je me réjouis de revenir au cours de tissus pour 118 ans. Dans cette conférence, nous allons ajouter des animations personnalisées à notre entité personnalisée. Pour ça. Tout d'abord, on va retourner dans un banc cassé. Et comme bien sûr, lors de la dernière conférence, nous avons ajouté l'entité raton laveur. Ce modèle de banc de blocs est disponible en téléchargement. Et quand vous avez cela, ce qui est très important, c'est qu'il s'agisse d'un modèle à lèvres gecko ici. S'il n'est pas correctement formaté, vous pouvez convertir le projet en modèle animé de lèvres gecko. Et ensuite, vous devriez avoir cet onglet Animate ici. Et dans l'onglet Animate, vous pouvez voir si vous avez déjà travaillé avec quelque chose comme un programme d'édition où vous avez certaines clés, vos images-clés que vous pouvez définir. Il s'agit également d'une animation, par exemple, dans l'unité, quelque chose comme ça est fondamentalement la même ici. Et ce que nous pouvons faire, c'est que nous pouvons cliquer sur l'animation de l'île. Par exemple, je peux cliquer sur la queue et vous pouvez voir que j'ai défini quelque chose dans la rotation ici. Ce que je peux faire, c'est que je peux simplement jouer l'animation. Vous pouvez voir que au-dessus de la tête et le corps remontent et descendent lentement. Et la queue ici se déplace un peu d' avant en arrière. Ce que vous pouvez voir si je clique sur cette image-clé que nous pouvons même mettre dans certaines méthodes appels de fonction ici, vous pouvez voir Query anime time math sin, c'est juste l'onde sinusoïdale que nous sommes puis insérer le temps réel de l'animation dans. Et c'est juste, bien le fait dans l'axe Y. Il va donc faire pivoter ça dans l'axe Y. C'est l'idée générale ici. Vous pouvez y mettre beaucoup de choses différentes. Vous pouvez également, bien sûr, placer les images-clés manuellement. Vous pouvez donc faire une image-clé, faire quelque chose à ce sujet, puis avancer l'heure, créer une autre image-clé, faire une autre image-clé, faire une autre image-clé et ainsi de suite. Et bien sûr, vous pouvez le faire manuellement sur ce que j'ai fait comme je l'ai dit, ici dans le corps. J'ai fait l'onde sinusoïdale dans la tête. J'ai aussi fait une onde sinusoïdale de haut en bas. Et puis, pour la queue, j'ai aussi fait une onde sinusoïdale. Vous pouvez donc voir que celle-ci est sinusoïdale, puis la position ici est également dans une onde sinusoïdale juste un peu de valeurs différentes ou différentes ici, qu'elle a l'air un peu différente, mais Dans l'ensemble, c'est vraiment joli. C'est donc très simple, mais il suffit de donner l'impression d'une vie qu'ils sont au lieu de simplement avoir une statique. Et nous pouvons également jeter un coup d'œil à l'animation de la marche. Vous pouvez voir là où vous allez, l'animation de la marche. Et puis nous pouvons également jeter un coup d' œil à l'animation assise de celle-ci est en fait complètement statique dans ce cas, y serait également quelque chose d'ajouté. Mais pour le moment, je suis très content de ce que c'est. C'est aussi juste un exemple ici. Pas de soucis là-bas. Que faisons-nous de cela ? Avec toutes ces animations ? Alors, comment sauvegarder ces animations pendant que nous passons à l'animation ? Ensuite, nous allons enregistrer toutes les animations. Tout d'abord, alors vous pouvez voir où je veux sauvegarder ceci dans l'époque Tracer file raccoon animation, cette trace. Je vais donc sauver ça. Et ensuite, nous pouvons utiliser ce fichier JSON pour notre projet. Nous allons revenir à un tissu. Et si nous nous en souvenons dans le modèle, nous devons spécifier l' emplacement des animations. Cela va repartir une fois de plus, dossier de cours MC des ressources ici. Et puis, ici, nous allons créer un nouveau répertoire appelé animations. Et puis à l'intérieur de là, nous allons mettre l'animation du raton laveur, ce fichier adjacent, la mise en garde est ici. Et puis je dois changer rapidement le nom de raton laveur CR2. C'est quelque chose qui devrait être réparé pour vous. C'est juste qu'il y avait une faute de frappe là-dedans, puis on devrait être en fer. Maintenant, nous avons ces animations que nous sommes essentiellement faites ici. Maintenant, comment allons-nous les utiliser ? Comment peuvent-ils être utilisés ? Eh bien, ils peuvent être utilisés dans la classe d'entités. Nous nous souvenons donc que nous avons ajouté les contrôleurs de registre et l'usine ici. Et maintenant, nous devons ajouter deux autres choses là-dedans. Donc, tout d'abord, nous allons ajouter le prédicat. Le prédicat est une méthode, donc je vais juste l' ajouter en bas ici. Nous allons juste faire quelque chose comme de l'animation. Ce sera les animations où vous pouvez voir que c'est le nom de l'animation qui va essentiellement utiliser ce nom ici, doit correspondre à ces noms, n'est-ce pas ? Vous pouvez donc voir que c' est l' animation assise que nous n'allons pas utiliser dans ce tutoriel orange plutôt que dans cette conférence. Nous allons utiliser cela lors de la conférence ultérieure. Et puis cette animation de l'animation de marche ici est en fait quelque chose que nous utilisons ici. Et puis l' animation inactive ici, ces noms doivent correspondre très importants. Et ensuite, la question est de savoir quand cela se produit-il ? Eh bien, vous pouvez voir que l'animation de marche se produit lorsque l'événement est en mouvement, vous pouvez en fait jeter un coup d'œil à l'événement d'animation et voir quelques exemples ici. Habituellement, il n' y a pas beaucoup d'exemples. D'autres choses que nous verrons, surtout avec l'événement de réglage. Nous verrons dans un petit peu comment nous pourrons , dans une conférence future, comment mettre en œuvre cela lorsque nous avons également l' animation assise. Mais pour le moment, nous voulons cela et ce que nous voulons ajouter à l' événement Controllers enregistré suit. Encore une fois, bien sûr, tout cela est disponible dans le référentiel GitHub et dans les particuliers. Prenons en fait celui-là. Il s'agit donc de données d'animation chez Animation Controller. Nous allons créer un nouveau contrôleur d'animation juste avec une manette d'animation ici. Et ensuite, nous allons simplement passer dans ce kit de produits en points ou dans ce produit de côlon. Et ce produit est demandé ici, et maintenant ces animations devraient être, fondamentalement, fonctionnelles déjà. C'est en fait tout ce dont nous avons besoin pour ces animations particulières ici, car nous avons déjà tout mis en place avec le modèle ici. Cela pointe vers le fichier JSON réel. Nous l'avons mis à jour et exporté le tout depuis le banc de blocs ici. Pire, si vous voulez avoir des animations folles et cool, il y a toujours, il y a beaucoup de choses que vous pouvez faire à ce sujet. Mais comme je l'ai dit, dans l'ensemble, il ne s'agit que de l'essayer. Être ouvert à l'expérimentation une fois de plus ici, n'est-ce pas ? Je veux dire, nous n'allons pas passer par toutes les choses et vous allez devoir essayer certaines choses par vous-même. Mais dans l'ensemble, c'est à peu près comme ça que vous faites. Oui. Voyons si ça marche. Ou ce que nous avons trouvé était de retour à Minecraft. Et comme vous pouvez le constater, les animations réelles ont été ajoutées avec succès au jeu. Vous pouvez donc voir que vous le savez, l'animation de marche aussi. Donc, ces deux fonctionnent d'ailleurs, les sons fonctionnent également à partir de la dernière conférence que nous pouvons entendre. Ceux-ci fonctionnent également. En fait, prenons le son sourd que je pense être d'un cochon. Entendons cela aussi. Oui. C'est un peu bizarre, mais ça va. Et puis les sons ambiants réels ou du dauphin, je veux dire, ça ne correspond pas tout à fait, mais c'est plutôt drôle qui fonctionne réellement. Mais surtout, les animations fonctionnent, comme vous pouvez le constater, c'est vraiment cool et assez facile à mettre en œuvre tout ce qui est considéré, je peux vous dire ce qui est certainement plus facile de implémentez certaines de ces animations personnalisées. Dans ce cas, plutôt que les faire avec le modèle vanille, c'est beaucoup plus difficile, je peux vous le dire, mais plutôt cool. Néanmoins. C'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. 106. (Sujets supplémentaires): Ou je me réjouis de revenir au cours de tissus pour 118 ans. Et dans cette conférence, nous allons ajouter mob personnalisée, de la variance à Minecraft. Cela signifie donc que vous avez probablement tous vu l'entité cheval, la foule de chevaux dans Minecraft, et elle peut avoir couleurs différentes ou des codes différents. Et c'est exactement ce que nous allons faire pour le raton laveur. Maintenant, c'est étonnamment très simple à faire. Maintenant, il y a plusieurs endroits où nous devons ajouter des choses. Mais surtout dans la classe d'entité et aussi dans le rendu, si je ne me trompe pas, oui, c'est dans le rendu et dans le modèle, il y a beaucoup d'endroits où nous devons changer. certaines choses, mais pas de soucis. C'est en fait une fois que vous comprenez ce que nous faisons ici, c'est assez simple. Mais la première chose que nous allons faire est dans le paquet d'entités, nous allons cliquer avec le bouton droit sur un nouveau paquet appelé variance. Alors, au lieu de là, nous allons créer une nouvelle classe Java. Nous allons sélectionner Enum, et ce sera le raton laveur une variante. Je vais maintenant copier le contenu de ce document. Cependant, il y aura essentiellement la même chose à chaque fois que vous créez une nouvelle variante. C'est à ça que ça ressemble. La seule chose que vous devez changer, c'est essentiellement les références réelles ici au nom de cette classe. Sinon, c'est très bien. Et puis ici, comme tout autre enum que nous avons vu précédemment, vous énumérez toutes les différentes énums ici, puis vous les rappelez. Je veux dire, ici c'est probablement comme vert et cette pièce d'identité qui est probablement un peu plus sensée ici dans ce cas, quel que soit le cas. Nous allons donc avoir un invariant par défaut, une variante sombre et une variante rouge. Maintenant, comment les choisir ? Comment savoir ce qui va se passer ici ? Eh bien, ce qui va se passer, c'est que dans la classe de rendu du raton laveur ici, nous allons ajouter une carte. Encore une fois, je vais vraiment copier ça. Cependant, c'est très simple une fois que vous verrez à quoi ça ressemble, puis ça semble peut-être un peu fou et au premier signe, mais alors vous allez dire, OK, c'est En fait, pas trop fou. La seule chose que nous faisons ici, c'est nous disons bivariant de l'emplacement, une nouvelle carte allant de la variante du raton laveur à l'identificateur. qui signifie simplement que si l' on passe dans cette variante, le raton laveur par défaut variait ici. Nous allons juste pointer vers cette texture. Si c'est la variante sombre, nous allons pointer vers cette texture. Si c'est la variante rouge, nous allons pointer vers cette texture. C'est littéralement tout ce qu'il y a à faire. Si vous en avez plusieurs, il vous suffit d'en ajouter d'autres ici, sortie mappée, puis avec une sortie mappée, puis avec une nouvelle variante, etc. C'est ça. L' emplacement actuel de la texture ici et maintenant doit être modifié. Nous devons donc dire emplacement bivariant dot get. Maintenant, la question est, eh bien, comment obtenir la variance ? Eh bien, nous devons intégrer la variante dans l'entité. C'est ce que nous allons faire ensuite. Nous allons quitter cette zone pour le moment, et nous allons changer certaines choses dans l'entité. C'est un peu plus compliqué, disons, où il y a plus de parties à cela. Cependant, je le suis encore une fois, je suis sûr que ça ira bien. Je vais copier toutes les différentes méthodes maintenant , ce sera un bon nombre d'entre elles, mais supportons avec moi et passons par là. Je vais ensuite expliquer toutes les différentes méthodes que nous allons avoir une erreur ici, c' est-à-dire les flèches de données. Nous avons donc besoin de quelque chose qui s' appelle des données de type entier. Et je vais en fait ajouter cela en haut ici, car généralement j'aime que les données d'entraînement réelles ici soient haut et qu' aucune autre erreur dans la classe d'entités ne devrait être présente. Ensuite, nous allons expliquer ce que se passe le FREC ici même. Mais qu'avons-nous ? Nous avons d'abord ce tracker de données, c' est intéressant, n'est-ce pas ? Les données de suivi que vous pouvez voir ici sont donc un moyen de stocker des données dans une entité qui fait l'objet d'un suivi à la fois via le client et le serveur. Il est bien sûr très important que ce soit pareil. Et nous pouvons voir par exemple ici, si je clique sur l'entité animale, appuyez sur Contrôle H et, par exemple, vais dans l'entité spatiale OR. Nous pouvons voir qu'il y a des données pratiques ici. Vous pouvez voir qu'il y a des drapeaux. Il y a les données de l'UUID propriétaire. Et je pense que nous pouvons même aller plus loin dans l'entité peut-être dans le cheval. Vous y allez. Nous avons également une variante d' identification désossée d'armure ici. Et c'est à peu près exactement le même monde qui fonctionne. C'est donc à peu près là que j'ai appris comment cela fonctionne de la part de l'entité cheval. Donc, encore une fois, ça va juste te montrer encore une fois. Tout est également dans les classes de vanille. Vous pouvez les jeter un coup d'œil et vous pouvez y trouver presque n'importe quoi . Il s'agit de l'outil West et la meilleure ressource dont vous disposez. Qu'est-ce que nous avons d'autre dans la classe où nous l'utilisons, non ? Nous allons donc utiliser ça. Vous pouvez tout d'abord voir ici dans le tracker de données d'initialisation, c'est extrêmement important. Vous devez ajouter cette année, sinon cela ne fonctionnera pas. Nous devons initialiser ces données. Le suivi de ce type réel de données. Ensuite, nous pouvons voir que nous avons une méthode de variante définie qui n'est utilisée que dans cette classe particulière et qui n'est utilisée que dans la méthode initialisée. Alors que la méthode initialisée, eh bien, c'est ce qu'on appelle quand l'une de ces entités apparaît et surtout lorsqu'il s'agit de liaisons, par exemple, par le biais d'un frai. Ce qu'il est censé répondre à l'œuf, ce que nous voulons bien sûr, c'est que nous voulons une variante aléatoire ici. Nous allons définir cette variante et tout ira bien. Voyons ce qui se passe ici. Ensuite, nous avons également un droit et une méthode de lecture pour les données NVT. Cela devrait être assez explicite. Nous sauvegardons juste la variante ici, puis nous la lisons ici. Presque tout ce que vous devez savoir, l'envoyer une fois de plus, également assez explicite. C'est la seule chose bizarre ici avec cette fin. Et dans le 255, c'est juste quelque chose qui est nécessaire. Je n'entrerai pas trop dans les détails. C'est juste quelques manigances Java avec l'ID. Parce que dans la variante ici, vous pouvez voir qu'elle est en quelque sorte sauvegardée de cette manière. Donc, nous allons simplement garder ça comme ça et être d'accord avec ça. Et nous allons juste dire, d' accord, c'est ce que c'est. C'est ainsi que cela doit être fait, mais tout fonctionne bien. C'est à peu près tout. Ce sont les différentes méthodes. Et maintenant, bien sûr, ce que nous pouvons faire ici, c'est que nous pouvons dire entité et T. Vous y allez, n'est-ce pas ? Entity dot obtient une covariante. Et ensuite, tu y vas. Et ensuite, nous devons faire la même chose dans le modèle ici, où nous avons bien sûr aussi la texture. Mais nous pouvons littéralement prendre la même chose, celle-ci. Et nous devons juste dire ici puis le rendu du raton laveur, c'est ce que nous voulons prendre cet emplacement bivariant, mais obtenir une entité, obtenir une variance. Et c'est tout. Bien sûr, nous avons toujours besoin de la texture, donc n'oublions pas de copier les deux textures. Sinon, ce serait certainement un peu un oubli. Allons donc au raton laveur, voilà. Et puis nous avons le raton laveur noir et le raton laveur rouge aussi. Vous y allez. Et c'est à peu près tout ce dont nous avons besoin. Veillons simplement à ce que tout cela soit également écrit correctement. Le raton laveur foncé devrait être fin, ratons laveurs rouges aussi bien. Cela devrait fonctionner. Cela devrait fonctionner et être fonctionnel, donc c'est plutôt bien. Et c'est en fait à quel point il est facile d'ajouter une certaine variance. Maintenant, encore une fois, bien sûr, il y a beaucoup de petites choses différentes. Disons que la carte ici ne devrait pas être trop folle. Cela ne devrait pas être trop fou. Cela ne devrait pas être trop fou. Il en va de même pour l'entité réelle. La quantité de méthodes n' est pas vraiment si importante quand on y pense, ce n' est pas beaucoup de méthodes. C'est juste beaucoup de choses à enrouler la tête quand on y pense. Ces données, variante d'identification de données, d'accord, il y a un peu bizarre, mais dans l'ensemble, ça ne devrait pas être trop fou. Vous savez, à ce stade, j' espère que la plupart d'entre vous ont suffisamment de connaissances en Java pour que vous puissiez simplement passer à travers cela et comprendre cela d'un point de vue Java. Et bien sûr, comme je l'ai dit, les cours de vanille offrent tous les exemples différents. Il y a des choses incroyables et vraiment bonnes et vous pouvez aussi travailler à travers eux. Mais pour le moment, parce que nous avons tout ajouté , voyons si cela fonctionne. Ou les cellules graisseuses à Minecraft. Faisons donc apparaître des ratons laveurs, et voilà. Nous avons déjà toutes les autres variances ici, qui fraient joyeusement. Ici, à partir de l'œuf de frai, vous pouvez le voir, tout fonctionne parfaitement bien. Et c'est juste que c'est juste incroyable, n'est-ce pas ? Donc, dans ce cas, bien sûr, la variante est un peu différente de texture de mur en termes de coloration. Mais je veux dire, c'est toujours vraiment cool, vraiment génial. Et je veux dire, ça fonctionne très, très bien. Et je veux dire, c'est dans l'ensemble, je pense et j'espère que vous êtes d'accord avec cela est assez simple et pas trop difficile à faire. C'est vraiment cool, non ? Comme toujours, bien sûr, tout le code est disponible dans le référentiel GitHub en individuel. Mais sinon, ce serait le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. 107. (Sujets supplémentaires): Ou je me réjouis de revenir au cours de tissus pour 118 ans. Dans cette conférence, nous allons ajouter la fonctionnalité de fonctionnalité à notre entité de raton laveur. Et pour cela, ce que nous allons faire, c'est d'abord et avant tout, nous allons changer la superclasse actuelle ici en une entité réalisable et réalisable. Entité réalisable. Ensuite, nous avons juste besoin de copier ceci ici dans le type d'entité. Et ensuite, nous allons faire la même chose pour les attributs ici. Et ce que nous allons faire, c'est que nous allons encore ajouter quelques choses maintenant, je vais les copier une fois de plus, mais pas de soucis. Tout cela est également disponible dans le référentiel GitHub en individuel. Et nous ne devrions pas avoir d' erreurs théoriques. Cela inclura, une fois de plus, à certains tracés une donnée ici, ce type, cette fois de type booléen. Comme vous pouvez le constater, un booléen. C'est le booléen assis. C'est très important car cela va sauver si ce raton laveur, cette entité est assise ou non . Maintenant, il y a déjà un réglage. Disons, que diriez-vous d'une variable assise dans l'entité de table, je crois que cela devrait être ici, juste là où vous allez. séance booléenne privée. Cependant, c'est ici que je ne crois que sur le serveur. qui signifie que ce genre de chose intéressante parce que ce n' est que sur le serveur que si nous ajoutons maintenant ce qui suit, une animation pour s'asseoir dans celui-ci ici. Nous allons donc ajouter cela également. Vous pouvez voir si c'est assis, donc c'est mon booléen personnalisé ici, qui prend le tracker de données assis. Si c'est vieux, cela ne fonctionne pas parce que c'est ici même, tout ce que fait le laboratoire de gecko est réservé au client. Les animations se produiront sur le client. Par conséquent, la variable assise doit être d'une manière ou d'une autre. C'est pourquoi nous devons ajouter une variable assise personnalisée. C'est pourquoi celui-ci existe ici. Et c'est pourquoi celui-ci existe. Et cela appelle en fait ces ensembles assis. Celle-ci est en fait appelée la super méthode ici, qui la définit comme égale à elle, mais nous ne pouvons pas l'utiliser. La méthode normale est de rester dans ce cas, parce que cela ne fonctionne tout simplement pas. C'est aussi très important. Veuillez noter que nous devons ajouter une variable assise au tracker de données ici. C'est extrêmement important. S'il vous plaît, n'oubliez pas cela, sinon votre jeu se bloquera lorsque vous entrerez dans notre monde. C'est très important en ce moment pour probablement la grande méthode ici, et c'est la méthode mobile Interact. Nous pouvons donc voir que nous avons un ensemble, une méthode est assise. Le tableau de bord est nécessaire pour l'équipe réelle. C'est donc juste pour que la chose réelle de l'équipe centrale des entités puisse ensuite être lixiviée. Nous allons juste mettre cela à faux parce que cela a été un peu un problème avec gecko live et en fait de mettre la piste sur des entités qui ne fonctionnent pas tout à fait. Quoi qu'il en soit, ils interagissent avec la méthode de la mafia. Qu'est-ce que c'est ? Bien sûr, c'est du code lorsque vous cliquez avec le bouton droit sur une foule. Maintenant, lorsque nous cliquons avec le bouton droit sur cette mafia, ce que nous voulons, bien sûr, c'est que nous voulons atteindre. Peut-être. Ce que j'ai ici, par exemple, c'est l'objet à apprivoiser. Je viens de créer un peu de variable ici. Je viens de mettre ça sur une pomme. Donc, si vous voulez changer cela, vous pouvez simplement le modifier ici. Et puis nous pouvons voir, eh bien, si l'article est réellement l'élément apprivoisé avec lequel nous cliquons avec le bouton droit de la souris. Et c'est le cas, l' entité réelle n'est pas encore apprivoisée, alors ce que nous allons faire tant que nous serons sur le serveur réel. Cela se produit donc sur le serveur. Alors, ce que nous allons faire, c'est Hey, il suffit de régler le propriétaire sur le joueur sur lequel on clique avec le bouton droit de la souris. Nous allons faire des calculs de base. Nous allons envoyer le statut de l'entité ici, puis nous le définirons immédiatement pour définir le, fois que nous aurons réellement apprivoisé une entité, nous allons la configurer pour qu'elle soit assise. Intéressant. Maintenant, s'il est déjà apprivoisé, étions sur le serveur et que la main principale est alors droite et que nous cliquons dessus avec le bouton droit, alors nous allons simplement basculer ce paramètre. Il est très important que nous ayons cette main ici aussi parce que c'est un problème réel. C'est froid pour les deux mains. C'est pourquoi peut-être que si vous n'avez pas cela, cela ne fonctionnera pas. J'ai déjà vu cette erreur ou cette erreur plusieurs fois auparavant. Maintenant, si nous devions exécuter ceci comme ça, nous aurions en fait un peu de problème et c'est que l'entité réelle ne siège pas. Maintenant, pourquoi est-ce le cas ? Eh bien, parce que nous devons en fait ajouter deux autres objectifs ici. Et ce sera le numéro un, l'objectif fixé avec la priorité, il est extrêmement important que cet objectif soit avant tout les autres objectifs merveilleux. Et ils regardent autour des objectifs et tout ça. Parce que, comme vous pouvez le constater, où il est important qu'ils soient assis, c'est plus élevé que le but de merveille. Sinon, ce qui se passera, c'est que le raton laveur va s'asseoir et ensuite il va s'interroger, puis il va s' asseoir à nouveau et ensuite il va se demander, et cela peut se refaire. C'est pourquoi la priorité ici doit être, eh bien, je veux dire plus faible dans ce cas, mais une droite plus élevée ? Il faut donc qu'il s'agisse d'un nombre inférieur ici dans ce cas. Et puis le propriétaire du camion attaque ou un but. C'est juste que je ne pense même pas que nous ayons nécessairement besoin de cela parce que je ne pense pas que le raton laveur attaquerait une attaque qui détecte le propriétaire. Mais je n'en suis pas sûr parce qu' une partie de cela a également été prise au loup. Bien sûr, nous pouvons également y jeter un coup d'œil. Il suffit de chercher un loup avec une entité. Vous y allez. Et ensuite, nous pouvons jeter un coup d'œil à tous les objectifs ici, vous pouvez voir que c'est en fait assez étendu, comme beaucoup de choses différentes. Principalement l'attaquant tombera le but du propriétaire. Et vous pouvez voir encore une fois, l'objectif fixé est tout en haut ici. La priorité deux, très, très importante que ce soit le cas. Sinon, vous risquez rencontrer certains problèmes. Gardez cela à l'esprit. C'est extrêmement important. Maintenant, en dehors de cela, la capacité se fait de cette façon. Est-ce une entité imposable et a ensuite la possibilité de l' apprivoiser avec exactement la variable assise ici aussi. Maintenant, la variable assise, si vous avez quelque chose que vous ne voulez pas vraiment qu'il soit assis, très bien, alors vous n'avez pas besoin de l'ajouter. Vous n'avez pas besoin d' ajouter celui qui est assis. Vous n'avez pas besoin d'ajouter cela, il suffit de la méthode d'interaction mob. C'est presque tout ce qu'il y a à faire. Mais pour l'instant, je dirais que parce que nous avons tout ajouté pour l'achèvement, voyons si cela fonctionne ou si le conseil est de retour à Minecraft. Une chose la plus importante ici est également de dire, passant, lorsque vous l'utilisez dans le tissu, gros, chaque fois que vous allez dans le monde, vous avez un autre joueur, mais c'est très important ou un nom différent. Il est donc très important que lorsque vous avez ceci, parfois, il soit très difficile de tester cela. Quel est le cas ? Essayons de cliquer avec le bouton droit de la souris. Et voilà, meilleurs amis pour toujours. Maintenant, comme vous pouvez le voir, il est bien assis. Donc, c'est généralement assis ce que je fais, c'est juste l'encadrer dans quelques pâtés de maisons juste ici juste pour s'assurer qu'il dit vraiment, ça ne dit pas rester assis que c'est l'entité réelle. Restez là, mais ça a l'air vraiment bien, non ? Je peux aussi m' éloigner un peu. Il devrait rester là. Et encore une fois, je peux cliquer dessus avec le bouton droit de la souris et maintenant il n'est plus assis. Maintenant, l'animation a changé, et maintenant elle devrait aussi commencer bouger seule ou moi, je n'ai pas vraiment mis dans un creux, suivre l'objectif du propriétaire, donc il devrait simplement le faire seul. Vous y allez. Maintenant, il effectue un zoom sur un bouton droit de la souris à nouveau , puis il est à nouveau assis et ça devrait fonctionner totalement bien. Mais c'est en fait à quel point il est facile d' ajouter la capacité de l'équipe. C'est vraiment cool. Vous pouvez voir que c'est facile. Et je veux dire, c'est , tu sais, c'est vraiment cool. Je veux dire, c'est aussi avec les animations des clients, n'est-ce pas ? Vous pouvez créer une animation assise personnalisée. Vous pouvez faire toutes sortes de choses. Je veux dire, c'est tout simplement incroyable. C'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. 108. (Sujets supplémentaires): Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter une entité à la fois table et inscriptible. C'est une chose très intéressante car, bien sûr, elle ressemble beaucoup au cheval une fois de plus. Mais dans ce cas, nous voulons réellement une entité inscriptible. Et je dirais que, vous savez, quelques choses que vous devez garder à l'esprit. Et pour ça, on va essentiellement faire du tigre. Maintenant, c'est vraiment cool aussi. Commençons donc et comment pourrions-nous y arriver ? Eh bien, tout d'abord, bien sûr, on en ferait ferait la classe des entités tigres ici. Alors je vais, encore une fois, bien sûr, comme si souvent copier un tas de choses ici. Maintenant, pour le vrai tigre, je vais copier à peu près toute la classe. Maintenant, l'important est que, bien sûr, tout ce qui est disponible ici, comme toujours dans le référentiel GitHub, dans l'ajustement individuel également. Parce que c'est aussi un peu supporté par moi ici car je copie essentiellement sur tout, y compris les choses qui s'étendent. Nous allons donc voir que vous pouvez voir 270 lignes , puis je crois que j' ai besoin d'un crochet de fermeture. Vous y allez. Et maintenant, tout devrait fonctionner ici, donc nous ne devrions pas avoir d'erreurs. Maintenant, la première chose qu'il y a réellement l'ID de type, en fait, nous n'avons pas besoin que ce soit très intéressant était probablement encore là. Mais pas de soucis là-bas. Nous avons le reste ici. Entité de table assez sensée. Nous l'avons déjà vu auparavant. Les attributs que le produit obtient pour les différentes animations doivent être assez raisonnables. Les objectifs ici enregistrent cela, ou c'est à peu près compréhensible. Le T-Mobile est un peu différent, principalement la méthode Interact mob ici. Par exemple, ici, l'article T-Mobile est le terme, bien sûr, le tigre n'a pas vraiment de sens, mais c'est juste un exemple ici, bien sûr. Vous pouvez voir que tout cela ici est un peu différent. Vous pouvez donc voir que si un joueur se faufile, nous pouvons le faire s'asseoir. Et si le joueur ne se faufile pas, alors nous commençons à écrire. Vous pouvez voir plus tard commencer à écrire ceci. C'est donc très intéressant. C'est donc quelque chose à garder à l'esprit également, qu'il y a essentiellement un peu de différence ici. Lorsque nous les faufilons, nous lui faisons en sorte de pouvoir asseoir l'entité. Et ensuite, si nous cliquons avec le bouton droit de la souris, alors s'il est apprivoisé, nous commençons à l'écrire. Et vous pouvez également voir que nous avons cela ici. Nous avons donc la possibilité de le faire attribuer au hasard aux propriétaires. Il y a donc ce que nous disons, il y a vingt-cinq pour cent de chances, je crois, de se faire apprivoiser ici dans ce cas. Et puis ces entités, statuts, cela engendrerait les cœurs et cela dépenserait petit et je ne veux pas être votre ami. Essentiellement. Différentes particules ici. Encore une fois, la position assise ici, la fois avec le réglage SETT et avec la variable assise détourne ici. C'est aussi le même mot qui change la santé ici, l'équipe réelle et ceci, puis l'initialisation. Et puis voici la partie utilisable. La partie pilotable, à peu près tout cela a été prise à l'entité de l'espace cheval ainsi qu'à l'entité cheval. C'est presque tout ce qu'il y a à faire. Je peux encore une fois vous dire que vous pourriez être comme, comment avez-vous compris cela ? Comme littéralement, je viens de jeter un coup d'œil à la puissance, l'entité de base du cheval, l'entité cheval copiée sur tout. J'ai copié la méthode par méthode jusqu'à ce que ça marche. C'est à peu près tout ce qu' il y a à faire , puis j'ai changé un peu, je crois en la méthode de voyage, il y avait quelques choses avec la vitesse de saut, ce que je n' ai pas en fait ici. L'entité tigre que vous ne pouvez pas sauter n'est donc qu'un exemple ici. Encore une fois, fortement recommandé. Il suffit de consulter l' entité d'espace cheval et l'entité cheval si vous voulez des fonctionnalités plus fondamentalement ici. Et puis nous avons juste deux méthodes intéressantes, qui est la mise à jour du passager pour le démontage et les emplacements ont sauvegardé cette position de montage, qui sont vraiment habitués , Hé, où le joueur peut-il maintenant aller après le montage sur disque ? C'est tout ce qu'il y a à faire. Ils ont donc l'air très compliqués, complètement copiés. Nous n'avons pas besoin d'y aller trop car le nom dit déjà ce qu' il fait et nous n'avons pas besoin de comprendre tous les petits détails du plus, disons le plus, la résolution la plus élevée possible. Ce n'est pas forcément la chose que vous avez toujours envie d'avoir. C'est comme OK, localiser la position sauvegardée, de démantèlement, tu sais ce que ça fait ? C'est comme, ok, il localise simplement une position dans le monde où nous pouvons créer le joueur après ce montage à partir de cette entité inscriptible. C'est tout ce qu'il y a à faire. Habituellement, ça devrait aller très bien. Et dans l'ensemble, comme je l'ai dit, vous pouvez toujours jeter un coup d'œil à d'autres montures ici. Donc, si j'appuie sur Control H ici, vous pouvez voir une entité de chevaux, une entité de chevaux, je le recommande vivement. Jetez un coup d'œil à ça. Je veux dire, tout est ici. Je ne sais pas quoi vous dire d'autre. Fondamentalement, à ce stade, le truc de vanille est vrai. C'est très répandu et c'est juste une très bonne chose de jeter un coup d'œil. Ajoutons maintenant le moteur de rendu et le modèle. Il y aura donc le modèle Tiger. Bien sûr aussi le rendu tigre. Allez-y. Et encore une fois, les choses ici seront copiées, mais c'est assez simple. Tout compte fait, vous pouvez voir juste un modèle vidéo animé de l' entité tigre , puis simplement pointer avec les trois méthodes ici une fois de plus. Ajoutons ça aussi. Vous y allez. Et puis pour le moteur de rendu, je veux dire, ça va être encore plus drôle. Essentiellement. C'est encore moins, comme vous pouvez le constater. C'est juste une fois encore le contexte ici, l'emplacement réel de la texture. Et c'est à peu près tout ça. Cette fois, nous n'aurons pas de variantes différentes ici. Mais bien sûr, c'est quelque chose que vous pourriez ajouter. On l'utilise vu, comment il fonctionne avec les ratons laveurs, donc pas de soucis là-bas. Ensuite, nous allons créer un nouveau type d'entité ici. Encore une fois, à peu près la même chose que le raton laveur, juste tigre n'importe quel niveau ciblé ici. Dans ce cas, je l'ai aussi une créature, ce qui en fait un nom différent, bien sûr. Et puis j'ai juste un peu d'une dimension différente ici aussi. Et c'est presque tout ce que disent les auteurs. Maintenant, c'est presque tout ce que nous devons faire maintenant chez le client ici. Il suffit de dupliquer ce contrôle D et de dire tigre. Et là, ce sera le tigre ou le renderer. Ce serait à peu près quoi ? Je veux dire, c'est presque tout ce qu'il y a à faire. Maintenant, nous devons également ajouter les fichiers JSON. Bien sûr, nous avons également le modèle tigre actuel. Donc, ce sera juste ici. Nous avons également ce modèle tigre, qui est bien sûr à votre disposition une fois de plus avec certaines des différentes animations ici. Tout cela est donc disponible pour vous, y compris les fichiers JSON. Nous allons juste obtenir l'animation du tigre ici. Allez-y. Et puis nous avons aussi besoin de la perceuse, bien sûr, puis de la texture. Dernier moment, voyons la géo ici. Vous y allez. Ensuite, la texture doit être sous entité, puis un nouveau répertoire appelé tiger. Et puis à l'intérieur de là, nous allons ajouter le tigre PNG. intéressant de noter que c'est tout ce qu'il y a à faire. Bien sûr, encore une fois, beaucoup de choses ont été copiées ici. Tout cela est disponible sur le référentiel GitHub et tout aussi bien, généralement beaucoup de choses, la plupart sont assez simples, toutes choses considérées. Je pense que c'est la même chose que le raton laveur doté d'une capacité particulière. Et aussi quand il s'agit de la bonne capacité, comme je l'ai dit, les cours de vanille, c'est la meilleure chose à laquelle vous pouvez jeter un coup d'œil. N'oublions pas maintenant d' ajouter les registres ici. Ce sera donc les attributs ici. C'est bon pour Tiger. Et puis, ce sera l'entité tigre. Il y a eux. Et cela devrait être à peu près tout ce dont nous avons besoin pour l'entité tigre. Donc, comme je l'ai dit, je ne sais pas à quelle fréquence je dois le dire, mais les trucs de vanille sont là pour que vous puissiez regarder. Si c'est difficile à comprendre. Encore une fois, vous avez juste besoin d'un peu plus de Java et de glitch, l'introduction du poste, d'essayer des trucs et d'être ouvert à l'expérimentation. Il suffit de l'essayer. Voyez jusqu'où vous pouvez aller sans juste essayer des trucs. Je veux dire, à la fin de la journée, vous avez toujours le contrôle Z. Vous pouvez toujours revenir en arrière. Si vous avez une configuration de référentiel GitHub, assurez-vous que vous poussez souvent vos modifications, vous pouvez toujours revenir si quelque chose se brise complètement, c'est également quelque chose à garder à l'esprit. Mais pour le moment, c'est tout ce dont nous avons besoin. Donc, je suppose que nous allons voir si cela fonctionne ou où nous nous retrouvons dans Minecraft. Il y avait donc, bien sûr, une chose que j' ai oubliée , c'est-à-dire l'ajout du frai réel, l'œuf de frai. Mais pas de soucis, on ne peut qu'une partie du tigre comme ça il y a, puis voyons, donc ça marche. Les animations fonctionnent également immédiatement. Voyons voir, cliquez avec le bouton droit. J' ai eu beaucoup de chance ici. Maintenant, je peux cliquer dessus avec le bouton droit et ils partent, maintenant j'écris dessus et c'est très rapide. Maintenant, ce qui est très important ici, c'est que je ne peux pas monter les escaliers comme vous pouvez le voir, parce que le problème est que je ne peux pas vraiment sauter avec le Tigre. C'est ce que j'ai dit, où c'est la façon dont il est mis en place en ce moment. Et puis, si je passe juste le quart de travail à droite ou Kraut, et ça marche. Et puis si je peux fondamentalement déplacer le clic droit, alors il ne reste plus. Et maintenant, il devrait aussi se contenter de bouger sur ce qu'il fait normalement. Voyons voir, laissez-moi attendre une seconde et ça va probablement disparaître, je pense que la queue se tortille un peu. C'est très étrange . Mais c'est là que tu y vas. Maintenant, il commence à marcher. Et il y a longtemps, il y un peu de bizarrerie qui se passe bien sûr. Et comme toujours écrire avec les entités. Je veux dire, c'est juste aussi une question de raffinage. La vitesse réelle que vous utilisez ici est peut-être un peu trop élevée. Je pense que c'est quelque chose que vous pourriez également changer. Mais dans l'ensemble, c'est plutôt cool et c'est en fait à quel point il est facile d'ajouter une entité inscriptible à Minecraft écrit juste pour l'achèvement, ajoutons également l' autre ECG d'apparition ici, parce que c'est très logique. Vous y allez. Le plus important, les deux couleurs ici. Sinon, ce sera le tigre, l'œuf de frai du tigre. Et bien sûr, ici aussi, le tigre apparaît, par exemple, du tigre, il y a. Et ensuite, nous avons juste besoin du fichier JSON, mais nous pouvons simplement copier l'autre fichier JSON, car bien sûr, comme je l'ai dit ce matin, Jason Hall est comme la chose la plus simple qui soit. Ce sera juste le Baunach dégoûtant. Et nous pouvons réellement garder cela tel quel. Nous avons juste besoin de la traduction. Le tigre fraie, puis ici aussi, le tigre frai. Mais maintenant, nous avons tout configuré ici aussi. Mais ça va très bien se passer. Mais oui, c'est presque tout ce qu'il y a à faire. Comme je l'ai dit, pour toutes les modifications, vous êtes libre de faire toutes les modifications ici, d'essayer un tas de choses. La vitesse de déplacement, comme vous pouvez le constater ici, est assez avancée ici. C'est donc quand il est apprivoisé, avoir une vitesse de déplacement assez élevée. Vous pouvez également jeter un coup d'œil à certains des autres objectifs. Encore une fois, tout est disponible ici dans le référentiel GitHub en individuel, tout comme des copies de plus, essayez un tas de choses, regardez quelques exemples de vanille, puis je suis sûr que vous atteindrez espérons-le, l' entité de vos rêves. Je peux également, bien sûr, toujours recommander certains des référentiels GitHub d'autres modes populaires où vous pouvez également jeter un coup d'œil à leur code et c' est toujours très, très précieux. Habituellement, maintenant, vous aurez besoin d'un peu de connaissances en Java, moins intermédiaires à avancées. Sinon, parfois vous ne vous en sortirez pas parce que d'autres personnes peuvent avoir différentes manières, disons, de coder et de programmer en Java, alors vous le faites parfois, vous devrez vous habituer à lire le code des autres personnes. C'est différent de la lecture de la vôtre. Mais je veux dire, quel que soit le cas, c'est tout pour cette conférence ici. Et cela conclut également le type d'excursion d' entité que nous avons fait ici pour les conférences. Mais j'espère que vous avez trouvé cela utile et que vous avez appris quelque chose de nouveau. Si c'était le cas, j' apprécierais beaucoup un commentaire de votre part. Sinon, je vous verrai lors de la prochaine conférence. 109. (Sujets supplémentaires): Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons examiner la génération mondiale des entités. Qu'est-ce que cela signifie ? En gros, nous voulons ajouter nos entités personnalisées à la génération mondiale afin qu'elles engendrent des biomes particuliers. Maintenant, c'est incroyablement facile à faire, comme vraiment. Dans notre package gen, nous allons simplement créer une nouvelle classe Java avec le formulaire d'entités mod. Ici, nous allons créer un vide statique public appelé « add entités phone ». Plus je vais faire, c'est que je vais vraiment copier les deux choses dont nous avons besoin, mais c'est incroyablement facile parce que vous pouvez voir vraiment facile les modifications qui ajoutent un téléphone. Laissez-moi encore une fois, il faut des sélecteurs de biome ici. Dans ce cas, nous allons juste faire frayer les ratons laveurs dans le biome des plaines et que les tigres fraient dans le biome de la jungle. Quelque chose d'autre ici ? Le groupe d'apparition doit juste correspondre au groupe réel de l'entité ici, le poids détermine la fréquence à laquelle ils apparaissent. Si vous augmentez cela, ils vont apparaître plus souvent. Mais sachez que les autres foules apparaissent moins. Et la taille du groupe min, la taille maximale du groupe doit être assez explicite. Maintenant, où appelons-nous cela ? Eh bien, dans notre monde moderne et Jen, cours de mathématiques ici dans la méthode génération mondiale du mode génération, nous allons juste dire plus d' entités sur Add, entité, spawn. C'est ça. C'est fini. C'est littéralement tout ce que nous devons faire. Maintenant, les entités réelles seront ajoutées au jeu dans les paumes. Je veux dire, voyons simplement si ça marche. En fait, je suis allé dans un avion près de lui pour trouver des ratons laveurs ici, comme vous pouvez le voir, parce qu'ils étaient un peu plus faciles à trouver comme les tigres de la jungle l'étaient en fait. Eh bien, je veux dire, très clairsemé. C'est peut-être à cause de la taille des arbres et de la densité des arbres qu'il est difficile pour eux de frayer. Mais quoi qu'il en soit, nous allons en fait jeter un coup d' œil à une autre chose du code. C'est tout à l'heure que c'est ce qui est aussi important ou IDE. Donc, une autre chose que nous voulons essentiellement ajouter pour le raton laveur et le tigre ou pour les restrictions de frai. Bien que je puisse vraiment vous les montrer. Ajoutons ça aussi au tigre. Vous y allez. L'idée générale est de savoir pourquoi voudrions-nous les ajouter ? Eh bien, si nous examinons ces restrictions de réponse ici, vous pouvez voir qu'il y a des endroits que nous voulions dire, Hé, où ces animaux ou ces entités peuvent apparaître. Et vous pouvez voir que la plupart d'entre eux ne peuvent être repérés que sur le sol, ce qui est en fait un peu important. Donc, si vous deviez, par exemple , ajouter un zombie personnalisé au jeu. Et vous n'ajouteriez pas cette restriction d' apparition ici. Il pourrait aussi apparaître dans les airs, puis simplement tomber sur qui est sourd , puis ce serait tout. Il est donc important de l'ajouter. Vous pouvez voir que c'est en fait que l'animal est valide frai naturel. Cependant, il y en a aussi différentes que vous verriez. Husk appelée entité, entité hostile peut apparaître et sombre. Il y a donc un certain nombre de choses ici sont fortement recommandées de consulter la classe de restriction de spawn ici dans une entité de microphone net ou d'autres informations à ce sujet. Mais sinon, c'est à peu près tout ce dont vous avez besoin pour que les entités apparaissent ici. Comme je l'ai dit, le poids est parfois un peu bancal. Fondamentalement, selon le biome ici, vous voudrez peut-être le rendre assez élevé ou assez bas. Il suffit de jouer avec les chiffres comme toujours. Mais sinon, ce serait le pour cette conférence ici. J'espère que vous avez trouvé cela utile et les dirigeants du nouveau. Je vous verrai lors de la prochaine conférence. Oui. 110. (Sujets supplémentaires): Bon, bienvenue au cours de tissu pour 118. Dans cette conférence, nous allons ajouter des métiers personnalisés aux villageois. Maintenant, c'est encore une fois l'une de ces choses très intéressantes qui est en fait beaucoup plus facile que prévu. Veuillez noter que nous n' ajouterons pas de villageois personnalisés. ne s'agit pas de cette conférence. Cela pourrait se produire à l'avenir, cependant, aucune promesse pour le moment, car c'est certainement un peu plus compliqué que ce que nous allons faire maintenant. Nous allons simplement ajouter des métiers personnalisés à un village de professions déjà existant. Et pour cela, nous allons entrer dans notre paquet util, registres modernes et l' écrire ici, nous allons créer un vide privé, un vide statique. En fait, ils utilisent un vide statique. Il s'agit de la méthode Register Customer Trades. Vous serez en fait étonné de voir à quel point cette méthode est facile. Je le ferai une fois de plus, bien sûr copié, mais tout cela est disponible pour vous dans le passé ou pour un individu tout aussi. Et c'est tout. Il s'agit de deux offres commerciales différentes qui sont ajoutées. Appelons ça immédiatement ici avant de l'oublier. Et puis passons en revue ce qui se passe ici. Nous avons cette aide directe où nous enregistrons les offres d'un villageois. Vous pouvez voir les offres d'enregistrement des villageois. Et ensuite, vous pouvez voir avec sélectionner une profession. Vous pouvez donc voir que ce sont les professionnels que vous avez dans la vanille. Et nous allons choisir le fermier ici. Vous choisissez le niveau auquel les éléments particuliers que vous êtes sur le point d'ajouter doivent être simplement intégrés. C'est donc le premier niveau. L'agriculteur normal au premier niveau a donc cette attitude. Vous pouvez voir qu'il y a des usines et ensuite vous avez ces crochets bouclés ici. Vous pouvez ajouter plusieurs compromis ou sérieux, vous pouvez voir, je peux aussi ajouter quelqu'un d'autre comme des graines de navet. Tout d'un coup, vous savez, peut-être ceux de six ou 24 ans ou quelque chose comme ça. Et vous pouvez en ajouter plusieurs pour le même niveau. Si vous voulez un autre niveau, il suffit d' ajouter à nouveau ce livre entier. Mais dans l'ensemble, cela devrait être assez explicite. La première pile d'objets ici est exactement ce que vous devez payer. Vous n'avez donc pas forcément à mettre des émeraudes, vous pourriez y mettre n'importe quoi d'autre. Le second ici est essentiellement ce que vous en tirez. Je crois au compromis ou vous pouvez également ajouter, si vous ajoutez trois articles différents textes ici que vous pouvez voir, alors vous avez deux articles que vous devez payer avec qui fonctionne également. C'est bien sûr quelque chose qui est implémenté, par exemple, dans des trucs de canalisation où vous donnez en quelque sorte, par exemple, et puis je ne sais pas, comme 60 miles ou je suis prêt à émeraudes Et puis vous obtenez une épée enchantée. Cela fonctionne également. Vous pouvez donc ajouter une troisième pile d'éléments et cela fonctionnerait également. La prochaine utilisation est la fréquence à laquelle vous pouvez utiliser cela fondamentalement faisable, l'expérience marchande devrait être assez explicite. C'est l'expérience acquise par le marchand lorsque vous échangez cette offre. Ou quelques exemples que je crois que vous pouvez jeter un coup d'œil, oui, vous pouvez jeter un coup d'œil aux offres réelles ici. Donc, l'expérience ici, voyons voir. C'est donc la véritable usine de ragoût suspecte. C'est quelque chose de différent. Voyons voir, on peut peut-être trouver quelqu'un d'autre ici. Je ne sais pas à 100% où se trouvent les offres commerciales normales réelles, qu'elles soient ou non, ce sont d'autres dans cette création ici, cette expérience. Voyons voir. Voilà, d' accord, ils sont là. Il peut voir qu'il y a une partie de l'expérience. Vous y allez. Ils sont en fait dans la catégorie des offres commerciales cette année. Et ils l'utilisent en fait par un pour émeraude. Et vous pouvez voir ici l'expérience à deux. Il s'agit donc d'une expérience assez faible. River a une expérience, cinq expériences expérimentées et l'expérience avec 6120 pourrait être un peu trop élevée, mais vous pouvez simplement jouer avec cela bien sûr aussi. Le multiplicateur de prix n'est que la multiplication du prix. Et c'est à peu près tout ce qu'il y a à la taxe normale sur les articles ici, vous pouvez fournir le compte et c' est presque tout ce qu'il y a à faire. Ici, nous en avons un pour le mythe des outils, où il y a six émeraudes pour l'oracle que Paxil. Au niveau trois. C'est littéralement tout ce qu' il y a deux sont vivement recommandés pour jouer avec ça, comme toujours être ouvert à l'expérimentation. Jetez un coup d'œil à l'offre commerciale dans les classes d' offres commerciales pour voir quelques exemples de vanille. Et pour l'achèvement, voyons si cela fonctionne. Ou des influenceurs de retour à Minecraft et j'ai déjà préparé des kiosques villageois , disons non, mais ici vous pouvez voir le fermier a déjà les navets ici, donc nous pouvons simplement échanger avec lui. Et vous pouvez voir, voilà. C'est vraiment cool. Et puis ici, échangeons juste contre des outils ici. Et nous allons aussi y trouver du côlon. Et voyons juste qu' on peut échanger avec lui jusqu'à ce qu'il atteigne un niveau trois. Fondamentalement, ils vont chercher des cloches ici, prendre un peu de celui-là. Peut-être aussi un peu de fer. Nivelez-les aussi. Vas-y un peu, prends un peu plus de ça. C'est un peu plus de charbon et nous devrions pouvoir les amener au niveau trois. Le voilà, le sol compact de l' oracle est, eh bien, vous y allez. C'est vraiment cool, vraiment génial. Et bien, c'est en fait à quel point c'est facile, comme vous pouvez le constater aussi. Eh bien, ajoutez des traits personnalisés aux villageois. C'est déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. 111. (1.18.2) Mise à jour de tissu à 1.18.2: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons mettre à jour notre MOD ou un projet à 118 pour ce faire. Ou bien sûr, nous allons devoir modifier les éléments du fichier de propriétés Gradle. Nous n'allons pas vraiment consulter ce site Web en particulier. Ce que nous allons vérifier, c'est en fait le site Web de développement de tissu , car il a aussi les derniers éléments ici. Il suffit de copier ça et de le coller ici. Et puis je vais juste faire en sorte que tout soit correctement formaté. Mais pas de soucis là-bas. Il y a eux. Donc, nous allons juste changer tout cela. Et puis une autre chose que nous voulons changer, bien sûr, tout d'abord, frappez la version mod. Introduisons des termes comme 19 ou peut-être même tous Faisons 21. Oui, c'est génial. Ensuite, également dans le fichier construit ou Gradle, nous voulons changer la version Looom de dix à 11. Et après avoir changé cela, ce que nous pouvons faire, c'est que nous pouvons charger les modifications Gradle. Maintenant, cela devrait être à peu près tout ce dont nous avons besoin. Laissez cela se dérouler comme toujours, soyez patient jusqu'à ce que cela soit fait. Et voilà, 22 secondes. Cela peut prendre un peu plus de temps pour vous, en fonction de votre connexion Internet et d'autres choses comme ça. Ce que nous voulons également faire au cas où la version la plus récente est mise à jour ici pour gecko lip. C'est donc ici, 035 juste au cas où parce que même si les autres versions devraient fonctionner, je me sens un peu mieux si nous avons également la dernière version. Mais vous pouvez réellement le faire avant de recharger les modifications et de les recharger toutes en même temps. Alors, laissons ça se passer encore une fois. Et ensuite, tu y vas. En fait, seulement sept secondes. C'est encore mieux, mais c' à peu près tout ce que nous devons faire ici. Cependant, nous allons maintenant rencontrer certains problèmes. Ce qui a changé, c'est la génération mondiale et les balises. Donc, si nous entrons dans la catégorie de la taxe sur le mortier, vous pouvez voir toutes sortes de rouges, mais pas de soucis, nous allons régler ça. Ce qui a changé, c'est que nous n'avons plus identifié le TAC. s'agit maintenant de la touche Tab. Donc, je vais juste mettre du papier collant et nous allons appuyer sur Alt et Entrée pour le changer. Et ce qu'on veut faire, c'est changer toute étiquette identifiée à ce tack il, donc ce que je vais faire, c'est que je vais élire appuyer sur Control R, et ensuite on va les remplacer tous par des touches TAC. Débarrassons-nous également des importations ici , car nous n'en avons plus besoin. Parce que c' est ici que maintenant va réellement baliser E point o f. Et puis nous devons passer le premier paramètre, la clé de soulignement du bloc de données du registre. Et nous devons le faire pour cette course ici aussi. Nous allons faire la même chose. Et ensuite, ici, nous allons juste copier pour le moment. Et puis on va changer ça pour, bien sûr. Et ensuite, nous allons changer cela par la clé d'article. Il y a, même ici, l'objet est conservé. Et alors, nous devrions aller bien. Ce devrait être à peu près tout ce que nous devons faire ici. Bien sûr, nous devons également changer cela dans la catégorie d' articles de la tige de descente personnalisée ici. Il y a donc deux façons de le faire. Il y en a une, il y a une façon très compliquée et qui nous oblige à changer cela. Et puis il y a un moyen un peu plus compliqué d' utiliser l'état du bloc ici. Et je vais faire l'état du bloc parce que je pense que c'est mieux. Donc, nous pouvons simplement dire que le point de bloc est dans et ensuite attaques mod bloquent cette tige de descente ou les blocs détectables. Bien sûr, le problème ici est que nous passons réellement le bloc réel et l'état du bloc, ce qui, bien sûr, n'est pas tout à fait correct. Ce que nous devons faire, c'est que nous allons faire, c'est que nous allons dupliquer cela en appuyant sur Control D. et c'est maintenant l'état ci-dessous. Et on va changer ça d'un bloc, de l'état du bloc. Et ensuite, je n'appelle pas le bloc Get juste ici. Vous pouvez voir maintenant que nous avons l'état, nous pouvons maintenant le faire au lieu de refroidir tout cela, nous pouvons utiliser l'état pour obtenir les blocs. Nous pouvons donc dire que nous pouvons dire que l'état ci-dessous est bloqué pour obtenir le bloc. Et puis, ici, nous avons l'état ci-dessous, puis passons à l'état du bloc au lieu de simplement le bloc. C'est presque tout ce que nous devons changer ici. Et cela va maintenant détecter tout ce qui concerne les balises. L'article Paxil devrait simplement fonctionner. Nous n'avons pas besoin de faire quoi que ce soit ici parce qu' il s'attend en fait à une clé de balise. Comme vous pouvez le voir, vous y allez. C'est aussi très important parce que je viens de voir comme sources. Ce que nous allons faire, c'est aller à nouveau au terminal, mettre en barre oblique, Gradle w, Jen et laisser passer ça aussi. génération de ces sources peut prendre une minute ou deux . Encore une fois, en fonction de votre PC et également votre connexion Internet. Ou soyez juste patient et attendez que vous obteniez une construction réussie ici. Vous y allez exactement une minute. Et maintenant, nous devrions pouvoir le faire, c'est que lorsque nous obtenons la ligne bleue ici, nous pouvons choisir les sources et choisir la source de noms fusionnés ici, dites OK. Et après le rechargement, il devrait maintenant nous montrer la classe appropriée avec les sources appropriées. Mais c'est aussi une chose que nous devrions faire. Et maintenant, le vrai doozy va être la génération mondiale parce que cela a beaucoup changé. Eh bien, qu'est-ce qui a changé, c'est vraiment la syntaxe ? Ce que nous allons faire, c'est que nous allons entrer dans la classe des fonctionnalités configurées en mode et vous pouvez voir beaucoup de rouge ici. Bien sûr, tous les changements, tous les éléments sont disponibles dans le référentiel GitHub, dans l'individu, euh, tout aussi. Je recommande vivement de vérifier cela car il y a beaucoup de choses qui ont changé. Et nous allons passer en revue les bases de la façon dont je peux changer cela. Tout d'abord, nous avons maintenant une entrée de registre ici au lieu d' une simple fonctionnalité configurée. Et ce que nous allons faire, c'est que cela va maintenant être au lieu d'appeler la fonction configurée ici sur cette arborescence, ce que nous faisons, c'est que nous voulons supprimer le configuré et le point, remplacez-le par une virgule, puis supprimez les parenthèses ici. Ensuite, au lieu d'utiliser la méthode register, nous allons utiliser la méthode suivante. Nous allons utiliser les fonctionnalités configurées. Celui-ci concerne les fonctionnalités configurées qui enregistrent la méthode. Débarrassez-vous de tout ça et maintenant tout fonctionne toujours. Ainsi, comme vous l'avez vu, nous devons changer cela en entrée de registre dans le point trich point de fonctionnalité configuré uniquement pour l'arborescence des entités. Et puis en passant essentiellement dans le reste comme d'habitude. Maintenant, au lieu de passer d'une fonctionnalité configurée à la configuration de l'entité à l'autre, nous devons maintenant placer une fonction entre les deux. Maintenant, ce que je vais faire, c'est que je vais simplement copier la fonction de lieu et la fonction configurée. Maintenant, je vais le faire et garder les choses déjà existantes ici. Vous pouvez voir que c'est très similaire à ce que nous avons déjà entendu, la moitié. Vous pouvez donc voir qu'il s'agit d'un conflit futur aléatoire. C'est la même chose. Et puis voici les bois qui ont survécu. Maintenant, c'est juste la vérification ici. Ainsi, les bois survivent maintenant dans cet endroit , ici même. Et vous pouvez voir que le reste est à peu près le même. C'est un peu différent, mais ensemble, ce n'est pas si fou. Je recommande vivement une fois de plus, comme dans le monde normal, les conférences que nous avons faites, il suffit de consulter, par exemple, le sélecteur aléatoire ou la brève fonctionnalité ici, au milieu. cliquez sur ce bouton minimaliste, cliquez ici. Et vous pouvez voir tout ce qu'ils font. Vous pouvez voir que c'est vieux marécage par exemple. Vous pouvez voir la caractéristique de la place du marais, OK, et ainsi de suite et ainsi de suite. Tout comme nous l'avons vu lors des conférences originales de la génération mondiale. Je recommande vivement de le faire. Quand il s'agit de la rose rose, je vais faire la même chose. Donc je vais juste copier cela et voir que nous utilisons la fonctionnalité Configurer, cette méthode de registre de temps en temps, en passant la fleur ici, le conflit de fonctionnalité de patch aléatoire est joli à peu près la même chose parce que nous utilisons la même chose ici. Ce que nous pouvons réellement faire, c'est supprimer ces deux méthodes parce que nous n'allons plus les utiliser. Et voyez que nous utilisons la méthode de registre des fonctionnalités configurée et le correctif de création ici. On va juste faire ça dans la file, donc ça va aller aussi bien. Ensuite, la liste réelle des auras peut rester la même. Et puis celui-ci est le plus facile à changer. Ce que nous faisons, c'est de se débarrasser de la parenthèse configurée ici et la parenthèse de fermeture et d'ouverture. Nous voulons changer cela par une entrée de registre ici, il y a maintenant et celle-ci est en fait des fonctionnalités configurées qui les enregistrent il y a. Et maintenant, il y a une autre chose que nous devons faire , c'est de prendre ce conflit ou futur et de changer le premier point d'interrogation en conflit tel ou tel conflit de caractéristiques. Maintenant, ce cours a fait les problèmes que nous allons résoudre dans un instant. Ce sont bien sûr des problèmes avec fonctionnalités remplacées et des trucs comme ça et aussi avec l'arbre. Donc, si nous allons dans le générateur de sapling et C, ce n'est plus une rhétorique valide ici est simplement pour supprimer la méthode réelle, survolez cette méthode d' implémentation, puis tout est écrit ici. correctement. Et puis nous pouvons simplement dire les fonctionnalités configurées par mod que le cerisier en fleurs. Vous y allez. Et puis immédiatement devrait fonctionner. Aucune autre modification n'est nécessaire. Passons au MOD ou aux fonctionnalités. Maintenant, vous voyez beaucoup de rouge ici. C'est juste parce que la classe a bougé. Donc, ce que nous voulons faire, c'est simplement les importer à nouveau. Cliquez donc sur Alt et Entrée pour l'importer. Vous pouvez voir que vous allez sur le modificateur de placement, mon père aussi. Vous y allez. Ce devrait être à peu près tout ce que nous devons faire ici. Maintenant, le reste se trouve dans les fonctionnalités du marché. La première chose qui est vraiment géniale, c'est que nous n'avons plus besoin des clés de registre. Donc, ça va juste sortir ça d'ici. Nous n'avons plus besoin de ces méthodes. Nous pouvons le faire, c'est que nous allons simplement utiliser la méthode de registre de données des entités placées que nous avons déjà utilisée ici, s'il vous plaît registre de points, donc je vais juste le copier dans le nouveau liste, juste ici, ici, juste ici, puis ici. Une fois de plus, nous ne voulons pas appeler le placement sur la fonction réelle, sur la fonction configurée réelle. Ce que nous voulons faire, c'est que nous voulons transmettre les fonctionnalités configurées. Il devrait donc s'agir d' une virgule et ensuite cela devrait être le frai. Et puis débarrassons-nous de ceci et ceci, et ce n'est pas une fonctionnalité de lieu concernant une entrée de registre, encore une fois, d'une fonction de lieu et cela devrait fonctionner totalement bien. Vous pouvez donc voir qu'ils fonctionnent très bien il y a longtemps. Ajoutons simplement l'entrée de registre ici pour les deux. Et puis une fois de plus, le changer pour diriger le placement de la largeur et le point également. Vous y allez. Nous devons les importer. Ils sont juste changés. Vous y allez. Je travaille déjà. Et puis la même chose ici avec le placement va être supprimée, remplacée par une virgule ici. Et puis cela va aussi être réimporté. Et puis toutes les autres entrées qui ne sont plus valides, nous allons simplement nous en débarrasser. Et il y a longtemps, c' est littéralement là, c'est à peu près toutes les choses que nous devons faire. C'est presque fou, mais ce n'est pas tant que ça quand on y pense vraiment. Comme regarder tout ce qui est ici , c'est assez simple. Toutes choses prises en compte. Quelques autres choses dans la génération, mais c'est aussi assez banal. C'est donc la façon dont vous l'écrivez fondamentalement qui a modifié la fonctionnalité sous-jacente reste à peu près la même dans les classes de génération que nous mettons dans la clé ici. Ce que nous pouvons faire maintenant, c'est que nous pouvons simplement prendre la génération de fleurs. Donc, nous voulons celui-ci, point, point, point, et c'est tout. Donc, nous voulons simplement remplacer cela par le point, obtenir toutes les choses différentes ici. Donc, ça va être le point des plaintes d'Oracle, Dot Get. Et puis il en va de même avec un arbre ici. C'est la fleur de cerisier placée, mais prenez ky.gov. Et c'est cela qui devrait à peu près tout ce que nous devons changer. C'est peut-être comme quelques autres choses quelque part. Mais je pense que c'est ça. Ce qui est vraiment drôle aussi, c'est que les étiquettes et le monde sont comme les grandes choses qui changeraient aussi pour quelque raison que ce soit. Alors que dans l'utilitaire de l'écran de titre, je ne sais pas pourquoi, mais l'écran de titre ne fonctionne plus correctement. Je suis en fait, je veux dire, je ne dirais pas furieux, mais je suis un peu en colère à ce sujet parce que j'ai eu ce genre de cours presque entièrement personnalisé que j'ai pris un peu du fourrage et l'a refait un peu, puis ça a complètement fonctionné. Et maintenant, pour quelque raison que ce soit, ils ont changé à nouveau l'écran de titre, et je ne sais pas pourquoi, mais c'est ce que c'est. Mais parfois, ces choses arrivent. Nous devons juste faire face à cela et vous allez en voir plus. Je veux dire, dans un moment où nous le faisons réellement, permettez-moi de vérifier le conflit. Et nous avons désactivé ça. Oui, nous avons désactivé cette option, alors nous allons simplement l'activer pour que nous puissions réellement voir quelle est la différence pour l'écran de titre. Vous allez voir que ça ne fonctionne pas vraiment. C'est donc aussi l'une des autres raisons pour lesquelles quelque chose comme un conflit pour l'écran de titre est vraiment important. Commençons cela et voyons si nous avons des erreurs. Je ne suis pas sûr à 100 % que nous ne devrions rien obtenir. C'est peut-être comme si une ou deux choses qui étaient peut-être une importation manquaient, mais cela semble plutôt beau pour le moment. Voyons donc simplement, laissez-le passer par là, bien sûr, notre flèche normale que nous obtenons toujours quand nous démarrons Minecraft. Et je pense que ça devrait bien se passer. Il commence sur l' autre moniteur. Allons juste le chercher ici. Et puis nous pouvons également voir que le problème ici, bien sûr, c' est qu'il n'y a pas de titre d'éclaboussure ici et qu'aussi à gauche, en bas à gauche, la version réelle et les autres sont également manquant. Je ne sais pas pourquoi c'est le cas. Ils l'ont modifié d'une manière ou d'une autre dans le backend de leur code. Mais quel que soit le cas, c'est 1, 1000e 2. Et ce que nous pouvons faire, c'est que nous pouvons simplement créer un nouveau monde , créer un nouveau monde et en fait, tout devrait encore fonctionner parfaitement. Cela va donc des entités jusqu'aux entités de blocs, jusqu'à l' absence de frai d'arbres et tout ce qui se trouve entre les deux devrait encore fonctionner parfaitement. C'est vraiment cool et voyons ça. L'apparition se fait à peu près exactement. Je veux dire, c'est génial. C'est aussi un endroit vraiment intéressant ici. Mais oui, les arbres sont toujours en deuil, les fleurs proprement dites sont toujours en train de frayer. Ça va être vraiment cool. Et jetons un coup d'œil à tous nos cours ici. Alors, passons à bout et voyons le tigre continuer travailler alors que les ratons laveurs fonctionnent encore de la variance. Donc, tout va toujours très bien. Et nous allons également tester les enregistrements de descente. C'est quelque chose qui a changé. Et nous verrons qu'une fois que nous aurons trouvé quelque chose il y a quelque chose, ils ont trouvé du minerai de fer donc tout va bien, fonctionne toujours. Ne vous inquiétez pas là. Oui, c'est à peu près à quel point il est facile de passer à partir des années 1820. Il y a beaucoup de choses que vous devez garder à l'esprit, mais dans l'ensemble, ce n'est pas si mal, n'est-ce pas ? Donc évidemment, tous les sujets supplémentaires qui viendront après cela seront tous pour 182, je recommande vivement bien sûr de mettre à jour cela, vous devriez probablement en être à ce stade. Et ensuite, nous pourrons continuer avec autres sujets dans 118 à, mais ce serait tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. 112. (1.18.2) Structures personnalisées (représentation d'exemple tutorielle): Ou je souhaite la bienvenue au cheval en tissu pour 118. Dans cette conférence, nous allons ajouter des structures personnalisées à Minecraft. Maintenant, la façon dont cela va fonctionner est cette conférence et les deux conférences suivantes seront consacrées aux structures. Maintenant, dans cette première conférence, je vous recommande vivement de suivre cette conférence avec moi car après avoir implémenté des structures une fois, il est incroyablement facile d'y ajouter d'autres structures. Il suffit de copier certains fichiers JSON et de construire votre structure, enregistrer, puis c'est tout. C'est très, très simple. Mais cette conférence, comme vous pourrez probablement le dire, est assez longue. Et la raison en est que nous allons passer par ce dépôt ici. Il s'agit du référentiel de mod didacticiel structuré par un grognement télépathique. Il s'agit probablement de la ressource numéro un pour les structures personnalisées. C'est incroyablement génial à, c'est vraiment bon. Il y a beaucoup de commentaires différents dans chaque fichier. Et c'est juste que cela rend cela très, très simple. Maintenant, 1, 1000e 2 introduit en fait un moyen de créer des structures qui ne nécessite littéralement aucun code. Maintenant, c'est vraiment génial, mais nous verrons aussi une structure particulière qui existera réellement avec du code. Et nous allons passer par là. Je vais donc expliquer comment je parcourt ce référentiel particulier. Nous allons le parcourir dans son intégralité. Nous allons mettre en œuvre les deux structures qui nous sont essentiellement données ici. Et de la façon dont nous parcourons cela au fur à mesure que nous allons dans le dossier source ici, nous allons ouvrir le code et les ressources séparément. Donc, tout d'abord, nous voulons examiner toutes les différentes classes que nous avons. On va voir qu'il y a une classe mixte en classe, il y a une classe de structure, il y avait les structures St. et la classe principale. Nous avons donc quatre classes différentes. Et vous pouvez voir dans l'ensemble qu'ils sont assez longs, mais vous pouvez voir aussi qu'il y a beaucoup de commentaires différents ici. Je le recommande vivement à votre temps. Parcourez les commentaires, voyez ce que chaque partie signifie, parce que certaines choses sont très simples, d'autres ne sont pas si simples. Je le recommande vivement. Vous pouvez donc voir globalement le nasdaq fou quand on y pense. Mais au fond, c' est par là que nous commençons. Nous commençons donc par le code. Tout d'abord, ce sera l'accessoire de fonctionnalité de structure. Je vais juste copier ça et nous allons commencer immédiatement ici même dans le paquet de mixage. Maintenant, vous pouvez bien sûr également obtenir tout le code et les fichiers JSON dans le référentiel GitHub du cours ainsi que les risques. Mais je recommande fortement de passer en revue cette fois, travaillant essentiellement avec le code de tutoriel réel des grognements télépathiques, dépôt GitHub tutoriel que je recommande vivement ou quel que soit le cas peut-être dans le paquet mixte, on va faire un excès de fonction de structure V ou avec mardi il y a. Et nous devrions pouvoir simplement coller cela et ensuite importer toutes les choses importantes ici. L'étape de génération aussi. là que tu y vas. Et ce devrait être que maintenant, bien sûr, aller au cours MC mixin Jason et ajouter cela comme mixé ici aussi. C'est à peu près ce que nous devons faire ici. Et puis nous allons revenir au tutoriel GitHub ici, nous allons fermer l' onglet et ensuite passer au suivant. Ce sera les structures du ciel. Je vais juste copier tout , y compris les importations ici. Et cela va aller dans le paquet mondial, dans un nouveau paquet appelé ruptures. Et puis, au lieu de là, nous allons créer une nouvelle classe appelée module. Voici les structures du ciel. là que tu y vas. Et ensuite, on va coller ça en déplacement. Nous devons le changer cette année en MC core smart, un bûcheron, et ce n' est pas une maison délabrée, mais c'est la fracture du ciel. Et là, ici, il suffit de changer, c'est celui-là. Et alors, plus aucune erreur ne devrait être présente ici. Donc, tout devrait fonctionner. Dans l'ensemble, comme vous pouvez le constater, même si cela semble beaucoup, s'agit en fait d'une sphère commune différente. Et tout est essentiellement expliqué dans ces commentaires que je recommande vivement, comme je l'ai dit, de passer par là à votre temps. Vous pouvez voir, par exemple, que celui-ci détermine la position Y. C'est placé des trucs comme ça. Je vous recommande vivement de regarder cela et m' assurer que vous comprenez un peu cela. Vous n'avez pas besoin de tout comprendre ici, surtout si vous voulez simplement, disons, une structure normale qui apparaîtra, alors tout va bien se passer. Si vous voulez quelque chose de plus étendu comme un bastion personnalisé. Je veux dire, à ce moment-là, ça va être très, très difficile de le faire. Cela va nécessiter beaucoup plus de travail. C'est tout simplement pour certains, disons les structures de base aux structures intermédiaires. Nous avons maintenant la classe de structures de ces gars. Alors, fermons tout ça aussi. Ensuite, nous pouvons voir que nous avons besoin de ces structures ici. Maintenant, je vais renommer cela en structures mod parce que c'est la nomenclature que j'utilise. Et on va juste opter pour des structures modales. C'est là que tu y vas. Et je vais juste coller ça, changer ça en ruptures de mod et tu ne devrais pas que nous écrivions ça correctement. là que tu y vas. Importer la fonction de structure ici, futur accessoire rétro. Ce sera le mod du cours MSC de cet ID de modèle. Il s'agit alors de l' étape de génération une fois de plus comme il y a. Et puis vous pouvez voir encore une fois que c'est tout ce qu'il y a à faire. Nous devons maintenant appeler cette méthode ici même dans notre cours MC, plus de classe et le constructeur ici. Les structures modales n' enregistrent donc pas de fonctions de structure et c'est tout. Et puis il y a aussi la dernière chose ici. Vous pouvez voir, vous voilà, Nicole, ceci, et c'est fait et c'est fait. Maintenant, tout le code est déjà créé. Et maintenant, le reste se passe dans le dossier Ressources et notamment dans le dossier de données. Ici, il y a beaucoup de choses ici. En fait, nous allons trouver beaucoup de choses que vous pouvez voir, tout d'abord, une étiquette. Je vais expliquer cela dans un instant. Et puis nous avons le dossier de données pour ce tutoriel ici, vous pouvez voir que nous avons des structures, nous avons d'autres balises et ensuite le monde entier. Ce tag est en fait quelque chose que nous allons ignorer un peu. Mais il s'agit des cartes de l'explorateur océanique. C'est quelque chose que vous pouvez ajouter. Vous pouvez voir que microbe possède des balises de fonctions de structure configurées qui peuvent ajouter un certain comportement. Et dans ce cas, vous pouvez ajouter la structure aux cartographes, villageois, carte de l'océan, cartes des monuments. Et c'est essentiellement ce que fait une étiquette particulière. Vous n'avez pas besoin d'ajouter cela. Je ne vais pas l' ajouter. Il suffit d'ajouter une fonctionnalité supplémentaire qui pourrait être vraiment cool. C'est donc quelque chose que nous pouvons ignorer à peu près. Nous allons également fermer cela et maintenant nous n' avons plus que le dossier de données pour le didacticiel sur la structure. Il s'agit bien sûr de l'ID du modèle. Donc, pour nous, il s'agirait du dossier de cours Data MC. Et vous pouvez voir qu'il y a quelques dossiers ici. Alors ouvrons les deux premiers car celui-ci va être plus étendu. Ainsi, les structures se replient, il suffit de disposer des données NVT pour les structures supplémentaires. L'idée est donc que vous construisez des structures dans le monde et que vous puissiez ensuite utiliser certains blocs. On les appelle le bloc structurel permettant de sauvegarder ce bâtiment particulier dans les données NVT. Et nous allons voir comment le faire dans cette conférence aussi, car nous devons également changer certains de ces éléments dans ces fichiers NVT. Et ensuite, nous verrons cela dans la prochaine conférence et la conférence après cela avec une structure personnalisée unique. Et ensuite, nous allons également voir les structures de scie sauteuse lors de la dernière conférence de ce genre de trois séries de conférences sur les structures. Mais pour le moment, nous allons simplement prendre ces structures que je recommande vivement, encore une fois, de passer par ce tutoriel, ne pas trop changer. Assurez-vous que tout cela fonctionne. Si vous avez fait tout cela et que tout fonctionne ici, vous obtenez la maison délabrée, vous avez le fan du ciel. L'ajout d'une nouvelle structure est une chose de cinq minutes maximum. C'est très, très simple. Et puis, bien sûr, il fallait encore le construire. Mais le code réel ou les fichiers JSON qui le modifient est très simple. Alors faites-le exécuter une fois avec un mod didacticiel structuré. Ensuite, vous pouvez ajouter vos propres structures fortement recommandées. C'est juste la meilleure façon de le faire. Nous voulons essentiellement télécharger tous ces fichiers dans des fichiers VT. Maintenant, j'ai déjà fait ce que vous pouvez faire, c'est que vous pouvez simplement l'ouvrir et ensuite télécharger ici et ils sont partis. Ensuite, vous avez ce fichier NVT. Vous pouvez voir en fait quatre que j'ai déjà téléchargé quelques fois. Vous pouvez donc voir que c' est à peu près là. Il suffit donc de les télécharger tous les quatre et vous pouvez bien sûr aussi les obtenir dans le référentiel GitHub aussi que moi. Ce que nous allons faire, c'est que nous allons aller dans le cours Data Folder MC, et nous allons créer un nouveau répertoire appelé structures. Et puis à l'intérieur de là, nous aurons besoin des fichiers NVT suivants. Tous les quatre. C'est là que tu y vas. Nous allons donc avoir besoin de la maison délabrée, du côté gauche, côté droit, du côté droit, Golden et des fans du ciel. Donc, ces quatre dont nous avons besoin dans ce dossier de structures, dossier de données dans votre ID de modèle ici. Et ce serait très bien. Donc, une fois cela fait, nous pourrons également le fermer. Et puis vous pouvez voir que nous avons les étiquettes ici. Ce sera donc sous vos données une fois de plus, les balises de biomes belges ont une structure. Ces balises sont très intéressantes car elles vont réellement déterminer dans quels biomes votre structure personnalisée peut apparaître. est très simple de comprendre ce que cela fait et ce que nous allons faire, c'est que nous allons juste les ouvrir tous les deux. Et je vais tout d'abord créer la structure actuelle ici. Donc, dans les balises plus anciennes à droite, sous votre identifiant de modèle, nous allons créer un nouveau répertoire appelé World Jen. Et puis, à l' intérieur, nous voulons créer un nouveau répertoire appelé biome. Et puis à l'intérieur de là, nous allons créer un nouveau répertoire appelé « structure de soulignement », en veillant à ce que nous écrivions correctement. Et puis à l'intérieur d'ici, nous avons besoin de deux nouveaux fichiers. Je vais donc le faire, c' est parce que ce sont de très longs noms. Je vais vraiment copier ce nom ici. Et je vais juste cliquer avec le bouton droit sur un nouveau fichier, coller ce nom dans. C'est là que tu y vas. Et puis je vais revenir en arrière, coller le contenu de ce point ici encore, et nous allons y jeter un coup d'œil dans un instant. Nous allons également créer l'autre dossier. Il s'agit donc des seuls biomes domestiques adjacents. Donc, cette seule maison G Jason que nous allons engendrer une structure que nous avons créée, la structure du ciel pour laquelle nous avons créé le code, et la maison va apparaître complètement uniquement avec les fichiers JSON est vraiment génial. Et en fait, je suis vraiment très, je suis surpris de voir à quel point il est facile de voir, surtout lors des prochaines conférences, après que nous ayons vécu cela, une fois, vous êtes Je vais voir à quel point il est facile ajouter plusieurs nouvelles structures, c'est vraiment simple une fois que vous avez traversé cela, une fois, je ne peux pas le recommander assez, alors qu'il est un peu temps de le régler et pour aller jusqu'au bout et tout expliquer. Ça va être très, très intéressant, n'est-ce pas ? Nous avons donc les biomes du ciel. Biomes pour les fans de ciel, vous pouvez voir que les montagnes sont océaniques et les océans profonds. Vous pouvez voir que ce sont des balises comme vous pouvez le voir. Et puis nous ajoutons cela au marais ou à la seule maison que vous pouvez voir, nous l'ajoutons à tous les trucs que c'est un tigre, une jungle, une forêt, puis aussi des déserts, des plaines et d'autres des biomes également. Ici, vous pouvez simplement utiliser les biomes. En spécifiant en un mot un biomes, votre structure personnalisée va apparaître. C'est vraiment cool. Pour que nous puissions fermer ça, fermons tout ça. là que tu y vas. Ensuite, nous pourrons continuer une fois de plus. Nous pouvons le fermer, le fermer et le fermer. Et maintenant, nous sommes de retour ici que nous avons réalisé les structures et nous avons fait que la balise a des structures et nous allons maintenant au monde entier. Et donc je peux ouvrir cela dans cet onglet et vous pouvez voir qu'il y a quatre autres répertoires différents ici. Et nous pouvons en gros ouvrir quatre ou quatre d'entre eux. Et vous allez voir, ouvrons les trois premiers parce que ça va être spécial. Et vous pouvez voir que le premier a juste une fois de plus des fichiers JSON dedans. Il s'agit de fonctions de structure reconfigurées. Ce que je vais faire, c'est que je vais copier le nom ici juste pour ne rien manquer. Et c'est vrai, et c' est extrêmement important. Veuillez noter ici. Maintenant, cela va dans le dossier World Gen, pas dans ce dossier World Gen. Dans votre cours Data MC ou votre photo d'identification MOD, vous devez créer un nouveau dossier World Gen. Regardez-moi ça. Regardez. Ce dossier World Gen est différent de celui-ci. C'est ici que c'est au lieu du dossier fiscal, vous pouvez le voir, vous y allez. Si j'ouvre cela, vous pouvez voir que ce sont des dossiers différents. C'est extrêmement important. S'il vous plaît, ne commettez pas l'erreur de tout placer dans votre dossier fiscal. Soyez donc conscient de cela. Il s'agit d'un dossier différent. Je vais garder ça ouvert et tu pourras voir les cœurs de MC , Jen rural, tu y vas, tout se passe et on va avoir un nouveau répertoire ici, qui va s' appeler configuré fonction de soulignement de structure de soulignement. Créons également le reste des autres. L'autre est la liste des traits de soulignement du processeur. Ensuite, nous allons faire glisser ceci dans le même dossier qui conserve le contrôle pour dupliquer cela. Et c'est le soulignement de la structure. Et puis le dernier sera le pool de soulignements de modèle. C'est là que tu y vas. Ce sont les quatre répertoires ou dossiers différents dont nous avons besoin dans le monde et suivons une fois de plus, veillant à ce que cela se trouve dans le bon dossier, monde des cœurs de données MC. Jen, ce n'est pas les mondes de tags et plein de très, très important que vous ayez cet ordre intérieur correct, n'est-ce pas ? Une fois que vous vous êtes assuré qu'il s' agit du bon dossier, vous allez aller ici et nous allons ouvrir ces deux rayons et ces fichiers. Donc encore une fois, je vais juste copier le nom ici d'abord ce qui me rend un peu plus facile pour moi, de sorte que je n'ai pas à taper ça. Alors ce que nous allons faire un clic droit sur un nouveau fichier, bien sûr il y a, et ensuite nous allons obtenir le contenu ici. Donc, nous allons juste copier ça. C'est là que tu y vas. Et ensuite, on va entrer ici. C'est là. On va changer ça dans un instant. Créons à nouveau l' autre fichier adjacent ainsi que la seule maison adjacente. Et nous allons cliquer avec le bouton droit sur un nouveau fichier, coller uniquement maison. Et puis on va y aller, puis on va aller ici. C'est là que tu y vas. Encore une fois, dont le contenu est au-dessus de N, nous l'avons là. Mais tout d'abord, vous pouvez ignorer les flèches ici pour les commentaires réels. Tout va bien se passer, donc pas de soucis là-bas. Et maintenant, vous pouvez voir que ce fichier JSON particulier est essentiellement la fonction de structure ou la fonctionnalité que nous allons ajouter, la configuration de celui-ci. Qu'est-ce que cela signifie ? Eh bien, tout d'abord, vous pouvez voir que cela remonte en fait et pointe vers votre tag que nous avons créé ici. Vous pouvez donc voir que c' est la structure. Il a une structure, oui. Et puis codez la structure du ciel fan des biomes, qui est exactement ce Jason of Alright, ici nous devons changer cet ID de modèle en notre modèle. C'est très important. Nous voulons également changer cet identifiant intelligent par notre mod ID. Et juste pour être sûr que tout fonctionne, nous voulons également modifier cet ID de modèle. Donc, partout où il est dit la modalité du tutoriel de structure, nous voulons fondamentalement passer à notre identifiant de modèle. Cela devrait maintenant être assez explicite. Comme je l'ai dit, cela pointe vers ce pare-feu JSON particulier ici, la balise biome, qui est essentiellement responsable de dire, ok, cette fonctionnalité de structure particulière ou cette caractéristique particulière la structure ne peut apparaître que dans les biomes qui se trouvent à l'intérieur de cette étiquette devrait être assez explicite. Il ne se passe rien de fou là-dedans. Ils démarrent le pool est quelque chose que nous allons ajouter dans un instant. Cela va être ajouté dans le dossier du pool de modèles. Et nous allons le voir dans un instant. Il s'agit essentiellement de la profondeur, l' un des éléments centraux de la génération de cela. Et ensuite, nous pouvons voir que nous avons également quelques remplacements de frawn ici, où certains volcker et fantômes pourraient apparaître ici. Vous pouvez donc voir que c'est ce que les vadrouilles peuvent engendrer des heures supplémentaires dans cette structure. C'est donc quelque chose que vous pouvez également jouer avec vivement conseillée. En dehors de cela, la seule maison adjacente est très similaire. Vous pouvez voir ici que la structure de base est complètement différente. C'est en fait un village ou on ne sait pas 100 % où cela a du sens. Vous pouvez voir que cela effectue essentiellement une vérification du terrain supplémentaire. Je pense donc que cela signifie simplement que cela se produit essentiellement comme un village. Il va donc vérifier s'il y a un terrain plat, des trucs comme ça. Et il va faire des choses comme ça. Je ne suis pas sûr à 100 %, mais cela semble être le cas. Une fois de plus, le tutoriel sur la structure, en changeant cela par notre ID de modèle. Encore une fois, cours MC, cours MC. Et c'est la piscine de tri de la maison délabrée. Et cela montre encore une fois les seuls biomes adjacents. Donc ce fichier ici, pour être assez explicite, le bruit des adultes, vous pouvez voir qu'il y a un excellent commentaire ici, ce que cela fait fondamentalement si vraie terre autour d'elle sera autour du bas de la structure. Cela va donc changer la structure réelle du terrain autour de sa structure réelle. Et puis, une fois qu'il peut s'étendre sur les remplacements, nous pouvons également ajouter des créatures qui entendent sons de parents peuvent apparaître ici également. Alors, tu y vas. Maintenant, ils ont configuré la fonction de structure est terminée et ensuite nous pouvons passer à autre chose pour que nous le puissions. Ceux, celui-là, celui-là et celui-là. Ensuite, nous pouvons voir la liste des processeurs. Il s'agit maintenant d'un fichier Jason spécial qui n'est pas nécessaire. C'est quelque chose de coutume. C'est la rupture de pierre aléatoire et c'est vraiment génial. Et je vais expliquer ce que cela fait également. Nous allons créer cela dans notre processus, notre liste plus ancienne ici et ma brique de pierre. Et puis revenons à ici et nous allons juste trouver toute cette folie ici. Et cela fait essentiellement dans l'essentiel, voici liste de processus va exécuter un processeur pour chaque bloc placé que je modifie le fichier NVT. Lorsque nous créons nos structures personnalisées. Bien sûr, tout est enregistré dans la NBA dans un fichier MVT. Et puis essentiellement pour chaque bloc placé sur ce processeur le traverse. Et vous pouvez voir, c'est vraiment cool. Vous pouvez essentiellement spécifier certaines règles ici. Et la règle ici est que, par exemple, si nous trouvons une brique de pierre , elle a 50 % de chances d' être remplacée par une brique de pierre infestée. C'est vraiment génial et c'est vraiment cool. Vous pouvez voir ici que certaines briques de pierre peuvent également être remplacées par de l'émeraude ou du cobalt. ardoise profonde pourrait être remplacée par une guerre de restaurants d'État profonde. C'est vraiment cool et c'est peut-être le cas, vous pouvez ajouter plus de variabilité à vos structures personnalisées avec cela, avec ces règles ici. Je ne suis donc pas sûr à 100 % de toutes les règles qui existent. s'agit bien sûr que d'un exemple où vous pouvez modifier un bloc par huit autres blocs. Mais c'est vraiment cool et c'est peut-être une chose très cool à ajouter à certaines de vos structures. Mais encore une fois, ce n' est pas nécessaire. C'est complètement facultatif. Vous allez donc voir que cela va être utilisé dans la structure du ciel ici, mais pas dans la maison. En fait, la maison ne va pas s'en servir. C'est donc ce que je dis. Cela n'a pas besoin d'être ajouté, mais c'est toujours agréable. Et je recommande vivement aux fins de cette conférence et du tutoriel structuré, je recommande vivement de l' ajouter également. Très bien, pour que nous puissions fermer cela aussi. Et puis nous sommes dans l'ensemble de structures trans du monde. Mais encore une fois, nous pouvons ouvrir ces deux dossiers Jason et je vais faire la même chose. Je vais copier le nom ici, et nous allons créer un nouveau fichier. C'est là que tu y vas. Une fois de plus, nous allons aller ici et obtenir le contenu que vous pouvez voir en fait pas si longtemps. Et encore une fois, nous allons d' abord créer les deux fichiers, puis nous allons passer en revue le contenu et ce que ceux-ci signifient réellement. Ils ne sont pas si fous que ça. Dans l'ensemble, chaque partie n'est pas si compliquée, toutes choses prises en compte. C'est juste que parfois cela peut être un peu intimidant parce qu'il y en a tellement, mais quand on le regarde, les parties individuelles ou pas si folles. Donc tout d'abord, bien sûr, encore une fois , la structure ici, n' est pas sûre à 100%, mais je crois que cela pointe vers la fonctionnalité de structure configurée ici. Donc celui-là, nous pouvons simplement changer cela cours MC et ensuite il va pointer vers ce fichier JSON ici. Et ensuite, le placement est très important. Le placement ici, vous voulez essentiellement vous assurer que votre sel ici que vous pouvez voir nous rend uniques et s'assure qu'il ne correspond à aucun autre ensemble de sel. La raison en est que sinon les structures réelles seraient placées au même endroit, ce qui est bien sûr quelque chose que vous ne voulez absolument pas faire, parce que Ce serait juste très bizarre. Parfois, il arrive encore qu' ils se croisent, mais ce n'est que le hasard. Cela ne devrait généralement pas se produire, surtout si vous faites la séparation ici. Donc, l'espacement, c'est la distance moyenne écartée et il s'agit de la distance minimale à écarter. Et bien sûr, cela doit toujours être plus petit que cela. C'est logique, non ? Si la distance moyenne est inférieure à la distance minimale cela n'a aucun sens. Donc, vous y allez, assurez-vous. Et je crois que ce serait certainement des valeurs déboguées parce que 166 vous verrez qu' une fois que nous irons dans le monde, ce n'est incroyablement pas rare. C'est incroyablement courant dans ce mélange, nos différentes structures incroyablement communes. Gardez cela à l'esprit, mais je recommande de conserver ces chiffres pour le moment. Même chose ici avec la maison Jason. Nous allons le changer, celui-ci ici, cours MC. Ensuite, nous pouvons également voir cette structure de nouveau pointer ici. Maintenant, ce que vous constaterez, c'est qu'il s'agit bien sûr d'une liste. En théorie, nous pourrions donc ajouter une autre structure ici. Vous pouvez donc, même en théorie, sur la structure Skype et partout où vous pouvez attribuer les différents tarifs ici. Nous pouvons voir dans ce commentaire qu' il essaie de choisir une de ces structures. Si deux analystes de structures ou plus peuvent apparaître dans un biome à un endroit, un point aléatoire sera choisi en fonction des poids. C'est l'idée générale ici. Vous pouvez donc également dresser une liste de nombreuses structures et faire apparaître l'une d'entre elles dans un endroit particulier. Cela fonctionnerait donc aussi. Il s'agit donc de l' ensemble de structures qui pointe essentiellement vers la fonction de structure configurée, la préoccupation, la fonction de structure ici , bien sûr, pointant vers la taxe ici, puis pointant également au pool de modèles, qui est la dernière chose que nous devons maintenant ajouter. Nous allons donc revenir au référentiel GitHub ici, et nous allons fermer tout cela, puis ouvrir le pool de modèles parce que c'est comme je l'ai dit, un peu plus compliqué. Je vais chercher le ventilateur du ciel , puis aussi la maison délabrée. On va donc faire ça comme ça. Nous allons d'abord obtenir le fan du ciel. En fait, ça va être un peu plus facile. Ce n'est donc que la base de fans de soulignement du ciel et le fichier à l'intérieur d'ici. Nous allons donc créer un nouveau dossier. C'est là que tu y vas. Et puis encore une fois, copier le contenu de ceci aussi longtemps que vous pouvez le voir, dans ce cas, ce que nous voulons faire changer celui-ci ici, c'est le plus ID réel. Je ne pense pas que cela soit tout à fait nécessaire. Vous pouvez également voir que cela pointe vers la piscine latérale ici. Cela n'a pas vraiment de sens car cela ne devrait pas être le cas. Il devrait en fait s'agir de son propre nom. Il devrait donc s'agir de Skype. Et je pense que ce n'est pas si important pour le nom actuel ici. Et puis vous pouvez le voir bien sûr aussi, cours MC. Et vous pouvez voir celui-ci comme vous pouvez voir le chemin final ici, structure de données des ressources à utiliser. Ce serait des structures de parcours MC gérées sur la maison gauche note cela pointe vers le ciel et jurait ventilateur et VT. Ce nom doit donc être le même que celui-ci. Par conséquent, l'emplacement ici pointe vers le fichier MDT dans le dossier structures à l'intérieur de votre dossier de cours MC dans ce cas, car c'est ce que nous avons fait. Maintenant, vous pouvez voir que nous avons aussi les processeurs randomisés pierre, brique. Il faut aussi changer le cours MC, n'est-ce pas ? C'est la même chose ici, MC bien sûr. Cela recherche ensuite la liste des processeurs, la brique de pierre randomisée, puis nous allons aléatoirer une brique de pierre pour chacun des différents, va passer en revue exactement cette règle qui Je vous ai montré il y a quelques minutes, en gros. Oui, et c'est à peu près le fan du ciel. Ce que nous voulons maintenant faire, c'est aussi le côté et la piscine entreposée pour la maison délabrée. Nous allons donc créer un nouveau dossier ici appelé Run Underscore Down Underscore House. Et puis à l'intérieur de là, nous allons créer deux fichiers JSON stockés Fool et des pools de sites ou cliquer avec le bouton droit sur le nouveau fichier stocké Underscore pool dot json. Et puis nous voulons aussi le point de soulignement latéral Jason. Et nous allons copier le contenu. Il s'agit du pool de stockage. Il suffit de copier cela au-dessus du but et ensuite, finissons, mais non des moindres , de copier sur l'idiot latéral et ensuite nous avons tout copié. Ensuite, nous avons besoin, c'est celui pour commencer le pool. Et tout d'abord, une fois de plus, la nouvelle liste du cours MC, transformant en cours MC. Et c'est tout ce dont nous avons besoin. Vous pouvez donc voir une maison délabrée laissée pour cela une fois de plus, celle-ci juste ici, ce NVT to File. Et ensuite, nous avons ici la piscine du site. Ça va être très intéressant. C'est nécessaire pour le bloc de scie sauteuse et les trucs de scie sauteuse. Nous allons donc voir essentiellement ce que cela signifie et ce que cela fait dans un instant. Nous allons juste changer tous les emplacements ici. Partez au cours MC. Et l'idée générale ici est que vous avez une piscine de stockage, qui sera le côté gauche de la maison. Ensuite, vous avez un bloc de scie sauteuse deux côtés de la maison et du côté gauche et droit de la maison. Et ils sont connectés les uns aux autres. Et puis il appelle essentiellement la piscine du site, puis engendre soit le côté droit House, normal ou or. C'est l'idée générale. Mais nous allons voir cela un peu plus en détail dans la conférence sur les scie sauteuses, où nous fabriquons une nouvelle structure personnalisée entièrement personnalisée avec nos propres blocs de scie sauteuse personnalisés et des trucs comme ça aussi. Donc, pas de soucis là-bas. Nous allons entrer un peu plus détail là-dessus à l'avenir. Mais maintenant, en fait, tout a été ajouté et devrait fonctionner. Si cette chose que cela ne devrait pas fonctionner est en fait la partie gauche et la droite de ces fichiers MVT dans le bloc de scie sauteuse, il y a un identifiant de modèle incorrect. L'ID du modèle reste donc le didacticiel de soulignement de structure et nous devons en fait changer cela. Maintenant, ce qui devrait déjà apparaître, c'est notre fan de ciel et le côté gauche de la maison. Ce que nous allons faire, c'est que nous allons créer un nouveau monde. Et nous allons faire ce que nous allons faire, c'est aller dans Minecraft, créer un nouveau monde. Et puis quand je vois que le ventilateur du ciel possédait réellement, et ensuite aussi la maison délabrée. Voyons simplement si ça marche. Il est très important de noter que vous atteindrez ce monde en utilisant des paramètres expérimentaux. Une fois que vous avez ajouté vos structures personnalisées, c'est exactement ce qu'il s'agit. Vous ne pouvez pas vous en débarrasser facilement. Il y a, je pense qu'il y a un mod que vous pourriez ajouter ou pour l'obtenir en gros, mais vous allez devoir faire face à ça. Il suffit de cliquer sur Continuer et permet au monde entier de générer. Et si vous rejoignez un monde déjà existant direz quelque chose comme : Oh, il utilise des paramètres expérimentaux. Dites simplement : Oui, je sais ce que je fais. Entrez dans le monde et tout ira bien. Ne vous inquiétez pas du tout qu'ils le soient. Très bien, nous nous trouvons donc dans Minecraft et généralement les structures devraient être assez répandues. On y va. En fait, il y a 1,5 de la maison déjà existante. Allons juste ici et vous pouvez voir que ce n'est qu' une demi-maison, n'est-ce pas ? Le bloc de scie sauteuse est donc placé ici. Et puis il devrait y avoir un autre côté de la maison que nous allons réparer dans un instant. Mais vous pouvez également voir des exemples très sympas et sympas d'autres choses ici. Fondamentalement, TreasureChest comment vous pouvez en ajouter aussi. Je recommande donc vivement de vérifier cela également. Et puis, en fait, allons aussi chercher le code de cours MC uniquement structures Chi Fan. Et puis nous devrions aussi pouvoir trouver cela, disons mes deux phi up. Maintenant, c'est là. Ok, nous pouvons voir que vous y allez et nous devrions également pouvoir voir cassures de pierre, puis certaines d'entre elles sont des briques de pierre infestées et plutôt que d'avoir été remplacées par des émeraudes. Et puis voici quelques-uns de ces éléments qui ont été remplacés par les différents ORS. Très cool, tout fonctionne exactement comme vous vous y attendez. Et maintenant, nous devons réparer la maison. Alors, comment réparer la maison ? Eh bien, ce que nous devons faire, c'est nous devons obtenir un certain bloc que nous devons obtenir un certain bloc et ce sera le, ce bloc ici. Alors donnons-nous simplement le, c'est le bloc structurel. là que tu y vas. On va le faire, c'est qu'on va juste le régler , puis cliquer dessus avec le bouton droit de la souris. Et ce que nous devons faire, c'est d'obtenir le nom de la structure. Il y a un deux-points de cours MSC, et il s'agit de soulignement en bas de la maison de soulignement, de soulignement côté gauche du soulignement. Je pense que c' est ça. Chargeons et ensuite tu irais vraiment le charger. Allons-y, sélectionnons ce contrôle un contrôle C pour le copier, puis cliquez à nouveau sur Charger pour charger la structure. Et vous pouvez voir cette structure charger en largeur une roche ici. C'est la boisson tellement bloquée. Et vous pouvez voir cela prend le tutoriel de soulignement de structure, une maison délabrée à côté de la piscine. C'est pourquoi cela ne fonctionne pas et nous voulons vraiment faire la même chose ici. Allons juste un peu plus loin. Ensuite, cliquons avec le bouton droit de la souris, copions ceci et collons ceci dans. Et puis on va faire un bon côté, juste ici, côté droit, charger. Il devrait également se charger. Sortons de ça. Vous y allez, chargez ça . Et puis faisons la même chose encore une fois avec les côtés dorés. Donc ça va être un droit, je vais souligner l'or. Ce sont donc tous nos différents fichiers NVT. Chargeons ça aussi. là que tu y vas. Et maintenant, nous avons tous ces différents blocs. Comme vous pouvez le voir, nous allons commencer par la maison de gauche. Ce dont nous avons besoin est donc nécessaire de changer cela, bien sûr, en cours MC. Donc, bien sûr, il va maintenant examiner notre fichier JSON de pool de sites. Alors, ce que nous allons faire ici est du bon côté. Nous n'avons pas nécessairement besoin de changer cela, mais j'aimerais également changer cela . Il s'agit du nom de la cible. Je vais le sélectionner à nouveau, contrôler a, contrôler C pour le copier. Et puis on va dire que c'est fini. Maintenant, ce nom ici, le nom de la cible doit correspondre au nom ici. Donc, si je clique avec le bouton droit de la souris sur celui-ci, vous pouvez voir que cela a un nom particulier et que ceux-ci doivent correspondre. C'est en fait une double vérification. Oui. Voici Steve. Je savais que j'avais un W là-dedans parce que je me déplaçais un peu trop tôt. Et nous y allons, celui-là aussi bien fait. Ce que nous voulons maintenant, c'est que nous voulons sauvegarder à nouveau ces données MVT. Comment pouvons-nous faire cela ? Eh bien, encore une fois, dans notre bloc de structure, nous allons passer en mode sans échec, et nous allons juste enregistrer cela sous le même nom, en toute sécurité. Tu y vas, c'est fini. Et puis la même chose ici, passez en mode Enregistrer sans échec. Et puis passer ici en mode sans échec. Donc, si cela a été un peu rapide, ne vous inquiétez pas, comme je l'ai dit, la prochaine conférence et surtout la conférence après cela, nous allons discuter des blocs de scie sauteuse un peu plus en détail quand il en construisant une structure personnalisée et comment vous pouvez facilement l'enregistrer. Donc, si c'était un peu, je ne suis pas sûr à 100% que tout fonctionne. Vous l'êtes, ne vous inquiétez pas à ce sujet. Nous allons voir cela dans un petit peu dans les prochaines conférences également. Mais maintenant, ces différentes structures ont été sauvegardées et la seule chose que nous devons faire est d'échanger les données NVT que nous avons déjà avec nos données VT qui viennent d'être enregistrées. Passons donc à intelligence et voyons comment cela fonctionne. Très bien, nous trouvons un suspect dans le renseignement et nous voulons aller dans le dossier Run dans vos coffres-forts. Ensuite, vous voulez aller dans le monde que vous venez créer là où vous avez réellement ces structures. Il devrait y avoir un dossier généré ici avec exactement ces données NVT. Mais c'est exactement ce que nous voulions. On va juste prendre ça et on va juste le déplacer jusqu'aux structures ici. Et nous dirons tout passer outre. Et c'est tout. Maintenant, la maison délabrée fonctionnera correctement car maintenant elle va chercher la bonne piscine du site parce que nous devions le préciser dans la maison de gauche et elle va 113. (1.18.2) Structures personnalisées (pièce unique): Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons créer une structure personnalisée. Nous nous trouvons déjà dans Minecraft et j'ai déjà créé une structure personnalisée ici. Vous pouvez donc télécharger le fichier NVT pour cela. Cependant, je recommande en fait ce que vous faites c'est de créer votre propre structure personnalisée. Il n'est pas nécessaire que ce soit grand, il n'est pas nécessaire que ce soit compliqué. Il doit certainement être inférieur à 48 par 48. Je dirais que vous pouvez simplement mettre en pause la vidéo, créer votre propre structure, puis nous continuerons. J'espère que vous avez construit une structure qui est, elle peut être similaire à ceci ou autre. Mais en gros, nous voulons maintenant le bloc de structure réel. Donc, si vous n' avez pas cela, vous pouvez simplement vous donner cela à vous-même. Donnez simplement à votre propre joueur ici, le bloc de structure, celui-ci juste ici. Vous pouvez voir, voilà. C'est le bloc de structure. Et ce que nous voulons faire, c'est que nous voulons placer cela à peu près en dehors de l'ensemble de la structure. Nous voulons donc le placer ici que tout ce qui se trouve à l'intérieur se reproduise, gros, ça les a sauvés plus tard et ensuite nous voulons l'autre ici. Nous voulons donc ceux qui se trouvent dans ces deux coins, puis les deux autres blocs devraient aller dans les deux autres coins. Mais ils forment essentiellement un cube autour de cela. Dans ce cas, je vais juste mettre ça ici. Vous y allez. Ensuite, nous allons commencer ici. Le nom de la structure devrait être MC cours deux-points, et je vais appeler ça la maison de soulignement du tapis. Et je vais copier ce nom. Ainsi, une fois que vous pouvez contrôler a pour tout sélectionner, contrôlez C pour le coller. Et puis nous passons en mode coin et nous disons Terminé, je vais aller ici, le coller en mode coin V de contrôle terminé. Là, ils sont assis dans des hormones faites. Et puis notre dernier ici, nous voulons passer en mode sans échec, coller cela et dire détecter, puis il devrait détecter toute la structure afin que vous puissiez voir et vous assurer que tout que vous voulez se trouve à l'intérieur des lignes réelles ici et tout est superbe. Maintenant, ce que nous pouvons faire, c'est que nous pouvons dire en toute sécurité. Maintenant, le fichier NVT a été enregistré. C'est en fait à quel point cela est facile pendant un certain temps, une structure unique à sauvegarder dans ce cas, bien sûr, la construire. C'est bien sûr une autre chose. Quand il s'agit des blocs de scie sauteuse, c'est quelque chose que nous verrons lors de la prochaine conférence. Mais pour l'instant, nous allons revenir à IntelliJ. Et nous allons jeter un coup d'œil à ce que nous pouvons voir ici. Donc, dans l'intelligence, on va aller dans le dossier R1, sauve. C'était dans le monde des structures que je crois généré, il y a la maison de cabane et nous allons juste copier ça sur le contrôle C. Et ensuite je vais le coller dans mes structures. Suivez ici. Hothouse NVT il y a, c'est maintenant mon habitude. Comment est-ce que j'ai construit ? Et maintenant, bien sûr, nous devons ajouter des choses que nous avons déjà faites auparavant. Maintenant, ce que nous allons faire, c'est que nous allons juste ouvrir le dossier d'origine avec tous les différents Jason final CR, même avec la taxe. Et maintenant, l' idée est qu'une fois que vous avez traversé, c'est la raison pour laquelle j'ai dit lors de la dernière conférence, une fois que vous l'avez traversé, il est incroyablement facile d' ajouter de nouvelles structures. Parce que ce que nous allons faire, c'est que nous allons prendre la maison JSON uniquement. Vous allez créer cette structure adjacente uniquement. Dans ce cas, nous allons simplement prendre chacun de ces fichiers et les dupliquer. Nous allons donc le faire glisser dans le même dossier qu'il est dans le contrôle de la bile. Cela va donc le dupliquer. Nous allons appeler cette maison de soulignement de l' entreprise. Et je vais sélectionner tout le nom ici, contrôler C pour le copier parce que nous allons l'utiliser plusieurs fois avec les autres fichiers JSON. Et ces biomes sont vraiment amusants, donc on va les garder. Il s'agit bien sûr encore une fois du fichier JSON qui spécifie dans quels biomes notre structure personnalisée peut apparaître. Et la fonction de structure configurée. Nous allons également copier cela. Et encore une fois, il suffit de copier et de coller le nom ici. Ici, nous voulons changer ce nom pour couvrir la maison de soulignement, la piscine de magasin. Nous allons créer cela dans un instant. Et puis celui-ci est bien sûr, la maison de carbone à moitié structure Jason, qu'elle pointe ici. Donc peut-être que ce que nous ne voulons pas vraiment, nous ne voulons pas de monstres ici. Alors, faisons-le simplement. On va juste faire naître une créature, peut-être un perroquet. Cela devrait être très bien dans l'ensemble, le reste ici va bien. Nous n'avons pas besoin de liste de processeurs dans ce cas, je ne veux pas que rien soit remplacé au hasard. Bien sûr, vous pouvez toujours le faire. Nous l'avons vu, la dernière conférence, la liste des processus était plutôt cool, mais nous ne voulons pas cela. Et puis nous avons une fois de plus un ensemble structuré couvrant également la maison de soulignement. Ici, il montre la maison de soulignement de carbone et très important, c'est incroyablement important pour rendre le placement ici dans le Salt unique. Il doit être unique. Ensuite, nous allons également modifier un peu l' espacement. Nous n'allons pas redevenir une année trop folle, 166 sont encore très, très petits. Cela devrait certainement être plus élevé lorsque vous implémentez quelque chose dans le jeu. Et bien sûr, vous avez vu en quelque sorte comment la distance générale était également pour la structure précédente. Dans une autre dernière chose dont nous avons besoin, c'est les pools de modèles. On va trouver tout le dossier de la maison délabrée ici. Nous allons renommer ça pour faire face et maison. Ensuite, je vais ouvrir à la fois la piscine du site et la piscine du magasin. Ils commencent ici, disciple, on peut supprimer, c'est encore mieux. Donc, on va juste faire oui, le supprimer. Et puis la piscine de stockage ici, en veillant à ce que nous ayons ce pool house de départ ici. Et puis ici, nous allons juste dire qu' au lieu de la maison délabrée qui reste, c'est bien sûr, pointant vers le fichier NVT. On va le pointer vers le fichier NVT de la maison commune. C'est ça. Maintenant, tu vas dire que ça ne peut pas être tout. C'est en fait tout ce dont nous avons besoin. 1234 fichiers JSON et nos fichiers NVT et un total d'entre eux, en fonction de la complexité de votre construction, peut prendre beaucoup de temps pour enregistrer le fichier NVT, mais c'est assez tout ce que vous devez faire. Bien sûr, vous pouvez toujours modifier quelques éléments ici, directement dans ces fichiers Jason, y configurer quelques éléments différents. Mais dans l'ensemble, c'est presque tout ce dont vous avez besoin. Donc, pour l'achèvement, ce que nous allons faire, c'est que nous allons créer un nouveau monde, entrer et voir si nous pouvons trouver notre maison de carbone. Ils sont très intéressants ici, j'ai une flèche ici. 114. (1.18.2) Structures personnalisées (structures à (Jigsaw ): Bon, bienvenue au cours de tissu pour 100 000 personnes vues dans cette conférence, nous allons créer une structure de scie sauteuse. Vous pouvez voir que j'ai déjà préparé cette Lex en fait ces deux pâtés de maisons ici. Et créons cela à partir de zéro. J'ai donc déjà construit la structure ici. Et ce que nous allons faire, c'est que nous allons économiser 1,5. peu près avec le, avec la séparation ici. Une fois le fichier NVT et ensuite l'autre partie dans un autre fichier NVT. Et ce que je vais faire, c'est que je vais faire trois variances différentes. L'un avec du fer ici, l'autre avec des émeraudes et un diamant de largeur. Dans le monde, cette plate-forme de stockage peut apparaître avec Oracle d'un côté, puis l'autre côté sera déterminé au hasard. Tout d'abord, ce que nous allons faire, c'est que nous avons besoin des blocs structurels. Donc encore une fois, nous allons faire, c'est que nous allons juste nous donner ce bloc. On va juste dire « Donner » , puis chercher le bloc de structure ici. Nous allons aussi avoir besoin du bloc de scie sauteuse. Donnons cela immédiatement à soi-même pour que nous l'ayons. Et puis, ce que nous allons faire, c'est d' abord trouver la structure principale ici. Ce cours devrait être ici. Je pense que ça devrait être très bien. Et ensuite, ce dont nous avons besoin, c'est bien sûr au sommet, veillons à ce que nous soyons suffisamment hauts. Ça devrait être très bien. Et puis il y a encore une fois, c'est bon. Et ensuite, ici, vous devez être en dessous d'un. Alors, juste là. Et puis encore une fois, mais il est monté jusqu' à la même hauteur. Je pense que ça devrait être très bien. Maintenant, c'était bien sûr ici, vous y allez. Ça devrait aller bien. Mais nous allons voir dans une seconde, puis nous allons aller ici, passer en mode coin, et ça va être le deux-points du cours MC. Appelons cela la plate-forme de soulignement de stockage. Vous y allez. Et je vais le faire, c'est comme tout ça avec Control A, Control C pour le copier, c'est fait. Et nous allons utiliser celui-ci ou télécommande V pour coller le nom dans le contrôle V pour coller le Neyman et bien sûr aussi changer le mode coin. C'est très important. Et juste ici, nous allons passer en mode sans échec, coller le nom, puis nous allons dire détecter. Et on y va. Nous avons donc l'ensemble de la structure ici, donc c'est tout à fait exact. Maintenant, ce que nous voulons également poser, c'est le bloc de scie sauteuse. Maintenant, comment fonctionnent les blocs de scie sauteuse ? Eh bien, l'idée générale est que la flèche pointe. Donc, au fond, nous voulons que deux flèches pointent toujours l'une vers l'autre. Donc, ce que nous allons faire, c'est que nous allons trouver le milieu ici. Allons juste chercher celui-là. Ensuite, la flèche pointe dans cette direction. Ensuite, nous voulons également que l'autre bloc de scie sauteuse pointe dans la même direction. Vous voyez donc qu'ils se forment, ils forment ce genre de ligne et les flèches pointent l'une vers l'autre. C'est ainsi que l'autre va être placé. C'est pourquoi je l'ai déjà construit l'un à côté de l'autre. Faisons rapidement ça correctement. Vous y allez. Vous pouvez voir que celle-ci est à l'intérieur de la première structure, n'est-ce pas ? Donc celle-ci est à l'intérieur de cette structure et l'autre sera à l'intérieur de la deuxième structure, ce que nous allons faire dans une minute. Ce que cela fait, c'est que celui-ci a un nom défini ici. Donc, il s'agira simplement de plate-forme de soulignement côté deux-points de cours MC par exemple. Sélectionnons-le et copions ce nom ici. C'est la seule chose que nous devons faire sur le bloc de scie sauteuse secondaire. Sur le bloc de puzzle principal, nous voulons le placer sous le nom de la cible , puis le pool cible. Et c'est extrêmement important et nous voulons suivre un cours de MC. Et puis cela va être ceux-ci, disons le pool de soulignement de la plate-forme de soulignement de site slash de stockage . Donc, ici, il pointe vers le fichier adjacent l'intérieur de nos dossiers de données. Si je l'ouvre rapidement, tu peux voir ça pour la maison délabrée, cette piscine latérale juste ici. C'est ça. Bien sûr, nous n'avons pas encore créé la plateforme de stockage , mais c'est l'idée. Nous avons donc ce fichier JSON de pool latéral, qui définit différentes variantes de ce site particulier. Et en fait, j'ai mis l'ironie ici, mais ça va aller. Je vais juste faire apparaître le fer et ensuite ce sera la plate-forme latérale. Je veux dire, peu importe de quelle façon vous le faites. Et oui, donc essentiellement la plateforme du site, ce nom et ce nom doivent correspondre. C'est la seule chose. Et puis pour les principaux, c'est donc le premier. C'est la structure qui va apparaître lorsque vous utiliserez la structure, la plate-forme de stockage, celle-ci ici, qui sera la principale où nous aurons ce pool latéral. Il s'agit donc du fichier JSON. C'est juste le nom de l'autre scie sauteuse née. Et ensuite, ce que nous pouvons définir ici c'est en quoi le bloc de scie sauteuse se transforme. Nous allons juste les supprimer et les laisser se transformer en l'air. Mais en théorie, vous pourriez aussi changer cela. Ce que nous allons faire, c'est que nous allons également obtenir le deuxième ici juste pour que nous l'ayons. Donc, ce serait juste ici. C'est que je pense que non, je pense que ça devrait bien se passer. Alors, nous devrions avoir tout là-dedans. Et ensuite, ici, je vais aussi poser le bloc de structure ici. Et puis l'autre bloc de structure pour écrire votre, je pense que ça devrait être ça. Et ce sera maintenant ce que nous allons appeler cela, pas la forme de plan de site qui sera la plate-forme de soulignement de soulignement de revenu Oracle . Allez, je vais le sélectionner, appuyez sur le contrôle C pour le copier, mode Warner, le contrôle V pour coller. Ils n'ont pas fait le mode coin. Et ensuite, ici aussi, ils sont assis en mode et ensuite celui-ci va bien sûr être de nouveau en mode sauvegardé, ils s'assoient, disons détecter, et nous devrions l'avoir dans leur époque. Nous disposons maintenant de la plateforme de stockage de calcium par voie orale, qui comprend également ce bloc de scie sauteuse ici. Ce qui est très important dans ce cas. Donc, ce que nous allons faire, c'est que nous allons prendre la plate-forme de stockage qui aurait sauvé ça. Nous allons prendre la plateforme Oracle, sauvegarder cela, et puis plusieurs fois je vais changer cela pour être un autre type de commande et nous allons également enregistrer un autre exemple de cela. Très bien, donc j'ai tout changé en émeraudes dans ce cas je vais faire, c'est maintenant que nous allons changer le nom ici. Nous allons simplement changer le nom de plateforme de stockage Emerald. Je vais tout sélectionner. Appuyez sur le contrôle C pour le copier. Et nous allons changer tous les noms ici. C'est très important. Une fois de plus, il y a le contrôle a2 collecté ou le contrôle V pour coller le nouveau nom. Et cela devrait être assez explicite ici. Je vais faire la même chose ici et on va détecter encore une fois. Et vous allez voir, voilà. Il s'agit de la plate-forme de stockage Emerald dans ce cas, assurez-vous que lorsque vous sélectionnez lorsque vous placez un nouveau bloc que vous êtes, n'êtes pas en dehors des limites ici. Et ensuite, nous allons également sauver celui-ci. Nous avons maintenant deux variantes différentes. Juste par souci d'argumentation, nous allons faire une autre variante. Faisons également la variante diamant. Faisons ça rapidement. Je l'ai senti avec un diamant. Encore une fois, changeons les noms ici. Ce sera donc la plate-forme de stockage de diamants. Encore une fois, Contrôlez a pour le sélectionner, Contrôlez C pour le copier. Et ensuite, nous allons faire la même chose pour tous les coins différents ici. Vous y allez. Et puis celui-là aussi. Vous y allez. Et puis revenons ici encore une fois pour le détecter. Et nous avons détecté avec succès, et maintenant nous pouvons également l'enregistrer. Vous y allez. Et maintenant, nous avons enregistré trois variantes différentes de cette partie de la plateforme et essentiellement une plateforme principale ici. Ceux-ci sont essentiellement reliés par ce bloc de scie sauteuse ici. Mais c'est l' idée ici. Passons à un DJ et voyons tout d'abord ce que nous pouvons voir, bien sûr que nous devons obtenir les données NVT pour que celui-ci entre dans le dossier R1 dans les coffres-forts. De la même manière, vous sauvez ça et ce sera tous les quatre. Nous allons avoir besoin de ces plateformes de stockage et des trois différentes. Copions-les dans nos structures, suivez-les ici. Et puis ce que nous allons faire, c'est une fois de plus, nous allons juste copier des fichiers JSON au comptoir. Et vous verrez encore une fois que, même avec les blocs de scie sauteuse, ce n'est pas si fou. Nous allons copier sur celui-ci qui sera la plate-forme de soulignement de stockage. Ce sera le nom de la structure générale elle-même et la lune le fera une fois que vous pourrez la configurer. Fonctionnalité de structure, également plate-forme de stockage, mais il suffit de changer le nom ici en plate-forme de stockage. Et le nom des biomes ici n'était que ce fichier JSON ici, plateforme aussi. La même chose de liste dans la structure, définie. La structure se restitue à la fonction de structure configurée. Et puis celui-ci va être quelque chose comme ça. Donc encore une fois, un sel et l'espacement, je veux dire, on peut à peu près le garder tel quel , juste changer un peu. Vous y allez. Et puis c'est à la maison de gabarits, aux pools de gabarits. Nous allons donc utiliser la maison délabrée ici. Je veux changer cela en plateforme STORD et nous avons les deux Jason Fancier, le pool de sites et le pool de magasins. Commençons par le pool historique ici, en changeant cela par notre plateforme de stockage, pool étoile numéro un, puis celui-ci par la plate-forme de stockage. Ce sera le devis principal non guilleté dans le fichier VT vers lequel il pointe. Cela va donc pointer vers ce fichier NVT ici. Et ensuite, la piscine latérale va être intéressante. Ce sera, bien sûr, une fois de plus, changer le nom ici et la blessure est au lieu de pointer vers la maison délabrée du côté droit, nous voulions en fait pointer le diamant, par exemple. plate-forme de stockage de soulignement. Oui. Et ensuite, nous voulons aussi que les deux autres nous supprimions celui-ci ici. Nous allons simplement supprimer les commentaires par souci d'argumentation. Je vais le faire et ensuite je le copierai deux fois. Et nous pouvons également changer le poids ici. Disons donc, par exemple, que nous avons trente-trois pour cent de chances de frayer l' un ou l'autre d' entre eux, disons simplement. Et puis celui-ci ne sera pas le moment, mais la plate-forme de stockage de soulignement des articles du comté d'Orange et ensuite il s'agira de la plate-forme de stockage Emerald Emerald Spot. Encore une fois, ces emplacements pointent vers les fichiers NVT. Et il va prendre un de ces fichiers NVT et le générer avec des poids différents ici. Si nous avons le poids des trois, ce sera à peu près un sur trois. Et nous pourrions aussi dire, peut-être que vous savez quoi, en fait, c'est deux fois plus probable. Il s'agit peut-être d'une période de cinq ans. Cela va donc augmenter 50 % du temps. Cela va augmenter 20 % du temps. Dans ce 10 % du temps, il ne s'agit que des poids sur la façon dont il se produit. Et c'est littéralement tout ce que vous devez faire. Nous en avons déjà fini avec la configuration. Une fois de plus, lorsque nous avons déjà préparé les fichiers JSON une fois qu'ils ont été copiés, vous avez fini comme si c'était très, très simple. Et oui, bien sûr, si vous avez des idées plus folles, si vous avez même étendu plusieurs blocs de scie sauteuse et des trucs comme ça, alors bien sûr, ça va devenir de plus en plus compliqué. Mais disons un bon début. Et je recommande vivement d'être ouvert à l'expérimentation, surtout, d'essayer des trucs et de voir ce que vous pouvez trouver. Donc pour la dernière fois pour les structures, allons dans Minecraft, créons un nouveau monde et voyons si notre nouvelle plateforme de stockage repère ou un Minecraft fantastique et j'ai déjà espionné quelque chose ici, et c'est probablement le pire des cas. Vous pouvez voir que seulement la moitié du sport, c'est très intéressant. Il y aura donc probablement une faute de frappe quelque part, ce qui est très étrange, mais nous allons voir attendre une seconde. Le problème est très drôle parce que je viens de changer les noms de la maison délabrée une fois. Ainsi, vous pouvez voir dans la maison délabrée, j'ai changé les choses en la plate-forme de stockage. Et la plate-forme de stockage a ces choses dans la maison délabrée. Ce n'est donc pas tout à fait ce que j'avais en tête ici. Faisons ça comme ça. Nous allons juste copier ça. Et puis on va le faire, c' est que celui-ci va être supprimé. Nous allons donc retirer le nom de ça, est-ce que ce nom est retourné à la maison délabrée. Et puis celle-ci sera l'usine de soulignement de stockage. Mais maintenant, cela devrait fonctionner correctement. Voyons donc voir. C'est le côté de la plate-forme de stockage de démarrage de la plate-forme de stockage du pool pour l'instant, nous devrions aller bien. Le problème ici était donc que j'ai accidentellement changé les fichiers JSON de la maison délabrée au lieu de la plate-forme de stockage. Les fichiers Jason peuvent arriver à tout moment, donc pas de soucis là-bas. Mais il a vu que parfois on ne le trouve pas vraiment. Il faudrait donc passer par phrase. Vous voyez que vous pouvez trouver quelque chose dans le terminal. Il n'y avait rien ici. C'était juste une flèche dans les dossiers, mais pas de soucis. Voyons maintenant si elle apparaît correctement ou non. Très bien, Si vous répondez à nouveau dans Microsoft et voyons, je ne sais même pas si cela apparaît dans ce biome réel. Nous allons donc localiser la plateforme de stockage de cours MC et voyons si cela fonctionne. N est là, on y va. Il fonctionne enfin. Vous ne pouvez donc pas voir de soucis du tout. Il peut toujours arriver qu' il y ait une faute de frappe quelque part. Mais dans l'ensemble, vous avez vu que ce n'était pas une année folle. C'était très, très simple à régler. Voyons si je ne peux pas voler et trouver une autre de ces plateformes de stockage, peut-être avec autre chose alors déjà le calcium semble être aussi un calcul. En fait. Et c'est en effet, passons simplement à un endroit très, très lointain. Allons comme, je ne sais pas, 20 K. Et voyons si je peux en trouver un autre. Localisons sa plateforme d' épée et voyons si celle-ci a quelque chose de différent de ce que nous calculons. Bien sûr que non, car ce serait trop facile. Voyons P1 la dernière fois et voyons peut-être que nous pouvons trouver quelque chose. Allons au négatif 20, K à K, c'est bon. Et puis localisons le cours MC vers la plateforme Une fois de plus. Voyons si cela va marcher. Je pense que nous sommes en réalité en dessous. C'est là. Et nous avons trouvé une certaine différence. Nous pouvons donc voir ici celui avec les émeraudes. Donc, tout fonctionne totalement comme on s'y attendrait. Et vraiment génial. Donc tout fonctionne très bien et oui, c' est à peu près à quel point il est facile pour certaines structures de scie sauteuse d' être ajoutées à Minecraft. Mais ce serait à peu près tout cela pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Bien sûr, tous les fichiers JSON des polices NVT sont également disponibles pour le téléchargement dans le référentiel GitHub, un individu tout aussi. Mais sinon, je vous verrai lors de la prochaine conférence. 115. (1.18.2) Motifs d'armure 3D personnalisés: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter un modèle d'armure 3D personnalisé à Minecraft. Nous allons transformer notre armure Oracle come en un modèle d'armure 3D personnalisé. Et pour cela, nous allons encore une fois utiliser un banc de blocs. Comme vous pouvez le voir, j'ai déjà préparé l' armure Oracle come ici. Mais c'est plutôt simple. Nous allons donc utiliser Echo Lip une fois de plus. Et la façon dont cela fonctionne, c'est que si vous créez un nouveau modèle animé de geckos ici, nous pouvons simplement faire une armure de test ici. Ensuite, ce que vous pouvez faire, c'est que vous pouvez passer sous paramètres du modèle de lèvre gecko Fichier. Vous pouvez simplement transformer cela en armure, puis cela va générer le joueur Minecraft ici. Vous pouvez voir que vous ne touchez pas à ça. Donc, fondamentalement, ces différents blocs ne doivent pas être touchés. Ensuite, tout ce que vous voulez ajouter sous la tête d' armure, le corps de l'armure, etc. Par exemple, vous pouvez cliquer sur Add Cube, puis vous pouvez commencer à ajouter votre armure personnalisée ici, Z, il suffit de la dimensionner. Et cependant, vous étiez essentiellement comme votre armure à regarder. Vous pouvez le dupliquer, Control D. Là, vous y allez. Ensuite, vous pouvez simplement y ajouter des trucs et vous pouvez bien sûr le rendre aussi personnalisé que vous le souhaitez. Ce que j'ai découvert, c'est que fabriquer l'armure est en fait assez difficile. Comme si ça paraît beau, ce n'est pas si facile. Donc c'est que ce n'est pas vraiment bon, surtout quand on prend, par exemple, le bras ici par souci d' argumentation, on peut le faire pivoter. Vous pouvez voir si je le fais pivoter un peu, qu'il manque vraiment ici et des trucs comme ça. Donc ce n'est pas le cas, ce n'est pas si intéressant, ce n'est pas si fou. C'est juste un exemple de pièce d'armure. Et ce que vous pourriez faire ici est également ce qui suit. Lorsque vous avez tout créé, ce que vous pouvez faire est de supprimer cette texture pour le moment. Et puis, vous pourriez avoir quelque chose comme ça. Ce que vous pouvez faire, c'est que vous pouvez appuyer sur Contrôle a, puis cela va sélectionner chaque élément de la chose différente que vous avez ici. Et nous pouvons le faire, c'est que vous pouvez créer une nouvelle texture à partir de cela. Nous allons donc simplement garder cette texture et ensuite vous pouvez voir qu'elle remplace tout ce qui se trouve sur cette texture. Maintenant, si vous enregistrez cette texture, je vais le faire. Vous avez déjà préparé quelques trucs ici. Pire que ce que je peux faire, c'est que je pourrai le faire, eh bien, c'est à quoi ça ressemble, non ? Quand je viens de l'ouvrir, vous pouvez voir qu'il vous donne une thèse de l'armure où vous voulez vraiment dessiner cela. Donc, ce que nous pouvons faire, c'est simplement ajouter ceci ici directement à la texture. Nous allons juste l'ouvrir. Ce que vous pouvez faire, c'est que nous pouvons aller ici et ensuite changer certaines choses. Par exemple, ici même, je pense que ça devrait être comme l'arrière de la tête ou quelque chose comme ça. Nous pouvons simplement dessiner tout ça et ensuite le sauvegarder. Et si je vais à nouveau dans le banc de blocs, cliquez avec le bouton droit de la souris sur rafraîchir, alors vous pouvez voir maintenant que cela a changé et à l'arrière de la tête, vous verrez là, et j'aurai cette couleur, colorier et faire la texture assez difficile, comme si ce n'est pas si facile à faire. Vous pouvez également cliquer sur les phases individuelles et vous pouvez voir où cela se trouve. Ainsi, vous pouvez voir la barre en haut de la tête est en fait ceci. Alors je peux dire, OK, celui-ci ici, je crois, ou ne s'est pas trompé. Je peux donc dire, oh, faire le bleu et le sauvegarder à nouveau. Encore une fois, allez ici, rafraîchissez-vous. Et vous pouvez voir maintenant que le haut de la tête est bleu. C'est donc définitivement une chose qui va prendre un certain temps. Je veux juste vous montrer comment vous pouvez ajouter. J'ai donc déjà préparé la texture. Prenons simplement la texture des résultats Oracle ici. Et puis ce que j'ai fait, c'est que j'ai ajouté ce noir ici parce que ce que je voulais faire, c'est sur la tête et tout, je voulais les déplacer vers le bas pour qu'il soit un peu plus facile Je vois essentiellement la distinction entre mon armure réelle et le joueur. Je peux donc le faire ici aussi. Vous y allez. Et puis l'autre jambe aussi. Donc, fondamentalement, tous les « Ne touchez pas une seule fois ». Je viens de passer à l' armure noire juste ici, juste pour que je puisse avoir moins de contraste là-bas pour que je puisse voir, d' accord, alors que ça, que fais-je ici ? Ce modèle de pincement de blocs sera bien sûr également disponible en téléchargement. Et ce que vous faites ensuite, c'est que vous pouvez simplement accéder à Export de fichiers, Export, modèle de lèvre gecko. Ce sera un modèle géo une fois de plus, je l'ai déjà, bien sûr, donc nous allons simplement le remplacer. Et ce que vous pouvez faire , c'est d'aller dans le tissu ici, puis de continuer dans un esprit intelligent, continuons et ajoutons cela. De quoi allons-nous avoir besoin ? Ce que nous allons avoir besoin de trois choses différentes. L'un d'eux est un article personnalisé. Donc, dans le paquet d'articles personnalisés, nous allons faire en sorte que le compte devienne un objet d'armure. Et cela va faire ça. Nous allons étendre l'élément d'armure mod, en fait qu'il a la même fonctionnalité. Nous allons créer un constructeur correspondant super. Et puis nous allons aussi le faire, ce qui est très important, c'est qu'il y a eu un problème dans l'armure de résultat OriC ou dans l'élément plus d' armure. Dans cette méthode d'armure ici, normalement je vais le faire, c'est que j'ai la bonne méthode ici. Vous pouvez voir que nous vérifions simplement que nous jetons ceci sur l'élément d'armure, qu' il s'agisse ou non d'une armure ici La raison de le faire est autrement, lorsque vous avez un électron et le reste des armures remplies, et l'une d'elles est le plus d'armure, alors le jeu va s'écraser parce que vous ne pouvez pas lancer l'électron sur une armure. Gardez cela à l'esprit, mais c'est presque tout ce que nous devons faire ici. Et ensuite, pour l'article d'armure de calcium, ce que nous voulons, c'est quelques choses. Nous voulions donc ajouter les outils que j' anime également. Survolez cette méthode d'implémentation va implémenter la méthode des contrôleurs de registre ainsi que la méthode d'usine GET. Mais vous pouvez également le faire si vous pouvez appuyer deux fois sur la touche Maj et regarder l'élément d'armure de pomme de terre ici. C'est un exemple. C'est donc génial. En théorie, vous pouvez simplement tout copier. L' armure de pomme de terre et de pomme de terre est donc à peu près l'exemple donné de la lèvre gecko ici. Vous pouvez donc également y jeter un coup d'œil. On va juste continuer. Donc, bien sûr, nous avons besoin du I anime toute l'usine d'animation. C'est quelque chose que nous avons également vu avec les entités personnalisées. Nous allons essentiellement rendre l'usine ici même. Et puis, pour le prédicat, ce que nous allons faire est à peu près ce que vous pourriez faire en théorie, comme je l'ai dit, littéralement, prendre toute cette méthode ici, le prédicat, parce que c'est le chose dont nous allons avoir besoin. Et nous pouvons simplement le reprendre et le copier parce que ce sera toujours le même. La seule chose que nous allons changer, c' est que l'animation ici va être qualifiée d'inactive dans ce cas. Et ensuite, ici, nous voulons que ce soit un peu différent. Donc il n'y en a pas, je suis des registres. Ce sera des objets de mod, des stands de démarrage, et ensuite nous allons passer plus d'objets, commencer des leggings. Nous allons opter pour plus d'objets commencent à être joués, puis enfin, plus il y a d'objets qui démarrent les casques il y a. Et c'est à peu près tout ce dont nous avons besoin ici. Alors bien sûr, le prédicat pour être assez explicite ici, nous allons utiliser cela dans la méthode du registre ici. Ok, nous allons simplement renommer ça en données. Vous y allez. Ça devrait être ça. Bien sûr, tout le code est également disponible pour vous dans le référentiel GitHub, un individu tout aussi bien, mais cela devrait être à peu près tout ce dont nous avons besoin. Vous avez également de bons commentaires ici, ce qui est vraiment utile. C'est également plutôt cool, juste après avoir ajouté cette armure, nous devons maintenant changer les quatre pièces d'armure pour cela, ou cela peut devenir un élément d'armure qui est vraiment nécessaire ici. Ensuite, nous pouvons l'utiliser dans le modèle et le moteur de rendu. Ils vont donc entrer dans le package client de mon entité juste ici sous un nouveau paquet appelé armor. Vous pouvez également les déplacer n'importe où dans l'article, le client, n'importe où. Ils n'ont donc pas besoin d'aller ici, mais je vais juste les mettre là. Et il va y avoir l' Oracle Come Arm ou le modèle. Et l'autre va être le rendu de l'armure de résultat Oracle, est-ce qu'il y a ? Le modal va étendre le modèle réel animé de type ou un objet d'armure de calcium. Ensuite, nous allons simplement survoler cela, implémenter les méthodes. Ce seront donc les trois méthodes qui renvoient les identifiants. Maintenant, je l'ai déjà préparé. Je vais juste copier ça, mais ça devrait être assez explicite. Cela indique le fichier JSON du modèle que nous avons exporté depuis le banc de blocs. Ce n'est que notre fichier de texture et il s'agit des animations. Et j'ai préparé les animations. C'est juste un fichier Jason vide. Pas tout à fait, mais c'est assez explicite. Il suffit donc d'ajouter les fichiers JSON ici. L'animation est bien sûr également disponible. Et c'est ce que je viens d'utiliser pour toutes les textures différentes, pour toutes les différentes armures. Si aucune animation spécifique n' est associée à celle-ci. Et vous pouvez à peu près faire cette animation qui n' a rien dedans. Et puis, ce que nous allons faire, c'est qu'on va prendre l'armure GO et l'obtenir ici il y a eux. Bien sûr, le modèle réel dans ce cas. Et ensuite, la texture que vous pouvez voir devrait passer sous les textures, armure de modèle ou la texture d' armure de calcium. Il y aura donc un nouveau dossier ici, des modèles, puis un nouveau répertoire appelé armor. Et ensuite, reprenons aussi la texture. Ça va être celui-là juste ici. Vous y allez. Juste à des fins de test, bien sûr, ou de texture d'armure de revenu. C'est exact. Vous y allez. Donc, ça devrait être très bien. Et puis le modèle est terminé. Nous pouvons ensuite ajouter des éléments au moteur de rendu. rendu va étendre le moteur de rendu d'armure géo une fois de plus le moteur de rendu d'armure géo de type compte déjà l'élément d'armure. Nous allons juste survoler cela et créer une correspondance de constructeur super. En fait, nous ne voulons pas qu'il y ait quelque chose ici et ici, nous voulons le nouveau modèle Oracle Cloud Armor. C'est assez explicite. Et puis, ce que nous allons faire, c'est que nous voulons régler ça, donc nous voulons fixer l'os de la tête, l'os fête et ainsi de suite et ainsi de suite sur les noms. Et ces noms vont être les noms ici. Nous pouvons voir que c'est la tête d'armure ici. Nous mettons l' os de la tête à l'armure de la tête. Cela doit être le cas. Nous pouvons également jeter un coup d'œil au rendu de l'armure de pomme de terre. Je crois que si je jette un coup d'œil à cela, le moteur de rendu ici même, je vois qu'il fait aussi la même chose. C'est juste, il suffit de régler ça. Et c'était très intéressant et je ne sais pas pourquoi c'est le cas, mais il faut placer l'os de la jambe gauche sur l'armure de la jambe droite, l'os de la jambe droite à l'armure gauche. Je ne sais pas pourquoi c'est le cas. C'est au moins ce que j'ai trouvé. Je ne sais pas pourquoi il a changé ici. Je ne peux pas vous dire pourquoi, mais c'est exactement ce que j'ai trouvé. C'est une solution très facile. Ce n'est donc pas une faute de frappe, c'est en fait comme ça que vous devez le faire, moins c'était pour moi. Et une fois que vous l'avez ajouté , nous pouvons réellement l'utiliser dans notre classe de clients de cours MC. Il y aura donc juste ici. Nous voulons le faire, bien sûr, dans la méthode client non initialisée, nous voulons dire GU armor renderer.org, enregistrer le rendu d'armure avec un nouveau ou le moteur de rendu d'armure calcique. Ensuite, nous voulons transmettre tous nos articles que nous avons. Encore une fois, nous voulons passer les bottes, puis modeler les éléments. Non. Ce sera le leggings. Et puis nous avons des éléments mod, commencez à diviser. Non, ce n'est certainement pas le cas. Il y a un signe de fleurs de cerisier et ensuite nous avons plus d'objets, cet élément. Vous y allez. Et ça devrait être très bien. Aucune erreur. Je devrais être président ici. Et je crois que tout ce dont nous avons besoin, c'est tout ce dont nous avons besoin. Il y a encore une chose que je veux ajouter, juste pour que nous l'ayons ici. Ajoutons-le aussi. Nous pouvons appeler gecko LEP point initialize. Je ne suis pas sûr à 100% si c'est nécessaire ou non. Cependant, c'est incroyablement juste une bonne idée de l' ajouter simplement pour que nous l' ayons dans notre propre méthode initialisée. Je ne suis pas sûr à 100% de l'avoir testé. Qu'il brise ou non le mod, il ne le fait pas, si vous ne l'ajoutez pas, simplement en étant sûr, ajoutons cela aussi. Sinon, je pense que c' est à peu près tout ce dont nous avons besoin. Je veux dire, si quelque chose ne fonctionne pas, alors bien sûr, je vais pouvoir le voir immédiatement dans le jeu. Entrons dans Minecraft et voyons si ça marche. Conseils de Minecraft. Et prenons juste l'armure ici et voyons si elle fonctionne. Et en effet, c'est le cas. Et bien sûr, nous obtenons toujours l' effet d'armure client ici. Et ça a l'air incroyable. La chose fonctionne aussi, comme je l'ai dit, ce qui rend l' armure vraiment, vraiment cool. C'est une chose très difficile, comme l'ajout de l'ARMA comme vous l'avez vu, n'est-ce pas ? Ce ne sont que quelques classes qui changent un peu les choses. Et puis vous avez l'armure, l'exportation, les fichiers JSON et tout ce genre de choses. C'est assez simple, mais faire paraître vraiment cool, avoir une texture cool, une texture cool, un modèle cool qui est définitivement très dur, mais je veux dire, c' est comme ça qu'il est facile de ajoute l'armure à Minecraft, n'est-ce pas ? C'est ce qui conclut cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors de la prochaine conférence. Oui. 116. (1.18.2): Ou je souhaite la bienvenue au cheval en tissu pour 118. Et dans cette conférence, nous allons ajouter un villageois personnalisé à Minecraft. Oui, c'est maintenant un villageois coutumier. Au lieu de simplement ajouter quelques métiers à des villageois déjà existants, nous allons ajouter un villageois client, mais c'est en fait beaucoup plus simple que ce que je pensais dans le forfait de cours MC. Nous allons créer un nouveau paquet appelé villageois. Au lieu de là, nous allons créer une nouvelle classe Java appelée les villageois du mode. Maintenant, cela va contenir à la fois le point d'intérêt ainsi que le contenu professionnel ou le contenu de ce cours que je vais copier, mais je vais tout expliquer au fur et à mesure. Et aussi, bien sûr, tout est disponible pour vous dans le passé GitHub ou dans les particuliers. Vous pouvez voir si vous avez un point d' intérêt et un professionnel villageois, ceux-ci sont bien sûr liés les uns aux autres. Un point d'intérêt est celui où un villageois obtient sa profession du professionnel. Alors, bien sûr, c'est juste le professionnel. Jetons donc tout d'abord un coup d'œil au point d'intérêt réel. Vous pouvez voir que ce que nous faisons ici consiste essentiellement enregistrer un type de point d'intérêt juste sous l'ID du modèle. Et notre nom doit être assez explicite. Et vous pouvez voir ce que nous faisons ici, c'est que nous appelons cet accessoire parce que sinon nous devons appeler cette interface, ce mixage. Sinon, ça ne fonctionnera pas. Mais l'idée générale est que nous créons essentiellement un point d'intérêt avec le nom qui nous est donné ici. Et puis un bloc d' un certain état. Bien que l'idée soit que si un bloc que nous mettons ici, lorsque nous appelons cette méthode de point de registre, alors l'oracle come blaster et tous ses différents états sont fondamentalement sera enregistré en tant que point d'intérêt. C'est le blastopore, c'est l'idée. Et après avoir enregistré le point, nous enregistrons ensuite la profession. Et vous pouvez voir ici encore une fois avec un nom donné, puis le type de point d'intérêt spécifique à l'âge que nous transmettons dans le rapport d'explosion ici même et dans la création de la profession réelle. C'est donc le nom, c' est le type de point d'intérêt chacun des deux ensembles immuables ici. Nous pouvons le faire, c'est que nous pouvons faire du milieu de la souris, cliquer sur le côté professionnel ici, et nous devrions être en mesure de voir cela. Il s'agit donc des objets collecteurs et des chantiers secondaires. Je viens de les mettre dans des ensembles immuables vides parce que cela va être plus facile pour le moment. Vous pouvez toujours jeter un coup d'œil au village ou à la profession et à d'autres personnes utilisées. Nous pouvons donc jeter un coup d'œil à celui-ci ici même. Je pense que la méthode du registre, par exemple, l' agriculteur ici. Vous pouvez voir qu'il y a de l' herbe, des graines de mauvaises herbes, des sièges de betteraves excellents, peuvent réellement ramasser. Et puis il y a aussi une terre agricole comme lieu de travail, pour ainsi dire. Mais on va juste le garder comme ça. Je ne veux pas que ce soit trop compliqué. Vous avez toujours à votre disposition tous les cours de vanille pour voir comment ils fonctionnent. Et c'est à peu près ce dont vous allez avoir besoin. Alors, cette méthode des garçons de configuration ici, nous devons appeler la configuration pour chaque point. Donc, si vous avez un autre point, ajoutez-le également. Ajoutez votre sondage ici et tout ira bien. Et cela doit être froid à l'intérieur de votre cours MC initialisé, appelons-le juste ici. Ce sera les villageois du MOD qui ont mis en place des garçons il y a, et ce devrait être à peu près tout le code dont nous avons besoin. Maintenant, nous allons faire deux autres choses. Une autre chose dans le code, ou nous allons le faire, c'est que nous allons en fait ajouter ou au moins un ou deux métiers différents, car les traits nous allons ajouter de la même manière que nous avons ajouté ces traits avec quelque chose comme des doublons. Et puis, au lieu de choisir un village ou des professions, nous allons choisir des villageois à moteur, pas un maître de l'explosion. Et puis ajoutez-en un ici. Et disons simplement quelque chose comme ça, comme neuf émeraudes. Et ensuite, nous allons juste en ajouter une seconde. Peut-être que pour le compte, vous pouvez choisir une hache. Vous y allez. Et ensuite, il suffit d'ajouter un troisième, qui sera de niveau deux. Et ce sera peut-être la pelle ou une quantité d'air différente, ça va être cinq, c'est très bien. C'est ainsi que vous ajoutez ensuite les différentes offres commerciales. Il y a peut-être une autre façon de le faire ici même, mais j'ai trouvé que c' était tout à fait très bien. Il y a aussi des œuvres , puis il y a une chose très étrange la texture ou les textures. Allons simplement aux bibliothèques externes jusqu'ici, le projet a fusionné le nom et ainsi de suite le dossier Assets, textures Minecraft. Cela devrait être sous entité de ne pas confondre une entité, puis jusqu'à un villageois ici, puis aux professions. Nous avons donc les professions ici et le villageois ici. Nous allons donc avoir besoin du villageois ainsi que de notre profession coutumière. Maintenant, je viens de prendre le professionnel de l'armure ici, l'image et je l'ai rendue bleue parce que je fabrique une tenue de villageois personnalisée est en fait très, très, je veux dire, ce n'est pas si facile, non ? Donc, c'est comme si, c'est beaucoup. Donc, ce que nous allons faire, c'est qu'on va copier ça. La structure sera donc sous l'espace de noms de cours EMC. Donc ça va être, ça va être sous textures grossières de MC. Nous avons déjà l' entité ici, et ensuite nous avons besoin du villageois ici. Un villageois s'en va et nous aurons également besoin de la profession. Je vais le copier ici pour que vous puissiez voir que nous avons la profession ici, le maître de l'explosion ainsi que le villageois. Je ne sais pas pourquoi nous avons besoin du village ou du moins dans mes tests, j'avais besoin d'un villageois, d'un PNG. Je ne sais pas pourquoi c'est le cas, mais c'est ce que c'est. Et puis la masse explosive ici, nous avons, comme vous pouvez le voir, vient de le rendre bleu essentiellement, parce que je fais un look entièrement personnalisé pour un villageois. En fait, c'est assez dur. C'est donc similaire à l'armure 3D personnalisée. Donc oui, c'est à peu près quelque chose. Et la dernière chose dont nous aurons besoin, c'est la traduction du nom de la profession. Et cela va aller dans le fichier ENR . Et ça va être le suivant. Donc, on va y aller juste ici. Et ce sera un micro village d'entités ou un maître de l'explosion. Et voilà. Le maître de l'explosion sera ce qu'il dit quand nous ouvrirons l'inventaire pour échanger avec le villageois. Et c'est à peu près tout ça. Voilà maintenant les étapes. Encore une fois, bien sûr, tout ce qui vous est disponible dans la posture GitHub en individuel tout aussi. Et c'est à peu près tout ce dont vous avez besoin pour un villageois personnalisé. Voyons donc si cela fonctionne ou s'il nous trouve dans Minecraft. Répondons donc à un villageois et posons le blaster. Et voilà, ça marche très bien. Nous avons maintenant un maître de l'explosion qui échange exactement les traits que nous avons essentiellement donnés ici. Alors, prenons juste quelques émeraudes et passons simplement au niveau suivant ici. Voyons juste, une fois que le niveau sera élevé sur les niveaux littéraux, on verra dessus, et on y va . Et maintenant, comme vous pouvez le voir, nous pouvons maintenant obtenir la pelle pour ce niveau deux. Et c'est aussi un apprenti. C'est vraiment génial. Et en fait, il est facile d'ajouter un villageois personnalisé à Minecraft. Et ce serait à peu près tout ça pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Comme toujours, tout le code est disponible dans le référentiel GitHub, un individu tout aussi. Et je vous verrai lors de la prochaine conférence. 117. (1.18.2): Bienvenue sur le cheval en tissu pour 118. Et dans cette conférence, nous allons ajouter une entité bébé personnalisée à notre tigre. Maintenant, c'est beaucoup plus facile que ce que je pensais père, c'était beaucoup plus compliqué, mais ce n'est pas le seul besoin de changer les choses dans l'entité comme dans le rendu. Et nous allons commencer dans l'entité elle-même, ce que nous allons réellement entrer dans deux ou trois choses. La première chose sera les objectifs de la viande animale. Ce que nous allons faire, c'est que nous allons juste dupliquer la piste ou le but ici. Et nous allons appeler cela le, c'est l'objectif de compagnon animal juste ici avec ça, puis en passant également en un. D va être le trans ici et la priorité trois devrait aller bien. D'habitude, ça va aller. Il est très important de l'ajouter et ensuite nous voulions également ajouter la méthode de lecture des éléments ici. Et puis ici, nous pouvons essentiellement filtrer si un certain élément avec lequel nous cliquons avec le bouton droit de la souris sur cette entité va faire sorte que l'élevage soit trié, pour ainsi dire. Et pour notre cas, nous allons utiliser des articles de bœuf noir dans ce cas, si nous cliquons avec le bouton droit sur le tigre avec du bœuf, il passe essentiellement en mode réunion. C'est l' idée générale que vous avez. Et puis, bien sûr, la dernière chose ici est l'enfant créé. Mais cela va nous obliger à faire des entités mod, pas à créer des points tigres, puis à passer le paramètre mondial ici, et c'est tout. En théorie, les bébés allaient déjà apparaitre. Cependant, ils auraient la même taille que le tigre, ce qui n'est évidemment pas tout à fait ce que vous aviez en tête, je pense. Et pour cela, nous allons aller dans le moteur de rendu et nous allons simplement remplacer les efforts de type de rendu get. Donc ça va être celui-là juste ici. Et ce que nous voulons faire, c'est que nous voulons simplement garder ça seul. Nous allons juste modifier cela un peu là où il va le lire un peu mieux. Nous voulons simplement faire une déclaration si le point animatable est bébé, puis faire autre chose. On va faire autre chose. Ce que nous voulons faire, c'est que nous voulions juste prendre la pile et la mettre à l'échelle. Donc, ça va être l' échelle de l'animal. Le 111 va bien sûr être de la même échelle qu'avant. Et puis chez le bébé, si nous passons ça ici, nous voulons, par exemple, faire de ce noyau 0,4 pour que le bébé soit environ 40 % de la taille de l'adulte normal. Et c'est tout. C'est tout ce dont nous avons besoin. Encore une fois, très facilement réalisable, modifiable. Vous pouvez simplement modifier celui-ci ici pour un autre objet. Si vous ne voulez pas de bœuf, si vous voulez autre chose, il y a quelques choses que vous voudrez peut-être faire. Vous pouvez y penser, mais si vous cliquez avec le bouton droit sur le tigre avec un, avec le boeuf, vous voudrez peut-être faire une autre vérification et votre méthode Interact mob ici que vous ne commencez pas à l'écrire. Et il se peut aussi que vous ne puissiez pas écrire un bébé parce qu'à l'heure actuelle nous pouvons écrire un bébé. Ce devraient être des choses assez explicites. À ce stade, je suis en fait très confiant que vous devriez pouvoir le faire vous-même facilement. Mais quel que soit le cas, c'est l'enfant. Voyons donc si nous avons ajouté des enfants à Minecraft ou des fossiles dans Minecraft. Alors, passons aux tigres et prenons du bœuf ici. Et voyons simplement, cliquez avec le bouton droit, cliquez avec le bouton droit de la souris. Et puis voyons voir. Je n'ai pas de particules pour le moment parce que j'ai éteint les particules, mais vous pouvez déjà voir que cela fonctionne. Alors, voyons les paramètres vidéo sous les particules. Allons juste chercher toutes les particules ici. A moins que vous ne voyiez qu'il y a encore une fois, voilà. Nous obtenons également les particules et c'est là. Voyons voir, il y a le bébé animal dans une version plus petite que les grands. En fait, il fonctionne complètement comme on s'y attendrait. Nous pouvons également cliquer dessus avec le bouton droit de la souris, puis il devrait aussi engendrer un bébé animal. C'est aussi une autre chose que vous pouvez faire. Vous y allez. fait, ils vont grandir, ça prend du temps. Je peux vraiment vous montrer si c'est dans la classe des animaux. Eh bien, mais c'est à quel point il est facile d'ajouter des bébés animaux aux microbes. Si nous descendons l'arbre ici, il y a dix entités capables d'obtenir, entité animale dans la classe des entités animales. Ici, l'élevage se refroidit, peut-être qu'il est là, quelque part ici. Je pense que c'est peut-être encore plus bas. Peut-être y a-t-il, dans l'entité passive, 24 000 négatifs. Cela devrait donc être 24 000 prises, je crois, jusqu'à ce que cela crée un adulte fondamentalement. Donc, en théorie, vous pourriez également changer cela. Peut-être que je ne suis pas sûr qu'il s'agisse d'un fichier, donc peut-être que cela ne peut pas être modifié, mais il y a essentiellement où il en est. Et c'est aussi à peu près à quel point il est facile d'ajouter des entités personnalisées à votre entité, à votre entité. Et cela terminerait cette conférence ici même. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau. Et je vous verrai lors des prochaines conférences. 118. (1.18.2) Géodes personnalisés: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter une géode personnalisée à Minecraft. Le rendement habituel est donc assez simple, toutes choses considérées. Voyons donc comment cela fonctionne dans le package mondial, paquet d'entités dans la classe d'entités configurées R, je vais copier sur la folie réelle de configuration des entités géode. Et ça va ressembler à beaucoup. Mais ne vous inquiétez pas, nous allons parcourir presque toutes les lignes et voir ce qu'elles signifient. C'est donc l'oracle come geode ici. Le format est peut-être un peu différent, qu'ils puissent voir tout ce qu'ils ont passé. Et l'idée générale est que nous avons une entité géode en conflit avec certains conflits de couches. Ici. Les conflits de calques sont en fait la chose vraiment intéressante car ici nous pouvons définir, vous pouvez voir 12345 blocs différents et ensuite aussi une liste de blocs ou d' états de blocs dans ce cas, mais à peu près la même idée. Si nous entrons dans le conflit de la couche G0, nous pouvons réellement voir quels sont ces différents états de blocs. Nous pouvons donc voir qu'il existe une couche intérieure de fournisseur de remplissage. Il existe un autre intercalaire agrandi. Il y a une couche intermédiaire une heure plus tard et un bloc intérieur qu'il ne peut pas remplacer, puis également une balise de blocs non valide. Alors, que signifient toutes ces choses folles ? Eh bien, parlons d'abord des blocs intérieurs. Les blocs intérieurs sont essentiellement, dans le cas de la vanille, l'améthyste en herbe. Donc, si nous avons le bouton central de la souris, cliquez dessus et nous pouvons voir la classe d'entités configurées souterraines ici et voir les agrégats de géode améthystes entrer ici et voir l'air est le premier un. Ce n'est donc que le bloc intérieur le plus absolu. Et bien sûr, ce que vous voudriez , c'est que votre DIEU soit rempli d'air. C'est pourquoi c'est de l'air dans ce cas. Et le bloc Emesis est le, voyons, il s'agit des fournisseurs de couches internes. Il s'agit donc de la première couche intérieure. Ensuite, nous avons un fournisseur d'état de bloc d'une couche interne alternative. Maintenant, ce sont l'améthyste en herbe. Ce sont donc les blocs où la Terre est en train de grandir. Nous avons également une calcite ici. Il s'agirait donc du fournisseur de couche intermédiaire. Et puis nous avons aussi le, laissez-moi vérifier cela ici, les muscles lisses et ce serait le fournisseur de la couche extérieure. Nous avons donc une couche intermédiaire et une heure plus tard, vous verrez dans notre exemple ici, si je reviens à cela, nous pouvons voir que l'erreur est la même chose que celle que nous avons une ardoise profonde que la maquillage général de la couche interne. L'oracle vient ou va être notre améthyste en herbe, pour ainsi dire, une couche extérieure de saleté. Et puis la couche complète sera le bloc Emeraude, tandis que le recalc et le bloc ici, là où se trouve cette liste, ce sera notre améthyste grandissante. Ainsi, dans la liste ici, vous pouvez voir ce sont les bourgeons MFA qui peuvent apparaître. Et dans notre cas, ce sera nos blocs de calcium juste pour un exemple ici, n'est-ce pas ? L'épaisseur doit être assez explicite. Il suffit de définir l'épaisseur ici. Une configuration de craquage détermine essentiellement la taille de certaines ouvertures dans cette géoode. Et puis vous avez certaines choses que vous pouvez modifier fondamentalement la distribution, multiplicateur de bruit et un décalage de génération, je recommande vivement, comme toujours, jouer avec les chiffres ici. C'est comme la meilleure chose que vous puissiez faire. Jouez également avec les blocs ici. Vous verrez dans un moment où nous avons réellement engendré cela dans un nouveau monde, à quoi cela ressemble réellement. Et vous comprendrez très facilement comment cela fonctionne. Donc, pas de soucis là-bas. Et c'est essentiellement l'idée générale. Joue avec ça. Bien sûr, tout cela est disponible dans un référentiel GitHub et individuel. Donc, pas de soucis là-bas. Passons à la classe d'entités Marketplace. Je vais donc copier ça aussi. Mais cela ne sera pas trop fou. En fait, faites quelque chose comme ça. Vous pouvez peut-être lire ceci. Vous y allez. Il y a l'oracle qui est vraiment placé et vous pouvez voir que nous faisons juste un placement rare ici de 42 parce que pourquoi pas ? Et puis nous avons besoin de la fonction de placement carré, du modificateur de placement carré désactivé. Ensuite, nous avons la hauteur uniforme de six à 50. Je viens de les choisir parce que ça ira bien une fois, euh, encore une fois, bien sûr, jouer avec ça, non ? Choisissez, choisissez différents décalages, n'est-ce pas ? Vous pouvez utiliser le fichier fixe en dessous de tout cela. Il suffit d'essayer un tas de choses ici et de voir ce que vous pouvez trouver avec les différentes valeurs ici. Et pour engendrer cela, eh bien, c'est assez simple. Nous voulons simplement entrer dans notre génération ici. Nous allons juste dupliquer celui-ci et nous voulons changer cela l'oracle venu ou placé à l'oracle come, GO TO placé. Assurez-vous également que la fonction Configurer ici est la géode. Et puis ici, nous faisons également référence la géode et c'est elle qui devrait être un petit créneau, vous êtes dans un nouveau monde. Créons un nouveau monde et voyons s'il fonctionne. Ou en France ou dans Minecraft. Et nous en avons déjà un exemple. Nous en avons donc trouvé une, une géode et vous pouvez voir, bien sûr, la couche la plus intérieure est essentiellement l'air ici. Et ensuite, vous pouvez voir que ce sont les différentes couches. Vous pouvez voir que c'est profondément la saleté ici. Ensuite, nous avons le remplacement de l' améthyste en herbe pour r ors. Et ensuite, sur certains d' entre eux, l'Oracle peut bloquer l'apparition et ce sont les endroits d'où les grappes réelles apparaîtraient. Le bloc Emeraude lui-même, vous pouvez le voir, est en fait très en dehors de lui. Vous pouvez donc voir que c'est en fait là la géode commence déjà et que c'est beaucoup. Vous pouvez donc voir ici alors tout cela est de la saleté et à un moment donné, vous commencez à trouver certains des différents blocs ici aussi. Et puis, à un moment donné, après avoir creusé beaucoup, vous pouvez voir que c'est beaucoup. Vous avez donc de nouveau atteint l'autre extérieur. Nous pouvons devoir aller de cette façon. Et puis, à un moment donné, voyons voir. On va aussi pouvoir trouver le GO à l'intérieur. C'est donc à peu près à quel point il peut être facile d'ajouter des champs personnalisés. Encore une fois, jouer avec les chiffres, jouer avec les blocs. C'est à vous de décider. Mais dans l'ensemble, il est très simple de l' avoir, de le générer. Et comme toujours, comme je l'ai dit, le code est disponible sur le référentiel GitHub et individuel, mais ce serait tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose de nouveau et je vous verrai lors de la prochaine conférence. Donc, oui. 119. (1.18.2) Bloc qui interagit avec Redstone: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons examiner comment implémenter Redstone dans votre bloc client. Qu'est-ce que ça veut dire ? Eh bien, nous allons faire de l'oracle une lampe, un bloc qui, au lieu de cliquer dessus avec le bouton droit de la souris pour l' allumer et l'éteindre, nous allons le faire fonctionner avec minerai Redstone, n'est-ce pas ? Nous avons un exemple : c' est le bloc de lampe Redstone. Comme toujours, le code source des microbes est votre meilleur ami. Appuyez deux fois sur la touche Maj et cherchons le bloc de lampe Redstone ici. Et vous pouvez voir que nous avons la méthode de mise à jour voisine ainsi que ces méthodes planifiées pour prendre. Ce sont donc les deux méthodes dont nous avons besoin. Il suffit de les copier, de les sélectionner et de les copier sur le contrôle C, contrôle V pour le coller. Et puis nous avons juste besoin de changer le couvercle ici pour collecter partout où il est dit LET, vous voulez juste dire la même chose ici aussi, et j'ai aimé aussi. Ensuite, nous pouvons rendre cela un peu plus facile à lire. Donc, au lieu de la valeur booléenne, nous voulions simplement aimer cela. Et puis le casting ici aussi, il n'est pas nécessaire que cela se produise en ce moment la question est de savoir ce qui se passe ici ? Eh bien, la méthode de mise à jour des voisins est appelée quand un voisin de cette mise à jour de l'état de bloc particulier dans le monde ne devrait pas être trop fou pour les idées générales que nous voulons savoir si oui ou non un bloc particulier est activé. S'il est allumé, il ne reçoit pas de courant, nous voulons l'éteindre et autrement. Si c'est le cas, s'il est éteint et qu'il reçoit de l'énergie, nous voulons l'allumer. C'est l'idée générale. Maintenant, c'est un peu plus compliqué dans mon esprit qu'il ne doit l'être, mais tout ira bien parce que c' est à peu près comme ça que la vanille fait aussi. Et puis nous planifions une prise de tick se fait ici. Vous pouvez donc voir que cela est appelé lorsqu'une coche planifiée est bien exécutée en gros. Et nous ne faisons que régler l'état à cette position particulière sur le cycle de l'état de click. Qu'est-ce que le cycle signifie ? Eh bien, nous ne faisons qu'inverser la valeur booléenne réelle. Par conséquent, il suffit de faire un cycle à travers toutes les valeurs. C'est très difficile à voir dans ce cas. Mais l'idée générale est simplement qu'elle passe en revue toutes les différentes valeurs de cette propriété d' état de bloc , car il s'agit d'un booléen, il n'y a que deux valeurs possibles. Par conséquent, il va simplement transformer un plis en vrai et un vrai en faux. Et c'est tout ce dont nous avons besoin. Vous pouvez donc voir qu'il reçoit le pouvoir Redstone à cette position particulière, et c'est tout ce dont nous avons besoin, n'est-ce pas ? Donc c'est juste une méthode booléenne ici qui demande : Hé, est-ce que ce bloc reçoit de l'énergie ? Et c'est tout ce dont vous avez besoin pour vérifier si l'alimentation est appliquée ou non à ce bloc. Et juste pour que nous l'ayons, c'est en fait le commentaire ici. Et créons simplement une ligne d'impression système et nous allons juste dire alimenté par. Et ensuite, nous allons dire cela dans le monde entier et nous avons quelques pouvoirs. Eh bien, les choses ici, vous pouvez voir qu'il y a un pouvoir émetteur, lire un peu de pouvoir et recevoir de l'énergie, être émise. Redstone reçoit Redstone, puis le plus fort, nous allons juste produire la puissance la plus forte. Cela va donc renvoyer un entier dans ce cas, et ça va aller de 0 à 15 car bien sûr, Redstone power, le maximum est 15 et le plus bas serait 0, ce qui ne serait pas du tout. Cela sera ensuite affiché dans la console ici à l'intérieur de l'intelligence lorsque nous cliquons avec le bouton droit de la souris sur ce bloc particulier. Maintenant, c'est tout ce que nous devons faire, surtout à partir de vanille. Maintenant, comme toujours, bien sûr, tout le code ici sera disponible dans une description dans le référentiel GitHub et individuel tout aussi. Allons maintenant dans un monde et voyons si cela fonctionne. Très bien, amis de Minecraft encore une fois, et j'ai déjà installé le laboratoire d'icônes Oracle ici. Prenons juste un levier et voyons voir. Et puis on y va, il s'allume et il s'éteint quand je suis, mais le levier s'éteint à nouveau. Et donc ce que nous pouvons faire aussi bien que possible avec cela. Alors, tu y vas. Et cela fonctionne également. Si je clique avec le bouton droit de la souris sur ce point et que je jette un coup d'œil ici dans l'inclinaison, nous devrions voir la puissance de 14. C'est donc bien sûr le cas parce que ce serait 15 , puis un autre avec la ligne Redstone ici, ce serait 14. Si j'allume également le levier ici et que je clique à nouveau avec le bouton droit de la souris, le levier ici et que je clique à nouveau avec le bouton droit de la souris, vous pouvez voir que nous en avons encore 14. Il est intéressant de noter que cela devrait être 15. Dans mon esprit, c'est très intéressant. Voyons si nous pouvons le faire comme ça. C'est ce travail. Maintenant , il fonctionne avec 15. Très bien, donc le levier, ça n'a pas vraiment fonctionné. Je suppose. C'est très intéressant pour moi. En fait, je m'attendais à ce que ce travail fonctionne, mais assez juste. C'est donc maintenant la façon dont cela fonctionne et c'est comme ça qu'il peut être facile d'ajouter un bloc qui fonctionnera avec Redstone, Minecraft. Bien sûr, toute fonctionnalité supplémentaire que vous voudrez ajouter lorsque le restaurant est appliqué, vous devez bien sûr ajouter le bloc ou s'il s' agit d'une entité de livre, vous pouvez également : Bien sûr, faites-le aussi , puis modifiez-le également. Mais c'est bien sûr quelque chose que vous pouvez faire vous-même. Et j'espère que vous pourrez le faire et y ajouter des fonctionnalités, mais ce sera tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose nouveau et je vous verrai lors de la prochaine conférence. Donc, oui. 120. (1.18.2) Rendu d'entité en bloc personnalisé: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons ajouter un moteur de rendu d'entité de bloc client à Minecraft. Qu'est-ce qu'un moteur de rendu d' entité de blocs ? Eh bien, en gros, ce sera un rendu supplémentaire que nous ajoutons à une entité de bloc client. Et quelle sera notre entité de blocs ? Eh bien, nous allons avoir un modèle de bloc personnalisé qui ressemble à ça, mais ce sera un piédestal. Ensuite, lorsque nous cliquons dessus avec un élément avec le bouton droit de la souris et que l'élément passe au-dessus de ce piédestal particulier. C'est l'idée générale. Rien de trop fou, mais toujours assez cool pour regarder ce pare-feu de banc de blocs particulier , bien sûr, aussi disponible en téléchargement. Ensuite, nous pouvons aller à Export de fichiers, Exporter , modèle d'élément de bloc, le piédestal adjacent. Maintenant, je l'ai déjà, donc tout ira bien et nous allons l' ajouter dans un petit moment en tant que modèle de bloc adjacent. Mais commençons par ajouter le bloc. Ainsi, dans notre livre, dans notre package de blocs personnalisés, cliquez avec le bouton droit sur la nouvelle classe Java appelée piédestal. Regardez. Maintenant, je vais passer en revue la majeure partie de tout ça, mais pas de soucis. Tout cela est disponible pour vous dans un référentiel GitHub en individuel. Maintenant, nous aurons une flèche juste ici et quelques autres flèches ici. Mais pas de soucis, nous pourrons résoudre ces problèmes dans un instant seulement une fois que nous aurons ajouté la classe d'entités de blocs. Que se passe-t-il ici maintenant ? ensemble, la chose la plus importante ici est bien sûr d' étendre le bloc avec la classe d'entité et aussi que nous avons le type get rendu écrasé par le modèle. C'est extrêmement important. Si vous ne le faites pas, votre bloc personnalisé sera invisible comme en bas. Il s'agit donc de trois méthodes d' aide. Nous avons également remplacé l'État. Cela ne fait que supprimer tous les articles qui se trouvent à l'intérieur de l'inventaire. Rien de trop fou. Et ensuite, nous avons les inutilisés. Cette méthode est bien entendu appelée lorsque vous cliquez avec le bouton droit de la souris sur ce bloc particulier. Et ce qui se passe ici, c'est que si l'objet au lieu du piédestal est vide et que nous maintenons réellement un objet, nous allons simplement mettre cet objet que le joueur tient dans ce jeu. l'inventaire et la suppression du dernier article dans sa main. S'il n'y a pas réellement d'objet à l'intérieur de ce piédestal en particulier, nous ne faisons que le frayer au joueur et ensuite nous supprimons l'élément piédestal ici. C'est donc en fait tout ce que nous faisons vraiment dans la méthode inutilisée. Je recommande vivement de vérifier cela également. Ce n'est pas si compliqué, tout est considéré. Et l'un de nous, nous avons ce bloc. Allons en fait dans le package d'entités et créons les entités personnalisées. Donc ça va être l'entité du bloc de piédestal et il y a quelque chose qui s'est faufilé ici, et ça va être une faute de frappe. Alors, tu y vas. Entité de bloc. On y va. Et encore une fois, je vais copier sur les continents. En fait, je pense que c'est encore moins que le bloc réel. Curieusement. Il n'y a que 67 lignes. Pas si fou que ça. Et vous pouvez le constater, bien sûr, étend l'entité de bloc et implémente également l'inventaire implémenté que nous avons ajouté dans la conférence sur les entités de blocs clients que nous avons ajouté dans la conférence sur les entités de blocs clients. Nous avons la liste d'articles par défaut qui est juste que l'inventaire ne devrait pas être fou. Et puis nous avons également un défaut ici, c' est-à-dire la rotation. Mais nous avons besoin des rotations dans ce cas, car elles doivent être sauvegardées sur l'entité de bloc elle-même. Parce que nous ne pouvons pas vraiment enregistrer cela sur le moteur de rendu d'entité de bloc, car il n'existe jamais qu'un seul moteur de rendu d'entité de bloc alors que l'entité livre elle-même. Si nous le sauvegardons là-dessus, cela n'interférera pas. Parce que lorsque vous l'enregistrez sur le bloc et le moteur de rendu D, ce qui se passe, c'est que chaque fois que vous asseyez une nouvelle entité de bloc de piédestal, la chose devient de plus en plus rapide. Et ce n'est évidemment pas tout à fait quelque chose que nous voulons. C'est pourquoi la rotation va être la rotation de l'article. C'est pourquoi nous l'avons sauvegardé ici. Nous avons aussi le droit à une méthode de lecture et de beauté ne devrait pas être fou, n'est-ce pas ? C'est juste pour sauver l'inventaire lorsque nous sortons du monde, n'est-ce pas ? Quand nous sauvons le monde. Et il est également extrêmement important que nous voulions mettre à jour la méthode des paquets écrasée par l'entité de bloc, mettre à jour vers serveur vers client pour voir le paquet et le créer avec cela, puis également pour les données initiales et b t. Nous voulons que cela ressemble à ceci. Ces deux-là sont donc extrêmement importants. Sinon, il y aura une synchronisation D entre le serveur et le client. Gardez donc cela à l'esprit que ceux-ci doivent également être ajoutés. Comme je l'ai déjà mentionné. Tout cela est disponible pour vous dans le processus ou pour un individu tout aussi. Nous pouvons le copier à partir de là, alors passons à la classe des entités de blocs et copions simplement par-dessus le piédestal. Donc, tout d'abord, nous allons copier ça. Nous allons donc dupliquer cela et faire l'entité de bloc de piédestal s' appelle le piédestal. Ensuite, nous allons juste dupliquer cette sélection et appuyer sur Contrôle D. Ce sera le piédestal. Cela est bien sûr égal, tout d' abord, au nom ici, piédestal. Et puis, ici, nous voulons changer cela une entité de bloc de piédestal. Et puis, ici, nous voulons utiliser le piédestal. Bien sûr, cela n' est pas encore mis en œuvre , mais pas de soucis du tout. Nous allons juste ajouter cela aussi. Ainsi, les entités de bloc de mode bleu, nous pouvons maintenant accéder à l'entité roche piédestal. L'erreur ici devrait disparaître et il ne devrait pas y avoir plus d'erreurs que dans le bloc. Nous pouvons maintenant importer la classe d'entité de livre piédestal et toutes les erreurs ici devraient également disparaître. Et c'est génial. Et puis, pour se débarrasser de cette erreur, il suffit d'enregistrer le bloc réel. Donc, nous allons le faire aussi. Il suffit de copier par-dessus la fenêtre d'hiver. Tout va bien se passer. Et ce sera le cheval piédestal, comme le nom ici à l'assaut. Et ce sera le piédestal. Maintenant, nous n'allons pas copier de verre. Nous allons en fait faire de la pierre matérielle. Je pense que c'est le plus logique, non opaque. En fait, nous n'avons pas besoin de cela. Force trois, tout va bien se passer. Et bien sûr, dans notre groupe d'articles, dans notre groupe d'articles personnalisés ici. Et ça devrait être très bien. Maintenant, cette flèche devrait également disparaître, et maintenant toutes les erreurs ont disparu. Maintenant, nous avons toujours besoin du moteur de rendu personnalisé. Donc, le package d'entité, nous allons cliquer avec le bouton droit sur un nouveau package appelé client. Et puis à l'intérieur de là, nous allons créer une nouvelle classe appelée le renderer de l'entité Volokh piédestal. Vous y allez et c'est en fait assez simple, mais cela va implémenter l'entité de bloc Renderer, renderer ici de type. entité de bloc de piédestal survole cette méthode d' implémentation. C'est la méthode de rendu ici, et c'est à peu près tout ce que nous devons faire. À faire. Nous pouvons donc faire un rendu d'entité de bloc de piédestal public. Au lieu d'ici, nous voulons appeler l'entité de livre rendre notre contexte, contexte et notre objectif. Nous voulons donc simplement le constructeur par défaut ici avec ce paramètre particulier et la méthode de rendu, le contenu de la méthode aléatoire que je vais réellement copier. Vous pouvez voir que nous obtenons essentiellement le rendu de l'élément ici, puis nous obtenons également la pile d'éléments. Maintenant, ce que nous faisons avec les matrices ici, la pile de matrices, c'est que nous sommes, tout cela détermine simplement la traduction. Ainsi, là où se trouve notre pile d' articles particulière, échelle détermine sa taille, puis multiplie ici, simplement pivoter l'élément réel en éruption. C'est ce que font ces trois froids que le rendu de rendu de l'élément ne fait que rendre l'élément. Ensuite, nous devons faire apparaître cette pile matricielle particulière, puis nous y ajoutons également la rotation. C'est donc à peu près tout ce que nous faisons ici. C'est tellement cool, tout est considéré. Et je recommande vivement de jeter un coup d'œil là-dessus et j' essaie de le comprendre. Ça ne devrait pas être si fou que ça. Mais je dirai aussi que le rendu n' est certainement pas mon point fort. Je l'aime particulièrement. C'est, ça peut être assez fou, mais tout ce qui est considéré, ça devrait aller bien, non ? Une petite chose, appelons le non opaque ici. Juste pour que nous ayons cela. C'est logique, je crois parce que le, parce qu'il est plus petit qu'un bloc. Donc, appelons simplement ça. Et ensuite, comment enregistrer ce moteur de rendu d' entité de bloc particulier ? Eh bien, ce bloc est que votre Hendra est en fait enregistré assez directement dans la classe client du cours MC une fois de plus, bien sûr, cela nécessitera maintenant ce qui suit. Nous voulons l'appeler registre de rendu d' entité de livre. Celui-là, il n'est pas enregistré. Plus d'entités de blocs, de piédestal de points puis de l'entité rocheuse du piédestal Renoir colon, deux-points nouveaux. Nous voulons également appeler l'instance de points de carte de la couche de rendu de blocs instance de points de carte de la couche qui place un piédestal de blocs ou de blocs. Ensuite, définissez la couche de rendu pour qu'elle soit découpée que vous avez obtenue. Et cela devrait être tout ce dont nous avons besoin. Maintenant, bien sûr, nous avons également besoin des fichiers adjacents, mais ceux-ci devraient être assez explicites, n'est-ce pas ? ne devraient donc pas être trop fous. Mais encore une fois, dans l'état du bloc, Jason se trouve dans le dossier States du bloc, à droite, Commençons par ajouter le fichier JSON d'état du bloc pour le piédestal réel. Ils vont, c'est juste un fichier normal des états du Bloc Jason. Rien de fou qui se passe ici n'a également ajouté la traduction. Nous avons un bloc, mais c'est ce nom de piédestal. Donc, nous allons juste ajouter ça. À ce stade, ça devrait être assez routinier, ça ne devrait pas être quelque chose de fou ici. Maintenant, ce sera le fichier exporté, donc il y aura un piédestal adjacent ici. Et ici. Bien sûr, nous devons une fois de plus changer cela pierre lisse de bloc de côlon Minecraft. Sinon, il ne trouvera pas de pierre lisse. C'est donc l'une des choses que vous devez changer à partir du fichier json exporté , puis du fichier JSON de l'élément également. peu près la même chose que nous avons vu de nombreuses fois auparavant. Cela fait référence au fichier JSON du modèle de blocs et aucune texture n'est nécessaire. Ce sont donc en fait toutes les choses dont nous avons besoin. Les états de verrouillage, la traduction, le bloc, un modèle d'élément, un fichier JSON, et cela devrait être tout. Cela devrait donc être tout ce dont nous avons besoin. Maintenant. Allons dans le jeu et voyons si ça marche. Très bien, nous nous trouvons donc dans Minecraft et, comme vous pouvez le constater, le piédestal a été ajouté. Définissons-le et essayons de cliquer avec le bouton droit de la souris avec le calcium d'erreur brute. Et voilà. Il est assis. Et nous pouvons également en ajouter d'autres ici. Et vous pouvez voir en gros qu'ils ne sont que des choses de haut en bas et de s'inscrire ici. Je peux donc cliquer avec le bouton droit de la souris et les retirer à nouveau. Et je peux cliquer avec le bouton droit de la souris et les mettre dedans. Et vous pouvez voir que je perds toujours un ou du calcium en gros. Et puis je peux aussi le sortir. Donc, exactement comment nous pourrions nous attendre à ce que cela fonctionne. En fait, ça marche, et c'est plutôt cool. Et c'est un exemple de rendu d' entité de bloc client. Mais comme je l'ai dit, le code est tout aussi disponible dans le référentiel GitHub en individuel. Mais ce serait tout pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose nouveau et je vous verrai lors de la prochaine conférence. Donc, oui. 121. (1.18.2) des coffres de butin dans des structures personnalisées: Bon, bienvenue au cours de tissu pour un ATP. Dans cette conférence, nous allons voir comment ajouter coffres de butin personnalisés à vos structures personnalisées. C'est donc quelque chose avec lequel certaines personnes ont eu du mal, même si la structure personnalisée du terrain télépathique ici a été assez bien expliquée ici. Mais certaines personnes avaient encore besoin de quelques exemples, donc nous allons les appliquer avec cet exemple. Voyons simplement ce que nous devons faire. Ce que nous devons faire, c'est que nous pouvons créer un coffre ici. Et encore une fois, il est né avec ce commandement particulier. Alors placez un bloc à la position où nous sommes debout, un coffre Minecraft, ils ignorent. Il va donc faire face à la même direction que nous regardons. Et puis la table de butin que nous allons mettre à la poitrine de simples bungees. Donc, nous allons juste le faire. Et vous pouvez voir maintenant que la confiance est apparue. Maintenant, si je l'ouvre, c'est vrai, et ensuite on va y aller et sauver ça. Donc, s'ils vivent, celui-ci est le Davidson. Si j'ai commandé maintenant enregistrer cette structure , chaque structure aurait ce contenu particulier de ce coffre. C'est l'un des problèmes auxquels certaines personnes ont été confrontées car ce que vous devez faire, c'est quand vous le faites réellement apparaître. Il suffit donc de le diviser à nouveau, ici encore une fois, la table de butin, un simple donjon. Vous pouvez également ajouter vos propres tables Lu et vous pouvez également faire différentes tables de routage ici, mais assurez-vous d' avoir une table spécialement conçue pour les échecs. Et une fois que vous avez montré la poitrine, n'ouvrez pas la poitrine. Vous pouvez ouvrir la poitrine car dès que vous ouvrez la poitrine, vous solidifiez tout ce qui se trouve à l'intérieur. Vous souhaitez que cela ne soit pas ouvert après l'avoir avalé, puis sauvegarder votre structure personnalisée. Mais maintenant, nous allons sauver la structure. Et maintenant, nous pouvons remplacer les données NVT dont nous disposons déjà. Et puis ce coffre en particulier aura toujours une charge différente lorsque la structure apparaîtra dans le monde. Passons maintenant à l'intelligence et changeons le fichier MPT, non ? Le fichier NVT est donc bien sûr encore une fois sous le coffre. Maintenant, ce devrait être , un autre jour, une autre structure, si je me souviens bien, voilà, la souris de comptage. Recopions ça. Allons dans le dossier Data, les structures de cours MC, et collons-le ici, compte mhos MVT, nous allons le remplacer. C'est très bien. Et maintenant, c' est tout ce que nous devons faire. Faisons maintenant un nouveau monde et voyons s'il fonctionne. Très bien, donc nous nous retrouvons à nouveau dans Minecraft. Voyons donc simplement jusqu'au premier décompte, ma maison ici est apparue et je crois qu'il y en a un autre dans cette direction. Eh bien, tout d'abord, nous trouverons le coffre à l'intérieur d'ici. Et si je clique dessus avec le bouton droit, vous pouvez voir que c'est la charge particulière. Nous avons donc une armure de cheval de fer et trois chair pourrie. Donc, gardons ça dans notre cerveau et voyons voir. Il y avait donc une armure de cheval et trois chair pourrie, et voyons si on peut en trouver une autre. Un autre compte chez moi, que ce soit le cas ou non. Très bien, puis on y va enfin, j'ai finalement trouvé une autre souris de compte assez difficile à trouver. Rappelez-vous qu'il y en avait trois, chair pourrie et une armure de cheval, et nous pouvons voir que c'est complètement différent. Nous avons maintenant un disque de musique. Nous avons toujours une armure de cheval, mais pas de chair pourrie. Mais vous pouvez voir que chaque structure a une boucle différente à l'intérieur d'elles. C'est donc à peu près à quel point il est facile d' ajouter un coffre de butin personnalisé, vos structures personnalisées, n'est-ce pas ? Mais ce serait déjà le cas pour cette conférence ici. J'espère que cela vous a été utile et que vous apprendrez quelque chose nouveau et je vous verrai tous lors de la prochaine conférence. Donc, oui. 122. (1.18.2) MISE À JOUR VERS 1.19: Bon, bienvenue au cours de tissu pour 118. Et dans cette conférence, nous allons mettre à jour notre projet à 119. En fait, ce processus va être assez simple, toutes choses prises en compte. Heureusement, les changements entre 11819 et le tissu ne sont pas si fous. Commençons donc tout simplement. Tout d'abord, nous allons commencer par le fichier adjacent de fabric mod, où nous devons modifier ces dépendances ou ici. Nous voulons maintenant changer ces deux-là. Chargeur de tissu 14.6. Je veux changer la version de Minecraft pour qu'elle soit la ligne squiggly ici, tilda 1.19. Bien sûr, ça devrait être très bien. Dans notre cours MC mixant le fichier Tracer, nous voulons changer Java, java 17, puis continuer à construire le fichier Gradle, où nous voulons tout d'abord changer la version de fabric Looom ici par 12 . Et puis, bien sûr, nous voulions également modifier la mise en œuvre de la lèvre gecko ici. La force d'équilibre doit être mise à jour. Il s'agirait donc d'un tissu à 22.1. Et puis, dans le fichier de propriétés supérieures, c'est en fait là que nous devons changer la plupart de ces choses. Nous voulons changer la version micro à 1 neuvième, les mappages de fils ou 119, construire un chargeur de tissu. La version inférieure est la version 14.6. Nous pouvons alors bien sûr changer notre propre version de mod ici. Et puis ce sera le 55.11.19. Et ce devrait être à peu près toutes les choses que nous devons changer ici. Ensuite, nous pouvons charger les modifications Gradle. Une fois de plus, cela peut prendre de quelques secondes à peut-être deux minutes, trois minutes, selon la vitesse de votre ordinateur, selon la vitesse de votre connexion Internet, tout cela folie. Laissons-nous simplement passer à travers cela et soyons patients. Et puis nous verrons une fois que cela aura été une construction réussie, d'accord, nous sommes ici 32 secondes. Si vous allez ensuite, par exemple, dans votre classe de mod principale et que certaines classes sont marquées en rouge sur ce que l' initialiseur pourrait, par exemple, être Margaret, ne vous inquiétez pas, attendez juste une seconde jusqu'à ce que tout construit, puis il devrait se fixer en théorie. C'est donc à peu près tout ce que nous devons faire. Maintenant, bien sûr, viennent les changements de code, qui sont, je ne dirais pas nécessairement, mais il y en a beaucoup. Commençons donc tout d'abord par le sommet de nos cours. Donc, le premier où nous devons changer certaines choses, c'est que je crois que ce n'est pas la classe des piédestaux, c'est le bloc rapide. Il est maintenant intéressant de noter que la chose que nous devons réellement changer ici, chose que nous devons réellement changer c'est le texte ici. La classe des textes littéraux n'existe plus, mais heureusement, il est très facile de changer cela. Nous avons juste besoin d'appeler le littéral de points de texte. Et c'est à peu près tout ce que nous devons faire ici encore une fois, texte littéral, et maintenant nous avons une erreur dans les importations. Vous corrigez ce problème, nous pouvons simplement appuyer sur Control alt et O. Et cela devrait également corriger cela. Vous pouvez maintenant voir que l'affichage aléatoire ne fonctionne pas non plus. Maintenant, pourquoi cela pourrait-il être ? Eh bien, la raison est que la classe aléatoire a également changé. Nous utilisons actuellement Java util random. Supprimons simplement cette importation. Et si nous importons à nouveau la classe aléatoire, vous pouvez voir qu'elle veut réellement importer net Minecraft, beau maths aléatoire, aléatoire. Nous avons en fait une nouvelle classe aléatoire. Cela a maintenant bien sûr des fonctionnalités différentes. Nous devons donc faire ce qui suit dans le double. Donc, dans notre prochain doublé, nous n'allons tout simplement rien passer dans ce cas. Et cela devrait également être le cas dans ce cas. Vous y allez. Ça devrait aller bien. Donc, si vous avez une méthode où aléatoire est un paramètre, c'est probablement la raison pour laquelle elle ne fonctionne pas. S'il utilise toujours la classe Java util aléatoire, c'est un peu, ce n'est pas la meilleure convention de dénomination ici la même manière que celle de Java util, mais ça va aller. Mais c'est la classe aléatoire là-bas et c' est le bloc rapide et ça devrait aller. Maintenant, l'un des grands changements va être dans nos affaires haut de gamme. Celui-ci devrait donc aller bien. Plus d'entités de blocs devraient convenir. Vous pouvez bien sûr passer par là. Ici. Nous avons juste un texte. Encore une fois, ce sera des textes littéraux, puis Alt, Control et O, et plus aucune erreur ne devrait être présente. C'est donc génial. Vous pouvez voir que la plupart de ces choses vont bien se passer. La classe more blocks est également correcte. C'est génial. La science est également bonne. Les blocs sont donc tous terminés. Certains changements ont été apportés aux commandes. Nous allons voir ça dans un instant. La méthode de désenregistrement a également changé, mais c'est très bien. Nous allons juste changer les textes littéraux pour le moment. Et puis, encore une fois, Contrôlez Alt O. Et puis pour cette commande à la maison, la même chose. Nous allons dire, texte littéral il y a un jour, puis Contrôler Alt O à nouveau. Et on y va. Les commandes sont modifiées pour le moment. Et ce qui est très important ici aussi c'est que tout est bien sûr à votre disposition dans la description ci-dessous dans le référentiel GitHub et individuel. Maintenant, les conflits de mods ne devraient pas changer car ils sont tous fondamentalement nouveaux. Sélectionnez des classes personnalisées plus ou moins les effets, elles ne modifient pas les enchantements, elles ne modifient pas les entités. Quelque chose a donc changé dans la lèvre gecko et c'est le nom de ces méthodes particulières. Ce que nous pouvons faire, c'est que nous pouvons simplement faire ce qui suit. Nous pouvons simplement sélectionner cela. Je vais juste copier le nom ici. Je vais aller sur mon compte petit paquet d'appuyer sur Control, Shift R et coller ça dans. Et je veux changer cela dans tous les puits partout où nous sommes , et ce nom ici change en ressource modèle. Bref, nous écrivons cela correctement là, vous obtiendrez plus de ressources. Nous allons juste tout remplacer. Et ensuite, cela va être corrigé dans toutes nos classes de modèles personnalisées. Comment savoir si c'est le changement ? Eh bien, si nous avons juste le bouton central de la souris, cliquez sur la masse modale GO animée ici, nous pouvons fondamentalement voir les différentes choses, c'est en fait dans le fournisseur de modèles. Je crois qu'ils utilisent des ressources de modélisation, des ressources texturées. Et l'autre, c'est les stations d'animation. C'est donc à peu près ce que ça change aussi. Une fois de plus, nous allons faire la même chose, Control Shift R sur le paquet de calendrier. Nous allons maintenant changer l'emplacement de la texture en ressource de texture. Tout va bien. Mais remplacons tout l'ego. Ça va aller. Et puis l' emplacement du fichier d'animation est également la même chose. Aller remplacer cela par la ressource d'animation le pose, remplacez-le. Désormais, aucune erreur ne devrait apparaître dans aucun de nos fichiers de modèles. C'est également très bien et vous pouvez voir que tout cela a également changé, mais aussi tout fonctionne toujours. Donc exactement comment vous le voudriez pour les entités réelles. Aucune modification n'est apportée aux entités. Il y a un changement ici. Qu'est-ce que c'est ? C'est la fin, être contrôlé par des écrivains. Jetons donc un coup d'œil à ce que c'est. Eh bien, je ne suis pas sûr à 100% pourquoi l'écriture ici n'a plus le pouvoir d'être contrôlé par l'écrivain. Mais honnêtement, supprimons simplement le remplacement d'ajout et espérons juste que cela fonctionne toujours. Ce sera probablement la meilleure idée ici. Et quand il s'agit du reste ici, tout devrait encore fonctionner parfaitement. Les entités sont donc également terminées. Les événements devraient également se passer bien dans ce cas, c'est génial. fluides sont également totalement fins. Et puis nous en arrivons à l'article. L'article est le premier. Nous sommes de nombreux changements qui se sont produits, mais aussi pas si fou. Bien que la plupart des changements apportés à l'article se soient produits dans la tablette de données et la tige de vidange. Parce qu'une fois de plus, nous avons quelques textes, si facilement assez de textes que littéraux ici contrôlent Alt O, et ensuite la même chose dans l'élément de barre de descente ici nous avons un texte traduisible, donc Ce sera des textes traduibles. Et là aussi, nous avons, au lieu d'un nouveau texte traduisible, nous avons des textes traduisibles puis mêmes ici, des textes traduibles. Ici encore une fois, nous avons un texte littéral de textes, contrôle littéral de données, Alt O, et plus aucune erreur ne devrait être présente. En dehors de cela, le reste des articles va bien. Il peut y avoir quelque chose dans la classe More items. n'y a rien dans la classe More Items. Donc, tout fonctionne aussi ici. Le mélangeur devrait être parfait sauf pour ces caractéristiques structurelles mixin, nous pouvons en fait supprimer cela ici. Et puis aussi très important, supprimez cela du parcours MC ou de la course mixte, ce qui n'est plus nécessaire. Maintenant, les tableaux ont le tableau étrange ? Oui, les tableaux ont réellement changé. C'est fou, je sais, mais c'est le cas maintenant. Il n'est plus appelé le motif de peinture. On l'appelle maintenant la peinture, une variante. Mais ce que nous pouvons faire, c'est que nous pouvons simplement sélectionner cette touche, appuyez sur Control R , puis changer ceci en variante de peinture , puis simplement dire Remplacer tout, et alors tout devrait bien se passer. Et puis, ici, nous voulons changer cela en tableau, variante, et ensuite cela devrait fonctionner également. Les potions n'ont pas changé, et je crois que les recettes n' ont pas changé. Donc, tout fonctionne toujours ici. Super. Les écrans sont corrects, les sons vont bien, et vous, jusqu'à présent, en Utah il y a qui change. L'un d'eux est le modificateur de table de butin. Ceux-ci ont donc un peu changé. Maintenant, nous n'utilisons plus l'événement de rappel de chargement de la table de butin. Nous utilisons maintenant les données des événements de table de butin qui modifient ce registre, mais c'est le changement que nous devons faire ici. Et puis le changement ici, c'est que nous n' utilisons plus le constructeur de piscine lubrifié en tissu. Nous utilisons maintenant le générateur de données de pool de butin de pool. Ensuite, nous utilisons générateur de données de pool de butin , puis nous créons un nouveau bâtiment ici. Cela va appeler la méthode apply et cela va l'appeler la méthode pool. Et ensuite, nous pouvons simplement copier la première ligne ici , puis remplacer ce Diego et ensuite même ici. Cela s'applique, puis le pool de largeur s'appelle simplement Pool. Encore une fois avec des fonctions appelées Appliquer et celle-ci s'appelle, eh bien, maintenant cela devrait fonctionner totalement bien. Encore une fois, les importations, nous allons simplement appuyer sur Control Alt O, et cela devrait être correct. Continuons vers le Registre des modèles, c'est là que nous avons un problème avec l'événement ici. Maintenant, l'événement en fait, nous pouvons simplement l'importer à nouveau, mais vous pouvez voir nos méthodes de registre ne fonctionnent plus. La méthode du registre a donc un peu changé. Je vais donc simplement copier les nouveaux paramètres de la méthode de registre. Nous avons donc maintenant trois paramètres. Comme vous pouvez le constater, le répartiteur est maintenant le répartiteur de la source de commande du serveur. C'est donc tout ce que nous devons faire une fois de plus, bien sûr, cela vous est disponible dans le référentiel GitHub et individuel. Donc, en gros, on peut facilement y jeter un coup d'œil. Nous allons donc simplement copier les paramètres une fois de plus ici. Vous allez dedans. Nous prenons celui-là et nous le changeons. Et maintenant, la piste d'atterrissage normale est présente, Control Alt O. Et puis les registres de mod sont également corrects. Mais il y a des changements fous chez les villageois ici. Maintenant, le changement ici va en fait être qu'au lieu d'un accesseur de type centres d'intérêt, nous ne faisons qu'un nouveau point, nouveaux intérêts ici. Vous pouvez donc voir que nous sommes en train de créer cela. Nous n'avons plus besoin d'appeler la méthode de configuration de l'équilibre. Et puis ici dans le registre des professions, alors que nous voulons le faire, nous voulons appeler le registre le constructeur de profession villageois qui crée. identifiant avec un nouvel identifiant apparaît dans notre identifiant de mod de cours MC et son nom. Ensuite, appelez le poste de travail en passant par le type. Nous devons également changer cela dans un instant. Et puis nous voulons aussi appeler les événements sonores d'aboiement, cette entité travaille Amara, qui construisent, posant entre parenthèses et ils vont et cela devrait être à peu près ce que nous devons faire ici. Pour le type de point d'intérêt, nous voulons changer ce type de registre E, de type point d'intérêt. Vous y allez. Et puis ici, au lieu de transmettre cela, nous voulons voir une clé de registre, un clé de registre du point d' intérêt de données de registre pour taper une clé avec un nouvel identifiant. Encore une fois, bien sûr MC, bien sûr Mod Model ID. Et ensuite, l'explosion ou le point étaient importants pour cela. Le blastopore ici est le même que ce nom ici ou le point de plâtre. Maintenant, nous voulons également dire « Control Alt O » pour se débarrasser des importations. Et puis dans notre classe de mod de cours MC, nous voulions supprimer l'appel d'équilibre de configuration et cela devrait être correct. Les villageois devraient désormais travailler également. Et maintenant, dernière mais non des moindres, bien sûr, génération mondiale, qu'est-ce qui a changé ici ? En fait, pas trop fou. Dans le générateur de jeunes arbres, nous avons une fois de plus la classe aléatoire différente. Donc, si nous supprimons simplement l' importation aléatoire et l'importons à nouveau, alors tout devrait fonctionner correctement ici. C'est donc génial. Rien n'a changé dans les autres classes d'entités. Et ensuite, les changements ne sont que dans la classe gen, car nous avons maintenant une autre façon de le sélectionner. Donc le sélecteur est en fait maintenant avoir inclus par clé tout autre trouvé dans N. Il y a donc un peu de différence ici, mais nous pouvons simplement dire ceci et ensuite c'est, par exemple, dire les touches de biome point avions. Et puis ici, nous devrions pouvoir dire inclure par clé biome, clés dot jungle par exemple. Cela devrait donc fonctionner également. La même chose se produit ici, non ? Les avions, disons les clés du biome, les avions pour les fleurs ici, puis pour l'arbre, la même chose, se chargent ici. Les touches Biome pointent les avions. Et ça devrait être très bien. La ration d'origine n'a pas changé et l' origine mondiale moderne également. La même chose. Maintenant, les structures ont nouveau changé car, bien sûr, c'est pourquoi nous ne pouvons pas avoir de belles choses à dire. Mais ça va aller, pas de soucis là-bas. Commençons donc par les structures du ciel ici. Ces structures de gars, je vais juste copier encore une fois le contenu et nous allons juste examiner brièvement ça. Nous avons donc maintenant un codec. Que signifie le codec ? La chose la plus simple à expliquer, car il s' agit essentiellement d'une façon de lire une classe à partir d'un fichier JSON qui est à peu près la façon la plus simple d'y jeter un coup d'œil. Maintenant, encore une fois, cela va être disponible, et cela a également été fait par voie télépathique une fois de plus. Nous pouvons donc les remercier avoir mis à jour cela très, très rapidement. Et je recommande fortement de vérifier les grognements allopathiques, faire une pause une fois de plus et de consulter tous les nouveaux commentaires qui y sont ajoutés qui devraient probablement vous aider également. Maintenant, le mod structure ressemble à ceci. Maintenant, ils pourraient être un problème de plus ici. Maintenant, tout va bien se passer. Et puis des structures intimes, essentiellement l'une des suivantes. Nous voulons donc maintenant un type de structure ici. Ensuite, ajoutons ça. Nous voulons donc cela, c' est une méthode de registre. La méthode de registre ressemble à ceci. Le cours MOD ou c' est MC est égal à MOD Diego. Et puis il suffit de supprimer toutes les entrées qui ne fonctionnent plus, ce qui devrait très bien se passer. Vous pouvez voir que les changements de code ne sont pas si fous, mais il y a aussi des changements de Jason que nous pouvons, je crois, s'attaquer déjà parce que cela devrait être tout ce que nous devons changer ici. Oui. Nous pouvons essentiellement aller dans les fichiers adjacents et y jeter un coup d'œil. Ce sera donc, bien sûr, les traits de cours et les fichiers de MC World Gen. La première chose que nous faisons est que nous devons renommer cette fonctionnalité structurelle configurée dans un dossier particulier qui est maintenant appelée structure. Structure. Maintenant, le contenu de cela a changé un peu aussi. Jetons donc un coup d'œil à ça. Mais tout d'abord, nous voulons supprimer le conflit ici pour qu' il ne dispose que du pool de stockage et de la taille en ligne. Ensuite, nous voulons également ajouter la distance maximale du centre. Donc, celui-ci ici, vous voulez également ajouter trois autres choses. Et cela va être que nous remplacerons essentiellement le bruit additionnel par la hauteur absolue des structures de surface. Nous pouvons maintenant définir également l'intérieur du fichier JSON, commençant à mapper la hauteur de celui-ci ici. Nous devons maintenant faire la même chose pour tous les fichiers adjacents. Et ce qui est important, c'est que pour la seule maison adjacente, nous voulions changer celle-ci ici en puzzle, c'est très important. Ensuite, supprimez les conflits une fois de plus, AMA en ligne à cette distance du centre, ici en dessous de la taille. Et maintenant, nous voulons ajouter quatre choses différentes, ce qui modifie le bruit adepte. Et ce sera le piratage de l'expansion américaine ici aussi. C'est très important , car c'est essentiellement nécessaire lorsque vous utilisez la scie sauteuse ici. La même chose ici. Il suffit de changer ça. N'oubliez pas d' ajouter la virgule ici. Ils le sont. Vous y allez. Remplacons le bruit additif ici. Et bien sûr, encore une fois, la distance maximale du centre. Et ça devrait aller aussi bien. Ensuite, enfin, la plate-forme de stockage ou la plate-forme changeant le type en scie sauteuse, se débarrasser de la configuration ici, distance du centre, puis placer le bruit de l'annonce ici. . Vous y allez. Et cela devrait être à peu près tout ce que nous devons faire dans la trace structurée de nous. Les structures de plomb devraient désormais fonctionner parfaitement. Et je pense que, en regardant cela, cela devrait ressembler à d'énormes changements. Il y a un autre changement qui est très ennuyeux, et c'est en fait avec les fichiers récents ici. Il y a un changement pour la porte. Nous avons donc une porte en fleurs de cerisier par ici et celle-ci ici. Et ils ont également changé. Ainsi, le fichier JSON des états de bloc, ainsi que les fichiers JSON du modèle de bloc pour les portes ont changé. Nous en avions quatre, deux pour le bas, deux pour le haut. Et maintenant, il y en a quatre pour chacun. Il y en a donc quatre en bas et pour les plus hauts. Ce que nous pouvons faire, c'est que nous pouvons aller les bibliothèques externes dans les bibliothèques externes jusqu'à celle-ci ici, microprojets nets, ainsi de suite. Sous les actifs Minecraft, nous pouvons tout d'abord aller aux états de blocs et copier par-dessus la porte d'acacia, dans ce cas R1. Alors, faisons-le simplement. Vous y allez. Revenons en bas et passons au bloc des modèles. Et vous pouvez voir ici la porte d'acacia, tout d'un coup il y en a huit. C'est vraiment fou. Je ne sais pas pourquoi ils l'ont changé, mais c'est bon. Alors copiez-les aussi. Ensuite, nous pourrons les changer un par un. Donc, ici, la porte d'acacia, tout ce la porte d'acacia, que nous avons juste à faire, c'est changer un microphone ici en cours MST, Remplacer tout, puis sélectionner l'acacia et changer cela la fleur de soulignement de cerisier. Remplacez tout. Vous y allez. Et ensuite, nous pourrons supprimer la porte en fleurs de cerisier ici. Appuyez une fois de plus sur Maj F6 pour renommer la porte de soulignement en fleur de cerisier. Et puis le bloc indique qu'un est changé, mais bien sûr, vient la vraie chose et c' est le fichier de modèle. Maintenant, ce que nous pouvons faire est de cliquer sur le dossier du blog, appuyer sur Shift Control R, puis de changer non pas la fleur de cerisier, mais l'acacia en fleur de cerisier. On peut dire qu'il a tout remplacé. Oui, s'il vous plaît. Et ensuite, nous pourrons faire la même chose. Allez à nouveau dans Bloquer, Control Shift R, puis nous voulons modifier un cours Minecraft MC. Maintenant, nous devons faire très attention à ne pas simplement remplacer tout, car cela va également remplacer les parents. Et ce n'est pas ce que nous voulons. Nous voulons simplement changer le bas et le haut. Vous pouvez voir le bas. Je peux remplacer le dessus. Remplacer. Maintenant, nous avons un parent non. En bas. Oui. En haut. Oui. Encore une fois, le parent non. En bas. Oui, en haut. Oui. S'il vous plaît, assurez-vous de le faire correctement. Sinon, vous rencontrerez une erreur ou elle ne s' affichera pas correctement. Mais s'il vous plaît, faites attention lorsque vous le remplacez comme ça, haut, puis en bas et en haut. Et maintenant, nous n'avons que des parents, donc c'est fini. Et maintenant, il suffit de changer les noms ici. Encore une fois, Shift F6 pour les renommer, puis toujours changer l' acacia en fleurs de cerisier. Et je pense que nous devrions aller bien ici. Une fois que nous avons fait cela. Maintenant, comme vous pouvez le constater, il y a une petite boucle fastidieuse. J'espère que vous n'avez pas ajouté 20 portes différentes. Sinon. Je veux dire, je suis désolé. C'est ce que c'est. Ce sera probablement un après-midi très ennuyeux pour vous, puis renommez tout cela parce que mon Dieu est ennuyeux, mais c'est ce que c'est. Les portes ont changé et tout va bien se passer. Mais maintenant, nous pouvons supprimer les vieux dossiers Jason de porte. Et avec cela, nous sommes enfin finis. Pour l'instant. Ouvrons le jeu et voyons s'il fonctionne. Ou nous avons une autre coche aléatoire ici. C'est bien sûr encore une fois à cause de l'aléatoire, à droite, il suffit de supprimer l'importation Alt et Enter là-dessus, et tout devrait fonctionner correctement. Voyons voir, et continuons. Voyons s'il y a d'autres flèches. Il peut y avoir une autre coche programmée une fois de plus, la même erreur ici, pas de soucis du tout. Supprimons simplement cette entrée Alton au hasard, puis continuons et maintenant je pense que nous devrions aller bien. Très bien, le tissu a commencé. Nous allons donc simplement voir si nous pouvons créer un nouveau monde. Et ça a l'air génial. Donc, si nous atteignons celui-ci, ça va se passer. Et nous allons simplement créer un nouveau monde et voyons. Très bien, nous voilà à nouveau à Minecraft. Jetons donc tout d'abord un coup d' œil et nous l'avons là. Tout est toujours disponible. Voyons donc si certaines de ces choses fonctionnent toujours comme nous l'attendions. Prenons une canne d'arrêt. Prenons une tablette de données ici. Voyons si nous pouvons encore trouver des minerais. Et c'est là que nous l'avons. Nous avons trouvé des minerais et ils ont été enregistrés sur la tablette de données. Donc, tout cela semble fonctionner correctement. Faisons apparaître les entités. Ils vont toujours bien. Ils semblent très bien réagir. Jetons ensuite un coup d'œil au recalc et au blaster. C'est toujours une chose qui est un peu intéressante, n'est-ce pas ? Entités de bloc D si elles fonctionnent toujours. Allons refroidir un peu. Allons chercher une hache ici. Et puis enfin, mais non des moindres, nous allons nous inquiéter du lingot de calcium et voyons si cela fonctionne toujours. Et en effet, cela fonctionne toujours. J'ai trouvé un lapin. Je pense que vous avez un petit problème ici. Très bien, voilà. L'Oracle peut choisir x fonctionne également. Cela fonctionne donc encore très bien. Alors jetons un coup d'œil à la question de savoir si nous pouvons localiser un lien biome et y-naught. Et voyons si cela nous donne quelque chose. Nous devrions donc découvrir que ce n'est pas le bon. Nous voulons aller plus loin avec le spectateur. Vous y allez. Nous pouvons trouver quelques arbres ici. Et peut-être pourrons-nous aussi trouver certaines de nos fleurs. Et en effet, nous le pouvons, nous l'avons là. Donc, quelques-unes de nos fleurs, de façon intéressante, résistent à cela en tant que modèle d'entreprise. Éventuellement plus. Vous y allez. Et puis nous avons des roses roses. Donc, tout ici semble toujours fonctionner exactement comme on s'y attendrait. Nous allons également localiser une structure juste pour que nous ayons cela. Il devrait donc s'agir du cours MC. Voyons voir, compter la maison et il y a un comte Mao disponible et nous l'avons là. Ainsi, tout fonctionne toujours parfaitement , même avec notre boucle personnalisée ici, c'est exactement ce que vous voulez voir. Donc oui, c'est à peu près à quel point il peut être facile de mettre à jour fabric vers 119. Très bien, et cela conclut à peu près le cours. Merci beaucoup d'avoir regardé. J'espère que vous avez trouvé cela utile et que vous apprendrez quelque chose de nouveau si vous le faisiez, j' apprécierais beaucoup un commentaire de votre part. Sinon, j'espère que je vous verrai dans d'éventuelles conférences futures maintenant, il n'y a plus rien prévu actuellement, mais qui sait, il pourrait y avoir une ou deux choses supplémentaires qui pourraient survenir. Sinon, j'espère vous voir ailleurs, peut-être dans les futurs cours. Donc, oui.