SKQuery et SkRayFall Néccéssaires !
Bon, voilà comme le titre l'indique, aujourd'hui je vous fais un tuto pour les Particules ! Donc, il faut savoir que ce Skript est Simplifié au Maximum, et prends une place minimal ^^.
Bon, entrons dans le cœur du Sujet !
Pour commencer, il nous faut une petite commande, qui va nous permettre l'activation, et le Choix de ces particules.
command /particule [<text>]:
# Donc, c'est un des rares event qui ne commence pas par "on", sinon ce n'est plus la même chose !
Pour la petite explication : Pourquoi [<text>] et pas autre chose ?
Simplement : Les balises < et > avec "text" à l’intérieur va être un argument, quelque chose que l'on va écrire lors de la commande. Et pourquoi [ et ] ? En fait, dans ce skript, on a besoin d'un Seul mot, donc on limite l'argument 1 à un seul mot. C'est à ça que servent les [ ].
Ensuite, on va spécifier l'argument, c'est à dire, ce que l'on va devoir remplacer, lorsque l'on va effectuer la commande !
command /particule [<text>]:
trigger: #Attention à ne pas l'oublier !!!!!
if arg 1 is "Heart":
#Traduction : Si le premier argument est "Heart". Donc si on fait la commande /particule heart
Maintenant, on va rentrer dans la partie qui est, un peu plus compliquée : Ajout de la Variable
command /particule [<text>]:
trigger: #Attention à ne pas l'oublier !!!!!
if arg 1 is "Heart":
set {particule.%player%} to "Heart"
message "&aVous avez bien activé votre Particule"
Donc, là, on a écrit :
Si l'on fait la commande /particule ....:
Si le ... est "Heart":
Alors, on va créer la variable {particule.%player%} (%player% = Nom du Joueur). Et dedans cette variable, on efface tout si elle est déjà crée et on écrit à la place "Heart".
Puis en envoie un petit Message
Donc recommencez si vous voulez avec d'autres variables :
command /particule [<text>]:
trigger: #Attention à ne pas l'oublier !!!!!
if arg 1 is "Heart":
set {particule.%player%} to "Heart"
message "&aVous avez bien activé votre Particule"
if arg 1 is "Cloud":
set {particule.%player%} to "Cloud"
message "&aVous avez bien activé votre Particule"
Voilà, ça va devrait aller.
------------------------------------------------------------------------------------------------------------
Deuxième étape : L'Effet des Particules
Donc maintenant que l'on a nos particules de crée, on va les faire en sorte qu'elles s'utilisent.
Donc on va choisir un intervalle de temps, pour qu'elle le fasse même si vous ne bougez plus !
every 0.4 seconds:
C'est assez rapide et ça devrait convenir !
Ensuite, on va sélectionner tous les Joueurs : La particule sera visible par tous !
every 0.4 seconds:
loop all players:
set {_all} to loop-player
Ensuite, on garde tous les joueurs en mémoires. Attention cette étape n'est pas facultative !
Maintenant on va vérifier si le joueur a activé ses particules, mais on va vérifier tous les joueurs, donc le "loop-players".
every 0.4 seconds:
loop all players:
set {_all} to loop-player
if {particule.%loop-player%} is "Heart":
Donc voilà, et maintenant on va faire apparaitre les particules :
every 0.4 seconds:
loop all players
set {_all} to loop-player
if {particule.%loop-player%} is "Heart":
show 3 "heart" particles at location of loop-player for {_all} offset by 1, 1, 1
Donc voilà : On a écrit : Montrer 3 Particules de Cœurs, à l'endroit ou est le joueur qui a la particule d'activée, visible par tous les autres joueurs. Les 1, 1, 1 sont les paramètres de la taille.
------------------------------------------------------------------------------------------------------------
Deuxième étape : Assemblage
Je vous laisse assembler le tout, pour ce qui veulent le code est dans le Spoiler, et merci de partager votre avis !
[spoiler=Code entier]
command /particule [<text>]:
trigger:
if arg 1 is "Heart":
set {particule.%player%} to "Heart"
message "&aVous avez bien activé les particles &cHeart&a !"
if arg 1 is "Cloud":
set {particule.%player%} to "Cloud"
message "&aVous avez bien activé les particles &fCloud&a !"
if arg 1 is "Stop":
delete {particule.%player%}
message "&aVous avez bien désactivé les particles !"
every 0.4 seconds:
loop all players:
set {_all} to loop-player
if {particule.%loop-player%} is "Heart":
show 3 "heart" particles at location of loop-player for {_all} offset by 1, 0.7, 0.4
if {particule.%loop-player%} is "Cloud":
show 3 "cloud" particles at location of loop-player for {_all} offset by 1, 2, 0.4