Aller au contenu

Classement

Contenu populaire

Affichage du contenu avec la meilleure réputation le 20/11/2016 dans toutes les zones

  1. Bonjour pour transformer le format "1h, 2m, 5d etc....." PsyZiik (Je fais exprés de pas le tagguer il doit déjà l'être assez) utilise une fonction qui transforme ce format en timespan function TransformTime(time: text) :: timespan: if length of {_time} is 2: set {_time} to "0%{_time}%" set {_characters::*} to {_time} split at "" if {_characters::3} is "s": set {_characters::3} to " seconds" else if {_characters::3} is "m": set {_characters::3} to " minutes" else if {_characters::3} is "h": set {_characters::3} to " hours" else if {_characters::3} is "d": set {_characters::3} to " days" set {_result} to "%{_characters::1}%%{_characters::2}%%{_characters::3}%" parsed as timespan return {_result} Après il met la durée de la sanction dans une variable "set {mute.time.%uuid of arg 1%} to TransformTime("%arg 2%")" Et après ta juste à check quand le joueur se connecte si la différence entre sa date de ban ({mute.now.%uuid of arg 1%}) et maintenant et supérieur ou égal à {mute.time.%uuid of arg 1%}
    2 points
  2. Bon bah j'ai testé ton code, les deux erreurs que tu avais faites étaient juste des erreurs de syntaxe. A savoir : - Skript ne prend pas en compte les noms de variable avec un ' * ' dedans. - [run player command "/selldiamond" as op] >>>> [make player execute command "/selldiamond"] Et pour éviter que le joueur ai des problèmes, tu ne mets pas de permission à ta commande /selldiamond. D'autre part, si j'ai bien compris là où tu veux en venir tu étais en train de réaliser 9 commandes différentes au lieu d'une seule. Donc pour te faciliter la vie je te donne le code que tu aurais du mettre. Voici le code que tu nous as donné corrigé : command /start shop: permission: op trigger: set {2} to 2 set {4} to 4 set {8} to 8 set {16} to 16 set {34} to 34 set {48} to 48 set {56} to 56 set {64} to 64 command /diamond2: permission: op trigger: set {_75} to 75 set {_2} to ({2}*{_75}) set {_4} to ({4}*{_75}) set {_8} to ({8}*{_75}) set {_16} to ({16}*{_75}) set {_34} to ({32}*{_75}) set {_48} to ({48}*{_75}) set {_56} to ({56}*{_75}) set {_64} to ({64}*{_75}) wait 1 ticks open chest with 1 rows named "&bDiamant &7: &e&lvente" to player wait 1 tick format slot 0 of player with a diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &81 || &8&lPrix de vente &7: &8%{_75}%$$ " to run [make player execute command "/sell1diamond"] wait 1 ticks format slot 1 of player with 2 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &82 || &8&lPrix de vente &7: &8%{_2}%$ " to run [make player execute command "/sell2diamond"] wait 1 ticks format slot 2 of player with 4 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &84 || &8&lPrix de vente &7: &8%{_4}%$ " to run [make player execute command "sell4diamond"] wait 1 ticks format slot 3 of player with 8 diamond named "&bDiamant &7: &e&8lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &88 || &8&lPrix de vente &7: &8%{_8}%$ " to run [make player execute command "sell8diamond"] wait 1 ticks format slot 4 of player with 16 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &816 || &8&lPrix de vente &7: &8%{_16}%$ " to run [make player execute command "sell16diamond"] wait 1 ticks format slot 5 of player with 34 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &834 || &8&lPrix de vente &7: &8%{_34}%$ " to run [make player execute command "sell34diamond"] wait 1 ticks format slot 6 of player with 48 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &848 || &8&lPrix de vente &7: &8%{_48}%$ " to run [make player execute command "sell48diamond"] wait 1 ticks format slot 7 of player with 56 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &856 || &8&lPrix de vente &7: &8%{_56}%$ " to run [make player execute command "sell56diamond"] wait 1 ticks format slot 8 of player with 64 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &864 || &8&lPrix de vente &7: &8%{_64}%$ " to run [make player execute command "sell64diamond"] Et donc au lieu de mettre des commandes comme "/sell1diamond" ou encore "/sell64diamond" ce qui t'obliges à faire autant de commandes que d'objets dans ton inventaire, tu devrais faire comme ça : Pour la vente d'un diamant par exemple : [make console execute command "/selldiamond 1 %player%"] Avec une commande à arguments : command /selldiamond <number> <player>: Je t'ai fait le code tout entier, le voici : command /start shop: permission: op trigger: set {2} to 2 set {4} to 4 set {8} to 8 set {16} to 16 set {34} to 34 set {48} to 48 set {56} to 56 set {64} to 64 command /diamond2: permission: op trigger: set {_75} to 75 set {_2} to ({2}*{_75}) set {_4} to ({4}*{_75}) set {_8} to ({8}*{_75}) set {_16} to ({16}*{_75}) set {_34} to ({32}*{_75}) set {_48} to ({48}*{_75}) set {_56} to ({56}*{_75}) set {_64} to ({64}*{_75}) wait 1 ticks open chest with 1 rows named "&bDiamant &7: &e&lvente" to player wait 1 tick format slot 0 of player with a diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &81 || &8&lPrix de vente &7: &8%{_75}%$$ " to run [make console execute command "/selldiamond 1 %player%"] wait 1 ticks format slot 1 of player with 2 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &82 || &8&lPrix de vente &7: &8%{_2}%$ " to run [make console execute command "/selldiamond 2 %player%"] wait 1 ticks format slot 2 of player with 4 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &84 || &8&lPrix de vente &7: &8%{_4}%$ " to run [make console execute command "selldiamond 4 %player%"] wait 1 ticks format slot 3 of player with 8 diamond named "&bDiamant &7: &e&8lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &88 || &8&lPrix de vente &7: &8%{_8}%$ " to run [make console execute command "selldiamond 8 %player%"] wait 1 ticks format slot 4 of player with 16 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &816 || &8&lPrix de vente &7: &8%{_16}%$ " to run [make console execute command "selldiamond 16 %player%"] wait 1 ticks format slot 5 of player with 34 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &834 || &8&lPrix de vente &7: &8%{_34}%$ " to run [make console execute command "selldiamond 34 %player%"] wait 1 ticks format slot 6 of player with 48 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &848 || &8&lPrix de vente &7: &8%{_48}%$ " to run [make console execute command "selldiamond 48 %player%"] wait 1 ticks format slot 7 of player with 56 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &856 || &8&lPrix de vente &7: &8%{_56}%$ " to run [make console execute command "selldiamond 56 %player%"] wait 1 ticks format slot 8 of player with 64 diamond named "&bDiamant &7: &e&lvente" with lore "&b&lDescription : || &8&lQuantitée &7: &864 || &8&lPrix de vente &7: &8%{_64}%$ " to run [make console execute command "selldiamond 64 %player%"] command /selldiamond <number> <player>: trigger: if arg 1 is 1: if arg 2 don't have 1 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 1 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2 if arg 1 is 2: if arg 2 don't have 2 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 2 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2 if arg 1 is 4: if arg 2 don't have 4 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 4 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2 if arg 1 is 8: if arg 2 don't have 8 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 8 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2 if arg 1 is 16: if arg 2 don't have 16 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 16 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2 if arg 1 is 34: if arg 2 don't have 34 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 34 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2 if arg 1 is 48: if arg 2 don't have 48 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 48 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2 if arg 1 is 54: if arg 2 don't have 54 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 54 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2 if arg 1 is 64: if arg 2 don't have 64 diamond: message "&c[Erreur] : Vous n'avez pas suffisamment de &3Diamant &cpour effectuer cette action." to arg 2 else: remove 64 diamond from the inventory of arg 2 message "&3[sell] : &7Votre vente s'est effectuée avec &2succès &7!" to arg 2
    2 points
  3. Déjà, je vais utiliser une astuce qui a été donnée dans ce tutoriel : https://skript-mc.fr/forum/threads/texte-multicolore.7148/ (je parle du split par caractère :3) Donc, voilà le code final, puis j'expliquerai ligne par ligne on chat: set {_firstcharacter::*} to message split by "" #Cette ligne a été trouvée par @blueblasterz send "Le premier caractère de votre message est %first element out of {_firstcharacter::*}%" Relativement simple, non? :D Donc, voila l'explication ligne par ligne on chat: Obvious set {firstcharacter::*} to message split by "" On récupère tous les caractères du message send "blabla %first element out of {_firstcharacter::*}%" Voici la partie la plus importante du skript c:. En faites, on récupère le premier élément de la liste qui contient la liste de tous les caractères du message. Donc, on récupère le premier caractère split :3. Donc on a le premier caractère du message c: Vous aurez besoin de Skript, WildSkript et peut-être SkQuery
    1 point
  4. Nan vu qu'il n'y a pas un gros calcul xD
    1 point
  5. Il y a écrit que UmbaskaCord n'est plus à jour et ne fonctionne plus malheureusement.
    1 point
  6. 1 point
  7. Oyez, oyez, jeunes demoiselles et damoiseaux, Commençons par le commencement, Version: 1.8 Type de Skript: TimeSpan & Sanctions Description: Je viens aujourd'hui vous demandez un bout de skript, il me suffit juste de voir le fonctionnement pour le réadapter aux autres sanctions ^^' Bref, je ne vais pas y passer par quatre chemins, j'aurais besoin de vos compétences pour un script de bannissement temporaire où la commande serait la suivante: Et j'aimerais que le TimeSpan soit sous la forme suivante: Voilà, je ne sais pas si ce type de TimeSpan est réalisable mais je crois me souvenir que @PsYZiiK avait fait un script similaire dans les demandes mais je parviens pas à retrouver celui-ci. Je vous souhaite une agréable journée/soirée, Law.
    1 point
  8. Les sanctions ne se font pas que par GUI, regarde bien la présentation ;) ! Tu peux très bien utiliser la commande /zTempBan <Pseudo> <Temps> (Le temps comme Essentials) <Raison>^^ ! De plus la commande est personnalisable + tous les messages & co ! Sinon, il faudrait faire une fonction, @Soufreur78, l'a fait ! Il te suffit de mettre en entrée "10s" sous forme de texte, et en sortie ça va te donner "10 seconds" sous forme de TimeSpan. Exemple : function CheckTime(time: text) :: boolean: # Fonction qui va vérifier si une durée a été écrite correctement ! if length of {_time} is 2: set {_check::*} to groups 0 of "%{_time}%" matched to "^[0-9](s|S|m|M|h|H|d|D)$" else if length of {_time} is 3: set {_check::*} to groups 0 of "%{_time}%" matched to "^[0-9]{2}(s|S|m|M|h|H|d|D)$" if {_check::*} is set: return true else: return false function TransformTime(time: text) :: timespan: # Fonction qui va retourner le temps sous forme de TimeSpan ! if length of {_time} is 2: set {_time} to "0%{_time}%" set {_characters::*} to {_time} split at "" if {_characters::3} is "s": set {_characters::3} to " seconds" else if {_characters::3} is "m": set {_characters::3} to " minutes" else if {_characters::3} is "h": set {_characters::3} to " hours" else if {_characters::3} is "d": set {_characters::3} to " days" set {_result} to "%{_characters::1}%%{_characters::2}%%{_characters::3}%" parsed as timespan return {_result} function SanctionTime(time: timespan) :: text: # Fonction qui va retourner le temps de la sanction ! set {_time} to "%{_time}%" set {_words::*} to {_time} split at " " if {_words::2} is "second" or "seconds": set {_words::2} to "seconde(s)" else if {_words::2} is "minute" or "minutes": set {_words::2} to "minute(s)" else if {_words::2} is "hour" or "hours": set {_words::2} to "heure(s)" else if {_words::2} is "day" or "days": set {_words::2} to "jour(s)" set {_result} to "%{_words::1}% %{_words::2}%" return {_result} function TimeLeft(difference: timespan, cooldown: timespan) :: text: # Fonction qui va retourner le temps d'une sanction temporaire ! subtract {_difference} from {_cooldown} set {_cooldown} to "%{_cooldown}%" replace "second " with "seconde(s) " in {_cooldown} replace "seconds" with "seconde(s)" in {_cooldown} replace "minute " with "minute(s) " in {_cooldown} replace "minutes" with "minute(s)" in {_cooldown} replace "hour " with "heure(s) " in {_cooldown} replace "hours" with "heure(s)" in {_cooldown} replace "day " with "jour(s) " in {_cooldown} replace "days" with "jour(s)" in {_cooldown} replace "and" with "et" in {_cooldown} set {_words::*} to {_cooldown} split at " " if {_words::5} is set: set {_words::1} to rouned down ("%{_words::1}%" parsed as number) set {_words::4} to rouned down ("%{_words::4}%" parsed as number) set {_result} to "%{_words::1}% %{_words::2}% %{_words::3}% %{_words::4}% %{_words::5}%" else: set {_words::1} to rouned down ("%{_words::1}%" parsed as number) set {_result} to "%{_words::1}% %{_words::2}%" return {_result} command /tempban <offline player> <text> <text>: trigger: if CheckTime(arg 2) is false: send "&cErreur : La durée n'a pas été écrite correctement !" else: set {ban.%arg 1%} to true set {ban.now.%arg 1%} to now set {ban.time.%arg 1%} to TransformTime(arg 2) set {ban.reason.%arg 1%} to arg 3 wait a tick set {_time} to SanctionTime({ban.time.%arg 1%}) broadcast "&b> %arg 1% &7a été banni par &b%player% &7pendant &b%{_time}% &7pour &b%arg 2% &7!" on join: if {ban.%player%} is true: if difference between {ban.now.%player%} and now is less than {ban.time.%player%}: wait a tick set {_time.left} to TimeLeft(difference between {ban.now.%player%} and now, {ban.time.%player%}) kick player due to "&cErreur : Vous avez été banni !%nl%%nl%&7Raison : &a%{ban.reason.%player%}%%nl%&7Temps restant : &a%{_time.left}%"
    1 point
  9. on join: set {_p} to player's displayname set the player tab to "%{_p}%" set name tag of player to "%{_p}%" Voilà c'est aussi simple ^^
    1 point
  10. De rien =) Toutes les commandes commencent comme ça :p Mais pas les événements :p
    1 point
  11. Ah, ce n'est pas de ça dont je parlais ^^' Dans son Skript Z-Modération ( respectable travail au passage ), les sanctions se font par GUI et non pas par commandes. Je me souviens l'avoir vu dans les demandes de Skript ou d'aide et il avait posté ( si ma mémoire ne me fait pas défaut ) un script similaire à ma demande ^^'
    1 point
  12. Oui @PsYZiiK a bien fait un skript de modération il s'appelle Z-Modération fouille dans les ressources
    1 point
  13. every second: loop all players: wipe loop-player's sidebar set name of sidebar of loop-player to "&6FrinoCraft" set score "&3" in sidebar of loop-player to 0 set score "&6Informations" in sidebar of loop-player to 1 set score "&2 " in sidebar of loop-player to 2 set score "&6%number of all players%" in sidebar of loop-player to 3 set score " " in sidebar of loop-player to 4 set score "&6%loop-player%" in sidebar of loop-player to 5
    1 point
×
×
  • 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.