Aller au contenu

Classement

Contenu populaire

Affichage du contenu avec la meilleure réputation le 02/03/2018 dans Messages

  1. Bonjour/bonsoir ! Dans les dernières versions de Skript se trouve une nouvelle fonctionnalité assez utile, permettant d'utiliser le format JSON dans des messages de manière à mon goût très simple et plus pratique qu'avec json.sk. ➤ Qu'est ce qu'un message contentant du 'json' ? Comment en faire via Skript ? Le json est un format permettant de stocker des données, et n'est pas utilisé que par Minecraft. Dans Minecraft, il permet entre autres d'envoyer des messages en couleur, contenant des commandes cliquables, des infobulles, et autres choses que l'on verra par la suite. Pour l'utiliser directement dans minecraft, il faut se servir de la commande "/tellraw", une commande à la syntaxe très restrictive et compliquée à utiliser. C'est le mode de fonctionnement de l'API json.sk. L'inconvénient est qu'avec ceci, il est difficile (impossible ?) d'envoyer plusieurs formats différents sur la même ligne, par exemple 2 commandes cliquables sur 2 portions de textes différentes de la même ligne. De plus cela envoie dans la console le log de la commande tellraw. Il existe aussi une syntaxe contenue dans SkQuery permettant d'envoyer des messages json, pouvant contenir plusieurs formats, mais cette syntaxe reste assez restrictive elle aussi, et nécessite l'addon. ➤ La nouvelle méthode Depuis longtemps il existe dans skript des bouts de codes intégrable directement dans l'effet "message/send", permettant de faire la mise en forme : message "<red><bold>Message en rouge et en gras<reset> en blanc <green> en vert" Ils sont très peu utilisés, car il est bien plus simple de se servir de "&4 , &l , &2 , &r , ...". Mais c'est avec des balises de ce type que l'on va intégrer des commandes/tooltip à nos messages. Voici les 4 balises disponibles : <url:url>texte cliquable, ouvre la fenêtre 'Êtes vous sûr de vouloir ouvrir..'<reset> <command:/commande>texte cliquable, exécute la commande<reset> <suggest command:commande>texte cliquable, écrit la commande dans la barre de tchat<reset> <tooltip:texte de la tooltip>Quand on passe la souris sur le texte, affiche la tooltip<reset> Et voici quelques exemples d'utilisations et le résultat en jeu: [spoiler=Exemples] #1 message "<command:/say J'ai cliqué><tooltip:§4Allez, clique%nl%§2§lSteuplé%nl%&1 :)>Passe ta souris....<reset>" #2 message "<url:https://skript-mc.fr/forum><tooltip:Cliquer ici pour ouvrir%nl%le magnifique forum>Ouvrir le forum skript-mc.fr<reset>" #3 message "<tooltip:Clique pour faire /say Bonsoir><command:/say bonsoir>clic ?<reset>%nl%<tooltip:Clique pour préparer la commande /say><suggest command:/say >ou bien ici ?<reset>" [spoiler=Résultats](Après avoir cliqué sur le message) #1 [ATTACH=full]7864[/ATTACH] J'ai sauté quelques lignes pour ne pas cacher le texte, mais normalement il n'y a pas de saut de ligne. On remarque que dans les tooltips, le code couleur doit être mit avec le symbole § et non &, si vous écrivez le texte directement. Néanmoins si le texte de la tooltip est stocké dans une variable, alors le caractère & fonctionnera. Exemple : set {_tooltip} to "&1Bonsoir" message "<tooltip:%{_tooltip}%>Bonjour<reset>" affichera bien Bonsoir en bleu dans la tooltip. #2 [ATTACH=full]7867[/ATTACH] et au clic : [ATTACH=full]7868[/ATTACH] [spoiler=Résultats] #3 [ATTACH=full]7866[/ATTACH] Juste pour montrer qu'il est possible de faire plusieurs commandes dans le même message, sur plusieurs parties de textes différentes. C'est bien sûr aussi possible avec les url. ➤ Remarques ● Certaines combinaisons de formatage ne sont pas possibles, si elles sont mises sur la même portion de texte: - commande + commande suggérée - commande + url - commande suggérée + url ● Ils n'est pas possible d'associer plus d'un format du même type à la même portion de texte. Par exemple, les codes suivants ne fonctionneront que partiellement : message "<command:/say premier message><command:/say 2eme message>clic<reset> -> n'exécute que la 2eme commande message "<tooltip:premiere><tooltip:deuxième><tooltip:troisième>texte<reset>" -> n'affiche que la 3ème tooltip etc.. ● Les caractères < et > écrits dans l'un des formatages le fera boguer. Je n'ai personnellement pas trouvé d'autre moyen que de les remplacer par un caractère unicode comme ➤ ou ▶ ● Les commandes cliquables et les commandes suggérées ne peuvent pas faire plus de 100 caractères, sinon seuls les 100 premiers caractères seront exécutés. ● Placer le symbole § dans une commande cliquable fera kick le client, avec l'erreur "illegal characters in chat". Si vous placez un § dans une commande suggérée, la couleur sera bien appliquée dans le tchat, mais le joueur sera kick s'il exécute la commande, avec la même erreur. ● Les urls doivent commencer par "http(s)://", sinon le texte ne sera pas cliquable ● Ces formats ne sont pas utilisables avec l'effet broadcast Je rappelle qu'il faut avoir une version assez récente de skript, prenez les dernières releases de Bensku pour être sûr, et parce que c'est bien d'être à jour ;) Pour info, cette fonctionnalité a été ajoutée dans la dev26. Voilà, en espérant que ça vous sera utile :)
    3 points
  2. @Necyx @sam57730 stop les provocation. Vous êtes là pour vous aider et non pour vous faire la guerre donc modérez vous ;)
    3 points
  3. Give a blue wool block named "nom" (with lore "nom") to player (...) = Optionnel, si tu le rajoute dans ton code enlève les '(' et ')'
    2 points
  4. Alors je constate que tu es un/une novice car c'est un message qui contient le "!" Donc je peux mettre ce que je veux et pour les points enlève les car c'est mon téléphone qui les mets automatiquement .. Donc voila (s'il te plait like tout mes messages sa m'aide de ouf ) :)
    2 points
  5. C'est très simple il faut télécharger la version 2.2 qu'il faut chercher mais va sur le profil du magnifique @noftaly tu auras tous les liens ... (like stp:))
    1 point
  6. [spoiler=Code] on death: victim is a player attacker is a player clear {KillStreak.%victim%} if {KillStreak.%attacker%} is set: if {KillStreak.%attacker%} isn't 10: add 1 to {KillStreak.%attacker%} else: add 1 to {KillStreak.%attacker%} make console execute command "coins add 3 %attacker%" send "&e&l➤ &6+ 3 Coins" to attacker if {KillStreak.%attacker%} is 5: broadcast "&2%attacker% &6à atteint un KillStreak de &e5 Kills&6 !" if {KillStreak.%attacker%} is 10: broadcast "&2%attacker% &6à atteint un KillStreak de &e&l10 Kills &r&6!" while {KillStreak.%attacker%} is 10: play wolf hearts on the attacker wait 3 ticks Essaye ceci
    1 point
  7. Give a blue wool block to player #sinon remplace blue wool block par son id
    1 point
  8. [spoiler=Code, Non tester] option: Minimum_de_joueur: 5 Command: coins give %player% 1000 every 15 minutes: number of all players >= {@Minimum_de_joueur} set {NumberAléatoire} to random number between 1 and 10 set {Disablechat} to true loop 10 times: broadcast " " broadcast "&7Une question va être poser, vous devais y répondre dans le chat directement !" wait 2 second broadcast "&4Chat désactiver pendant 5 secondes !" broadcast " " if {NumberAléatoire} is 1: broadcast "&6- Quelle est année de la prise de la Bastille ?" if {NumberAléatoire} is 2: broadcast "&6- Quelle est le meilleur minerais sur Ecclesia ?" if {NumberAléatoire} is 3: broadcast "&6- Quelle est le nom du codeur d'Ecclesia ?" if {NumberAléatoire} is 4: broadcast "&6- Combien font 3 X 8 + 7 + 2 ?" if {NumberAléatoire} is 5: broadcast "&6- En quelle année l'Amérique a-t-elle était découverte ?" if {NumberAléatoire} is 6: broadcast "&6- Quelle est le meilleur grade sur Ecclesia ?" if {NumberAléatoire} is 7: broadcast "&6- Combien font 9 x 9 + 21 ?" if {NumberAléatoire} is 8: broadcast "&6- Quelle est la monnaie en Angleterre ?" if {NumberAléatoire} is 9: broadcast "&6- Quelle est la date de la chute de l'empire romain ?" if {NumberAléatoire} is 10: broadcast "&6- Quelle est la capitale de la Pologne ?" wait 5 seconds if {NumberAléatoire} is set: clear {NumberAléatoire} broadcast "&7Event terminé, personne na su répondre correctement." on chat: if {NumberAléatoire} is set: cancel event if {NumberAléatoire} is 1: messsage is "1789" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : 1789)" make console execute command "{@Command}" stop if {NumberAléatoire} is 2: messsage is "Diamant" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : Diamant)" make console execute command "{@Command}" stop if {NumberAléatoire} is 3: messsage is "Hcross95" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : Hcross95)" make console execute command "{@Command}" stop if {NumberAléatoire} is 4: messsage is "33" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : 33)" make console execute command "{@Command}" stop if {NumberAléatoire} is 5: messsage is "1492" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : 1492)" make console execute command "{@Command}" stop if {NumberAléatoire} is 6: messsage is "Dieu" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : Dieu)" make console execute command "{@Command}" stop if {NumberAléatoire} is 7: messsage is "102" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : 102)" make console execute command "{@Command}" stop if {NumberAléatoire} is 8: messsage is "Livre sterling" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : Livre sterling)" make console execute command "{@Command}" stop if {NumberAléatoire} is 9: messsage is "476" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : 476)" make console execute command "{@Command}" stop if {NumberAléatoire} is 10: messsage is "Varsovie" clear {NumberAléatoire} broadcast "&6%player% &2à trouver la réponse en premier ! Il gagner donc &31000$ &2! &7( La réponser étais : Varsovie)" make console execute command "{@Command}" stop send "&4Réponse fausse !"
    1 point
  9. Bon, certe un skript ta déjà étais donner mais j'en ai fais un aussi ( Hier mais j'ai pas pu le test, ni le publier avant maintenant ) Voilà a toi de voir. Ps: si tu a des erreurs partagent les moi :D [spoiler=Code] on death: victim is a player attacker is a player clear {KillStreak.%victim%} if {KillStreak.%attacker%} isn't 10: add 1 to {KillStreak.%attacker%} make console execute command "coins add 3 %attacker%" send "&e&l➤ &6+ 3 Coins" to attacker if {KillStreak.%attacker%} is 5: broadcast "&2%attacker% &6à atteint un KillStreak de &e5 Kills&6 !" if {KillStreak.%attacker%} is 10: broadcast "&2%attacker% &6à atteint un KillStreak de &e&l10 Kills &r&6!" while {KillStreak.%attacker%} is 10: play wolf hearts on the attacker wait 3 ticks
    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.