Aller au contenu

Fonction compte à rebours


Messages recommandés

Posté(e)

Fonction permettant de faire un compte à rebours à un joueur/aux joueurs !

function CompteARebours(p: player, time: number, mode: text, color: text, cmd: text):
   set {_temps} to {_time}
   if {_mode} is "XP":
       set {_xpbarre} to {_time}
   loop {_time} times:
       wait 1 second
       if {_mode} is "title":
           make console execute "title %{_p}% title {""text"":""%{_temps}%"",""color"":""%{_color}%""}"
       if {_mode} is "send":
           send "&c%{_temps}%" to {_p}
       if {_mode} is "action-bar":
           set action bar of {_p} to "&c%{_temps}%"
       if {_mode} is "XP":
           reduce {_p}'s level by 1
       remove 1 from {_temps}
       if {_temps} = 0:
           if {_cmd} is not "none" or "None":
               wait 1 second
               make console execute "%{_cmd}%"

Options:

En premier,mettez sans " le joueur concerné (player,victim,loop-player,loop-value...)

Suivi d'une virgule et d'un espace,le temps du compte à rebours en seconde sans ".

Suivi d'une virgule et d'un espace,le mode du compte à rebours (XP,title,send,action-bar) avec des "

Suivi d'une virgule et d'un espace, la couleur du title (Ajouté récemment) comme par exemple "blue,red,dark_red,green..." entre " /!\ Seulement pour le mode title,mettez n'importe quoi tel que "None" ou autre si vous n'avez pas activé ce mode,car elle sera complètement inutile pour les autres modes !

Suivi d'une virgule et d'un espace,la commande à faire entre " avec / à la fin du compte à rebours.Si vous n'en avez pas besoin,mettez juste "none" ou "None".

 

(Je tiens à remercier @Mikioul qui m'a fait 99.9% du mode barre d'exp xD)

Exemple:

command /killall:
   trigger:
       loop all players:
           CompteARebours(loop-player, 10, "title", "green", /kill @a)

  • J'aime 2
Posté(e)

Problème: ça le fait à tout le monde.Mais j'ai une idée,je vais intégrer l'option du joueur comme ça si tu veux le faire à tout le monde tu fais un loop all players et tu met "loop-player",sinon tu met "victim,attacker ..." j'édit :)

Posté(e)
Voila fonction simple permettant de faire un compte à rebours à tous les joueurs,me demandez pas à quoi ça sert:

function CompteARebours(p: player, time: number, mode: text, cmd: text):
   set {_temps} to {_time}
   loop {_time} times:
       wait 1 second
       if {_mode} is "title":
           send {_p} title "&c%{_temps}%"
       if {_mode} is "send":
           send "&c%{_temps}%" to {_p}
       if {_mode} is "action-bar":
           set action bar of {_p} to "&c%{_temps}%"
       remove 1 from {_temps}
       if {_temps} = 0:
           if {_cmd} is not "none" or "None":
               wait 1 second
               make console execute "%{_cmd}%"

Exemple d'utilisation:

command /killall:
   trigger:
       CompteARebours(player, 5, "title", "/kill @a")

Ici,ça effectuera un compte à rebours de 5 secondes dans un title avant de faire "kill @a".

Le premier text signifie en seconde le temps du compte à rebours,le deuxième doit être entre "" et signifie ou cela le fera (Dans la "action-bar",dans le "title" ou dans le "send") et le troixième doit également être entre "" et signifie la commande à executer.Mettez "none" ou "None" à la place de la commande si vous n'en voulez pas.

Voila un dernier exemple,lisez bien le code:

command /commande:
   trigger:
       CompteARebours(player, 20, "action-bar", "none")
       wait 20 seconds
       Les autres effects que l'on veut après si jamais on peut pas les faire en une commande

Voila comme je l'ai dit sûrement aucune utilité à part pour faire un event par exemple ou il y a un compte à rebours avant des give ou quoi ;)

 

