CommandBlock [Snapshot-1.9] Créer un Jetpack

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
Salut,
Dans ce petit tutoriel, nous allons créer un jetpack en snaphot 1.9 ! (Fonctionne sur toute celle supérieur à l'ajout du shulker)

Voici la version 2.0 du système, elle améliore le système en ajoutant une détection des bottes, optimise certaines commandes et utilise les command blocks en chaîne de la 1.9 !

Système final :

elmdALl.png


/!\ Faites bien attention à la direction des flèches !!! /!\

Pour commencer, il faut créer un nouveau scoreboard en stat.sneakTime, il détectera donc à chaque fois que le joueur sneak/s'accroupis. Pour ma part, je l'ai appelé d'un nom très original : jetpack.

Code:
/scoreboard objectives add jetpack stat.sneakTime

Tout d'abord, voici ce que fera notre jetpack :
- S'activer que ci deux conditions sont remplis : Porter les bottes, et s'accroupir.
- Faire voler le joueur le temps de l'accroupissement
- Faire un des particules sous les pieds du joueur
- Faire un son lors du temps de vole.

Bon, commençons.

0. Posez un command block ayant pour configuration le mode "Repeat" (command block violet) et le mode "Always Active".
Dedans mettez-y cette commande :
Code:
/testfor @a {Inventory:[{Slot:100b,tag:{display:{Name:"Rocket boots"}}}]}
Pour expliquer la commande en détaille, on teste sur tout les joueurs si ils possèdent un objet dans le slot des bottes (slot 100, le b représentant la taille de cette valeur, sois un byte) ayant pour nom "Rocket boots".


1. Pour continuer, mettez un autre command block ce situant à la pointe de la flèche du command block qui le précède. (Bon, j'explique pas très bien, donc si vous ne comprenez pas, allez voir l'image)
Pour la configuration, les modes "Repeat", "Conditional" et "Always Active".
Voici la commande à mettre :
Code:
/effect @a[score_jetpack=0] levitation 0
Explication : Cette commande sert de reset. On va exécuter sur tout les joueurs ayant un score jetpack de au maximum 0, l'effet levitation pendant 0 seconde (en fait on annule l'effet sur le joueur)

2. Ensuite, toujours dans la continuité, un autre command block avec pour configuration le mod "Chain" et "Alway Active", le command block est vert.
La commande :
Code:
/effect @a[score_jetpack_min=1] levitation 1 15
Explication : Celui-ci permet de donner l'effet levitation pendant une seconde à toute personne ayant l'effet jetpack supérieur ou égale à 1. Le 15 permet de faire varié la vitesse de vole.

3. Pour continuer, un autre command block aligné au autres et ayant la même configuration que son prédécesseur.
Code:
/scoreboard players set @a[score_jetpack_min=1] croupir 0
Cette commande permet de reset le score jetpack

4. Avant dernier command block. Tout comme le précédent, il faut qu'il soit aligné avec les autres et est la même configuration que les command block verts.
Commande :
Code:
/execute @a[score_jetpack_min=1] ~ ~ ~ /particle lava ~ ~-1 ~ 0.1 0.5 0.02 0.01 15
Petite commande juste pour l’esthétique servant à poser des particules de laves aux pieds du joueur étant en train de voler.

5. Et pour finir, faites comme pour les autres verts.
Commande :
Code:
/execute @a[score_jetpack_min=1] ~ ~ ~ playsound random.fizz @a[score_jetpack_min=1] ~ ~ ~ 0.75 2
Encore de la décoration, elle permet de faire le son de l'extinction du feu au joueur volant.

Voilà !!!!!

15d8juv.gif


Alors, bien sûr c'est un jetpack le plus simple possible. Rien ne vous empêche d'ajouter différents éléments comment un jump boost pour ne pas s'écraser au sol ou encore un système de carburant !!!
J'ajouterai sans doute au fur et à mesure des améliorations au système. N'hésitez pas non plus à m'en conseiller !!!
Je prévois de faire le système en one command block, donc je préviendrai de sa sortie.
Merci à Pterocraft de m'avoir conseiller l'utilisation des command blocks en mode "Chain" !

/!\ Tout les commands blocks seront en mode "Repeat", sois les command blocks violets /!\

Voici un aperçus final du système :

t1pKG3S.png


Les numéros représente l'ordre de construction du système dans ce tutoriel.

Ensuite, posons un command block avec ceci à l’intérieur :

Code:
/execute @a[score_jetpack_min=0] ~ ~ ~ effect @a[r=0,score_jetpack=0] levitation 0
Bon, on commence un peu à l'envers, mais c'est le tout premier command block qui doit être activer donc... Pour l'expliquer, si le joueur à un score de jetpack à 0, alors on lui désactive l'effet "lévitation".
Activer ce command block.

Un peu plus loin, placer deux commands block avec un bloc d'écart, je vous recommande de les placer face à l'ouest pour le bon fonctionnement du système.
Dans celui de gauche :
Code:
/scoreboard players set @a[score_jetpack_min=1] jetpack 0
Celui-ci sert à réinitialisé le score jetpack.
Puis dans celui de droite :
Code:
/execute @a[score_jetpack_min=1] ~ ~ ~ effect @a[r=0,score_jetpack_min=1] levitation 1 15
Voici le command block principale, il permet de faire "voler" le joueur ! Pour modifier les paramètres, c'est sur le 15 qu'il faut jouer (c'est la vitesse de lévitation).

Ajoutez les deux derniers command blocks. Il ne sont que décorations et ne sont donc pas obligatoire :
Dans le premier :
Code:
/execute @a[score_jetpack_min=1] ~ ~ ~ /particle lava ~ ~-1 ~ 0.1 0.5 0.02 0.01 15
Celui-ci ajoute des particules au niveau de vos pieds.
Code:
/execute @a[score_jetpack_min=1] ~ ~ ~ playsound random.fizz @a[score_jetpack_min=1] ~ ~ ~ 0.75 2
Et celui-ci joue du son.
 

pterocraft

catastrophe ambulante
17 Juin 2015
127
21
75
alsace
Bravo pour ton système, je n'y aurais jamais pensé !
Mais sinon pour le système des commandes blocks en chaîne non conditionnel seraient pas mieux pour éviter les problèmes d'ordres ?
 
  • J'aime
Reactions: Oromis

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
Je doit d'avouer ne pas avoir essayé ! Je découvre encore ces nouveaux command blocks de la 1.9. J'essayerai et en posterai les résultats. Merci de ton conseil ;)
EDIT : Effectivement, le système fonctionne aussi bien !
Je vais apporter quelques modifications pour le rendre plus complet.
 

Oromis

Command-blocker slimesque
Staff
Modérateur
Support
11 Février 2014
3 345
2
1 053
297
24
Bretagne
Voilà, modifications apportées et refonte du tutoriel ! Comme ça le système détecte les "rockets boots" et ne le déclenche que ci elles sont portées par le joueur. Sinon quelques autres modifications tels que l'utilisation des command blocks chaîne (merci à pterocraft) et deux petites optimisations de commandes.