Aller au contenu
blueblasterz

Tronquer un texte

Messages recommandés

Bonjour !

Cette 'petite' fonction va vous permettre de tronquer un texte pour qu'il ait une certaine longueur.

Il existe déjà une expression inclue dans Skript permettant de prendre les x premières/dernières lettres d'un texte, mais elle ne prend pas en compte le code couleur.

Par exemple ce texte : "§4§lTexte génial" apparait comme ceci : "Texte génial" dans minecraft. Mais si vous utilisez par exemple 'first 5 characters of "§4§lTexte génial"', vous n'obtiendrez pas "Texte" mais bien "T", car les marques de couleur et mise en page comptent pour 2 lettres chacune. Si par contre vous utilisez ma fonction, le code couleur sera ignoré, et vous obtiendrez bien le texte voulu. Pour utiliser la fonction, il vous suffit d'écrire :

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Le dernier argument ("") est ici laissé vide. Si par exemple vous vous servez de cette fonction pour raccourcir le nom d'un joueur, il serai utile de rajouter quelque chose comme "...". Si vous voulez les 10 premières lettres du nom d'un joueur, avec "..." à la fin, il vous faut donc écrire :

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Notez que si le texte que vous envoyez est plus court que la limite donnée, le résultat sera le texte d'origine, sans les "..." à la fin.

Voici la fonction, commentée et expliquée :

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Je suis conscient que c'est pas très opti, mais boon.

Au passage, vous pourrez voir que le 'wait 1 tick' est mis en commentaire, car pour une raison qui m'échappe, Skript considère que l'on sort de la fonction après ça (j'ai une erreur sur le 'return' si je le décommente). À part ça, tout le code est fonctionnel.

J'espère que ça vous sera utile :)

 

[spoiler=PS]Rappelez vous que la fonction doit être placé soit tout en haut de votre script, soit dans un autre fichier de script situé au dessus dans l'ordre alphabétique. Personnellement, si je dois utiliser une même fonction dans plusieurs de mes scripts, je la met dans un fichier nommé "+fonctions.sk", comme cela je suis quasi sûr qu'il sera chargé en premier. Sinon je la met juste en dessous des options de mon script. L'essentiel est que la fonction soit chargé avant son utilisation dans votre script

  • J'aime 2

Partager ce message


Lien à poster
Partager sur d’autres sites
Pas mal, mais je vais pas en quoi ça peut servir o_O
En fait la principale utilisation que je vois, c'est quand on ouvre un GUI avec un nom variable, pour éviter que ce nom dépasse de l'interface. On peut aussi imaginer un item avec une lore coupée pour donner par exemple la première ligne de description d'un item. J'avoue qu'en soit ça n'a pas beaucoup d'utilité, mais je suis sûr que ça servira un jour à quelqu'un ;)

 

Et merci @LavaPower :)

Partager ce message


Lien à poster
Partager sur d’autres sites
On peut faire ça pour retirer la couleur :

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

En effet, tu m'apprend un truc ^^ Néanmoins je suis obligé de retirer le formatage lettre par lettre comme je le fait, car je l'enregistre dans le même temps pour pouvoir "recomposer" le texte avec les X premières lettres ET le code couleur.

Partager ce message


Lien à poster
Partager sur d’autres sites

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.