Très bonne fonction MAIS tu as oublié de dire qu'on avait besoin d'un addon (ici je pense que tu as voulut utiliser SkRayFall) et si c'est bien l'addon auquel je pense, les versions 1.9 + ne pourront pas l'utiliser. Pourrais-tu donc en créer une en parallèle sans l'utilisation de l'addon stp ?

 

Merci d'avance ;)

  • J'aime 1
Posté(e)

Ah mais oui c'est vrai j'avais test et jm'étais dis que ça marchait pas mais à l'époque je savais pas qu'il fallait doubler les ",je vais édit la fonction pour qu'on ait pas besoin de skrayfall ;)

Posté(e)

Bonne function j'avais fait une du genre sur mon serveur :D Un conseil rajoute le mode "XP" ça peut être intéressant pour ceux qui veulent dans la barre d'xp :3

Posté(e)

Tu défini la barre d'xp :

if {_mode} is "xp":
   set level of {_p} to {_temps}

 

Et pour remove :

if {_mode} is "xp":
       reduce {_p}'s level by 1

 

 

Voilà ce que j’utilisai moi :

 

[spoiler=On utilise pareil :D]

function Cooldown(p: player, mode: text, name: text, time: number):
   set {Cooldown::%{_name}%::%{_p}%} to {_time}
   if {_mode} is "xp":
       set level of {_p} to {_time}
   while {Cooldown::%{_name}%::%{_p}%} is set:
       if {Cooldown::%{_name}%::%{_p}%} > 0:
           if {_mode} is "action-bar":
               show an action bar from "&cVeuillez patienter &f&o%{Cooldown::%{_name}%::%{_p}%}% &cseconde(s) !" to {_p}
           if {_mode} is "message":
               send "&cVeuillez patienter &f&o%{Cooldown::%{_name}%::%{_p}%}% &cseconde(s) !" to {_p}
           if {_mode} is "broadcast":
               broadcast "&cVeuillez patienter &f&o%{Cooldown::%{_name}%::%{_p}%}% &cseconde(s) !"
           if {_mode} is "xp":
               reduce {_p}'s level by 1

           remove 1 from {Cooldown::%{_name}%::%{_p}%}
           wait 1 seconds
       else:
           delete {Cooldown::%{_name}%::%{_p}%}

 

  • 1 mois après...
Posté(e)

J'ai tout édité,concernant la fonction elle n'a besoin d'aucun addon,ajout du mode pour le compte à rebours sur la barre d'exp + Option choisir la couleur pour le /title ;)

  • J'aime 1
  • 1 mois après...
Posté(e)

Pour les title, voila ce que j'ai trouvé avec Skellet sur SkUnity. Ca permet de ne pas avoir a utiliser la console, même si dans le fond on s'en fout ^^

[spoiler=title Skellet]

command /test:
   trigger:
       show a title from "&6Title" and subtitle "&aSubtitle" to player for 5 seconds and 10 ticks fade in and 15 ticks fadeout
      wait 7 seconds
      show subtitle "&aSubtitle" to player for 5 seconds and 10 ticks fade in and 15 ticks fadeout
      wait 7 seconds
      show title "&6Title" to player for 5 seconds and 10 ticks fade in and 15 ticks fadeout

 

Posté(e)

Yep mais le but de la fonction c'est qu'il n'y ait pas besoin d'addon,sinon je préfère SkRayFall,par contre ils ont arrêté les majs à la 1.12 il me semble

Posté(e)
Yep mais le but de la fonction c'est qu'il n'y ait pas besoin d'addon,sinon je préfère SkRayFall,par contre ils ont arrêté les majs à la 1.12 il me semble

Mais tu utilises déjà SkRayFall pour l'action bar... Pourquoi ne pas l'utiliser pour le titre ?

Posté(e)

mdr xD

Au pire c'est pas grave, console ou pas, on s'en fiche, mais bon ^^

Autant utiliser une syntaxe qui existe xD

En plus on a pas moyen de faire d'action bar sans l'addon (sauf en 1.12), donc on est obligé de l'utiliser...

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.