-
Compteur de contenus
217 -
Inscription
-
Dernière visite
-
Jours gagnés
12
Type de contenu
Profils
Forums
Téléchargements
Messages posté(e)s par TitiLaPierre
-
-
Salut 👋 ! Ces erreurs ne proviennent pas de mon code.
-
En effet, dans événement "every x", on ne retrouve pas de joueur comme on pourrait l'avoir dans un "on join" ou dans une commande car l'événement n'est pas rattaché à un joueur. Ce que l'on peut faire, c'est une boucle qui va récupérer chaque joueur du serveur et leur envoyer le title. On aurait donc :
loop all players: send title "Redémarrage du serveur" with subtitle "On va vous déconnecter" to loop-player for 5 seconds
À noter que en Skript certains effets/expressions supportent des arguments contenant plusieurs élément. Dans notre cas, voici le pattern d'utilisation de l'effet pour envoyer un title:
send title %string% [with subtitle %string%] [to %players%] [for %timespan%] [with fade[(-| )]in %timespan%] [(and|with) fade[(-| )]out %timespan%]
On peut ici indiquer plusieurs joueurs : [to %players%] donc, directement faire:
send title "Redémarrage du serveur" with subtitle "On va vous déconnecter" to all players for 5 seconds
-
Créer un /rename
dans Résolus
Salut ! 👋
Pour la première commande, la ligne ajoute une permission qui permet de bypass la commande. Si tu es opérateur sur le serveur, tu as toutes les permissions et n'est donc pas affecté par le cooldown. Si tu veux que même les opérateurs soit affectés au cooldown, tu peux simplement supprimer cette ligne.
cooldown bypass: bypass.cooldown # Facultatif: Si le joueur à cette permission, il ne sera pas affecté par le cooldown.
Pour la seconde commande, c'est dû a un oubli de ma part. Voici le code corrigé :
command /mycommand: trigger: if difference between now and {cooldown::mycommand::%player%} >= 10 seconds: # Si la durée entre maintenant et la dernière fois que le joueur à fait la commande est supérieur à 10 seconde -> si le cooldown est dépassé. clear {cooldown::mycommand::%player%} if {cooldown::mycommand::%player%} is not set: set {cooldown::mycommand::%player%} to now # Il manquait cette ligne send "Tu as exécuté la commande" to player else: send "Tu dois patienter 10 secondes avant de pouvoir refaire cette commande" to player
-
1
-
-
Créer un /rename
dans Résolus
Salut 👋 ! Skript à déjà par défaut une fonctionnalité pour faire des commandes à cooldown.
Voici le format qu'une commande avec cooldown peut prendre
command /mycommand: cooldown: 10 seconds # La durée du cooldown cooldown message: &cTu dois patienter 10 secondes avant de pouvoir refaire la commande. # Le message à afficher si le joueur essaye de faire la commande alors que le cooldown est toujours présent cooldown bypass: bypass.cooldown # Facultatif: Si le joueur à cette permission, il ne sera pas affecté par le cooldown. trigger: send "Tu as exécuté la commande" to player
Autrement, tu peux recoder toi même un système de cooldown comme ceci :
command /mycommand: trigger: if difference between now and {cooldown::mycommand::%player%} >= 10 seconds: # Si la durée entre maintenant et la dernière fois que le joueur à fait la commande est supérieur à 10 seconde -> si le cooldown est dépassé. clear {cooldown::mycommand::%player%} if {cooldown::mycommand::%player%} is not set: send "Tu as exécuté la commande" to player else: send "Tu dois patienter 10 secondes avant de pouvoir refaire cette commande" to player
-
Salut 👋! Voici un poti code qui pourrait te plaire
command /canswim <player> <boolean>: permission: canswim.change trigger: if arg-2 is true: clear {swimRestriction::%player%} send "&aLe joueur %player% peut maintenant nager." to player else: set {swimRestriction::%player%} to true send "&cLe joueur %player% ne peut maintenant plus nager." to player swimRestriction(player) on join: swimRestriction(player) function swimRestriction(p: player): while {swimRestriction::%{_p}%} is true: if {_p} is offline: stop if {_p} is in water: if {_waterTime} is not set: set {_waterTime} to now if difference between {_waterTime} and now >= 5 seconds: apply blindness 1 to {_p} for 2 seconds apply weakness 1 to {_p} for 2 seconds apply nausea 1 to {_p} for 2 seconds if block at head location of {_p} is water: if y-pos of {_lastPosition} < y-pos of {_p}: set yaw of {_lastPosition} to yaw of {_p} set pitch of {_lastPosition} to pitch of {_p} teleport {_p} to {_lastPosition} send action bar "&cAttention! En restant dans l'eau, vous êtes vulnérable." to {_p} else: send action bar "&eAttention! En restant dans l'eau, vous êtes vulnérable." to {_p} else: clear {_waterTime} set {_lastPosition} to {_p}'s location wait a second
-
1
-
-
Salut ! Tu peux simplement utiliser l'expression :
highest [(solid|non-air)] block at %location%
highest [(solid|non-air)] block at %location%highest [(solid|non-air)] block at %location%highest [(solid|non-air)] block at %location%highest [(solid|non-air)] block at %location%highest [(solid|non-air)] block at %location%highest [(solid|non-air)] block at %locatiCela donnerait un code qui ressemblerait à cela :
command /top: trigger: teleport player to block over highest solid block at player send "&dPouf !" to player
-
1
-
-
Salut!
Peux-tu envoyer le code que tu utilises (Celui sans le on inventory).
-
Salut!
Cette version de Skript est vieille de 7 ans. Néanmoins, une fork de Skript continue de supporter la 1.8.x
Je te laisse essayer avec cette version: https://github.com/Matocolotoe/Skript-1.8/releases
Utilise ceci pour ton errreur:
give arg-2 of glass named "&fCaveBlock" to arg-1
-
Pourquoi ne pas directement utiliser sous cette forme au lieu de passer par un on inventory click:
make gui slot 0 with dirt: # </> Le code de ton on inventory click
Je suppose que quand tu définis les slots de ton GUI, le prix que tu indiques dans le lore est un integer et le vendeur un offline player.
-
Il y a 19 heures, maxouviclouis a dit :
Merci mais c'est pas sa que je cherche exactement:
Je voudrais que ca fasse apparaitre le nom de l'items du style "Excalibur". (Enfaite c'est le name de l'épée que je voudrais qui s'affiche)
Salut! Tu peux utiliser
name of attacker's tool
-
Salut!
Premièrement, aucune version de Skript nommé "2014" existe
Si tu souhaites faire ce que tu veux, il faut prendre la dernière version disponible sur le github de Skript (Voir ici) et utiliser la version +1.16 de Spigot (Ou de préférence PaperSpigot)
Je crois que tu auras aussi besoin de l'addon Skellett (Essaye d'abord sans)
Si toutes les conditions si-dessus sont respectés, tu peux utiliser ce code:
Command /me [<string>]: trigger: if arg 1 is not set: send "Erreur, veuillez indiquer une action" else: send "<##c2a2da>%player%: %arg 1%" to all players in radius of 5 around player
-
1
-
-
❑ Pourquoi créer sa propre coloration syntaxique ?
- Créer sa propre coloration syntaxique rend votre code plus lisible.
- Cela facilite donc sa compréhension (Pour vous et pour les autres).
- Cela permet de différencier différentes parties de votre code (Textes, chiffres, conditions...),
- et pour finir, c'est je pense bien plus jolie qu'un code seulement en blanc.
❑ Sommaire
- Introduction
- Préparation
- Paramétrage thème/syntaxe
- Thème: Créer une règle
- Syntaxe: Basique
- Syntaxe: Complexe
- Fin
❑ 1 - Introduction
C'est mon premier tutoriel donc soyez indulgents si des explications manquent.
Conseillez-moi en répondant a ce sujet !
Quelques pré-requis pour suivre ce tutoriel:
- Sublime Text 3 (Sans blagues) - (Télécharger)
- Une connaissance de base des syntaxes de JSON
- Une connaissance de base des syntaxes du YML/YAML
- Une connaissance des Regex
Liens pratiques:
De quoi sera constitué notre coloration syntaxique ?
- Un Thème, constitué de règles qui appliqueront des propriétés (Couleurs du texte, de l'arrière plan) à des identifiants (Voir ci-dessous)
- Une Syntaxe, permet l'envoie d'identifiant pour coloré le texte (Utilise des Regexs)
En JSON, quelque soit son type, la valeur d'une propriété devra être mit en chaîne de caractère (Exemple: "valeur", "5", "#eeeeee"...).
❑ 2 - Préparation
Pour commencer, nous allons créer nos fichiers nécessaires.
- Sur Windows [%appdata%.\Sublime Text 3\Packages] (Si vous utilisez un répertoire personnalisé, accéder à ce répertoire)
- Sur MacOS [~/Library/Application Support/Sublime Text 3/Packages]
- Sur Linux [~/.config/sublime-text-3/Packages]
- Créez-y un dossier nommé [User] et accédez-y.
- Vous choisirez un nom pour votre thème (Remplacez tout les [<nom>] dans ce tutoriel par le votre)
- Créez-y un fichier nommé [<nom>.sublime-color-scheme] (Le thème)
- Créez-y un fichier nommé [<nom>.sublime-syntax] (La syntaxe)
- Ouvrez ces deux fichiers
❑ 3 - Paramétrage thème/syntaxe
Commençons par le thème ! (<nom>.sublime-color-scheme).
Utilisation de:
- JSON
// Ceci est un commentaire, retirez les commentaires avant de commencer { "name": "<nom>", // Donnons lui un nom "globals": { "parametre_1": "valeur_1", // Voici le format à respecter "parametre_2": "valeur_2", // Vous trouverez la liste des propriétés plus bas dans le tutoriel :) "background": "#14151F", // Exemple d'utilisation (Hexadecimal) "foreground": "white", // Exemple d'utilisation (Nom de la couleur) "selection": "rgb(187, 188, 199)" // Exemple d'utilisation (RGB) }, }
Liste des propriétés (Page Officiel)
Liste des propriétés traduites : (Incomplet)
RévélationListe des propriétés:
(Reprise de la page officiel et traduction: https://www.sublimetext.com/docs/3/color_schemes.html) # Global background - Couleur - Couleur de l'arrière plan par défaut foreground - Couleur - Couleur du texte par défaut invisibles - Couleur - Couleur des espaces/tabulations lors de la sélection caret - Couleur - Couleur du curseur indiquant la position du texte block_caret - ??? A rechercher ??? line_highlight - Couleur - Couleur à gauche du code indiquant la ligne du curseur # Accents misspelling - Couleur - Couleur du soulignage des mots mal orthographiés fold_marker - ??? A rechercher ??? minimap_border - ??? A rechercher ??? accent - ??? A rechercher ??? # Diff line_diff_width - Chiffre - Taille entre le chiffre des lignes et la bordure (Gauche) (entre 1 et 8) line_diff_added - Couleur - Couleur d'une ligne (Gauche) quand elle à été ajouté line_diff_modified - Couleur - Couleur d'une ligne modifié (Gauche) line_diff_deleted - Couleur - Couleur d'une ligne supprimé # Selection selection - Couleur - Couleur d'arrière plan quand du texte est sélectionné selection_foreground - Couleur - Couleur du texte quand il est sélectionné selection_border - Couleur - Couleur de la bordure d'un texte sélectionné selection_border_width - Chiffre - Taille de la bordure de la sélection (entre 0 et 4) inactive_selection - ??? A rechercher ??? inactive_selection_foreground - ??? A rechercher ??? selection_corner_style - ??? A rechercher ??? selection_corner_radius - ??? A rechercher ??? # Find highlight - Couleur - Couleur de la bordure d'une chaine de caractère correspondant à une recherche find_highlight - Couleur - Couleur de fond quand un élément est sélectionné par la recherche find_highlight_foreground - Couleur - Couleur du texte quand un élément est sélectionné par la recherche # Brackets brackets_options - ??? A rechercher ??? (underline, stippled_underline, squiggly_underline, foreground, bold, italic, brackets_foreground) bracket_contents_options - ??? A rechercher ??? (underline, stippled_underline, squiggly_underline, foreground, bracket_contents_foreground) # Tags tags_options - ??? A rechercher ??? (underline, stippled_underline, squiggly_underline, foreground, tags_foreground) tags_foreground - ??? A rechercher ??? - Couleur # Shadow shadow - ??? A rechercher ??? shadow_width - ??? A rechercher ???
La configuration du thème est maintenant terminé !
Configurons la syntaxe ! (<nom>.sublime-syntax).
Utilisation de:
- YAML
# Ceci est un commentaire, retirez-les avant de faire le tuto # Laissez tout ce qui est ici (Sauf les commentaires), c'est important ! %YAML 1.2 --- name: Skript # Mettez le nom du language de programmation (Donc Skript) file_extensions: - sk # Listez les extensions scope: default.text # Identifiant par défault du code
La configuration du thème est maintenant terminé !
Pour activer le thème, il vous suffit d'aller dans [Preferences > Color Sheme... > <nom>]
Pour utiliser la syntaxe, il vous suffit d'ouvrir un fichier avec une des extensions indiquées dans file_extensions
❑ 4 - Thème: Créer une règle
Créons maintenant notre première règle de notre thème (<nom>.sublime-color-scheme)
{ "name": "<nom>", "globals": { // Configuration }, "rules": // C'est ici que c'est important [ { "name": "THE_NAME_I_WANT", // Mettez le nom de votre choix "scope": "id", // Mettez un identifiant UNIQUE (exemple: skript.number, skript.green...) // Propriétés (Liste en dessous) }, { // Exemple 1 "name": "True", "scope": "boolean.true", "foreground": "#3EE709", "font_style": "bold" }, { // Exemple 2 "name": "Effects", "scope": "skript.effects", "foreground": "darkblue" } ] }
Liste des propriétés traduites: (Incomplet)
foreground - Couleur - Couleur du texte background - Couleur - Couleur de l'arrière plan foreground_adjust - ??? A rechercher ??? selection_foreground - ??? A rechercher ??? font_style - Style - bold et/ou italic (Si vous souhaitez mettre les deux, indiquez "bold italic")
❑ 5 - Syntaxe: Basique
Pour créer une syntaxe, suivez le modèle ci-dessous:
%YAML 1.2 --- name: Skript file_extensions: - sk scope: default.text contexts: main: - match: "REGEX" # Regex scope: "IDENTIFIANT" # Identifiant (Relié à celui du thème) - match: "REGEX_2" # Regex scope: "IDENTIFIANT_2" # Identifiant (Relié à celui du thème) # Exemples - match: "true" scope: "boolean.true" - match: "([0-9]*)" scope: "skript.numbers"
❑ 6 - Syntaxe: Complexe
Vous vous posez peut-être la question de comment faire pour faire des sortes de "balises de texte". Voici la réponse:
%YAML 1.2 --- name: Skript file_extensions: - sk scope: default.text contexts: main: - match: "\"" push: # Cela s'apparente à une boucle infini (Ou presque) - meta_scope: "text" # Identifiant - match: "\"" # Si le caractère est " pop: true # Sortir de la boucle - match: "test" # Attention: Ce qui est en dehors de la boucle ne pourra pas être "match" si celle si est toujours active. Vous pouvez donc les mettre dans cette boucle scope: "id.test" # Si un résultat est "test" utiliser l'identifiant "id.test" sur "test"
Plus d'informations sur les syntaxes sur le site officiel.
❑ 7 - Conclusion
Vous pouvez trouver l'exemple que j'ai réalisé: (En développement)
- Si vous avez des suggestions pour améliorer ce tutoriel, faites m'en part !
- N'hésitez pas à partagez vos créations !
Citations: https://sublimetext.com/, https://htmlcolorcodes.com/fr/, https://regex101.com/.
Si vous avez besoin d'aide suite à ce tutoriel, créer un nouveau sujet et mentionner ce tutoriel.
-
3
-
Version Checker
dans Inactifs
Pas d'erreur en provenance d'un plugin (Skript, TuSKe, ProtocolSupport ou ViaVersion) au démarrage (Si tu le souhaites, tu peux m'envoyer ton fichier log de la console)
-
Version Checker
dans Inactifs
-
Version Checker
dans Inactifs
Essaye ça :
on join: send "Vous jouez en %mc version of player%!"
-
Version Checker
dans Inactifs
il y a 38 minutes, wyn___ a dit :Salut!
Oui,ma version de TuSKe est : 1.8.2-Pikachu-Patch-3 (ce qu'on m'a conseillé de prendre au lieu de la 1.8.3)
ma version de ViaVersion est : 2.2.3Essaye avec d'autre syntaxe (Du genre broadcast "%minecraft version of player%")
-
Version Checker
dans Inactifs
-
Version Checker
dans Inactifs
il y a 3 minutes, wyn___ a dit :command /test [<player>]: trigger: set {_ver} to minecraft version of arg-1 send "&7[&aVERSION&7] - &6Le joueur &b%arg-1% &utulise la version &b%{_ver}%"
Rien dans la console...
Cela t'envoie que la commande est inexistante ou alors rien ?
-
Il y a 8 heures, tyzouuu a dit :
Version de Minecraft : 1.9.4
Version de Skript : 2.4.1Type du skript : Améliorer le combo en skript
Description du script :
Bonjour, j'aimerai améliorer le combo en skript afin de faire un mode de jeu Combo sur mon serveur minecraft, j'ai déjà été voir plusieurs sujet parlant de ce sujet. Mais hélas, il y a une erreur, voici un screen vous montrant l'erreur ainsi qu'un screen vous montrant mon code:
Salut !
Es-tu sur que cette syntaxe existe ?
Où à tu trouvé ce code ? -
Version Checker
dans Inactifs
à l’instant, wyn___ a dit :J'avais supprimé Protocol Support comme un boulet!!
Je reload le skript, aucune erreur, mais la commande n'existe pas..Réenvoie ton code
Ah tu des erreurs dans la console à l'execution de la commande/au lancement du Skript ?
-
Version Checker
dans Inactifs
Il y a 1 heure, wyn___ a dit :Salut à toi !
Cet effet requière TuSKe, Protocol Support et ViaVersion comme indiqué sur la documentation de SkriptHub
-
Il y a 11 heures, ManagementN3000 a dit :
D'accord sauf que moi je veux créer mes propres enchantements comme l'utilité du plugin j'ai bien précisé en haut
"j'essaye de créer un enchantement personnalisé"En gros je veux que quand tu enchantes un item dans se ca Saturated bah que ça te l'affiche quand tu passes ta souris dessus je mettrai une image ^^
Dans ce cas c'est un livre y a marqué Recul II bah moi je veux que ça m'affiche sur mon épee ou pioche Saturated mon enchante personnalisé ^^
Salut! Jette un coup d'oeil sur la documentation https://skripthub.net/docs/?id=1283 (set %itemstack% to %itemstack% with custom enchantment %customenchantments%)
Cela doit fonctionner
-
Probleme /me
dans Résolus
il y a 2 minutes, HugoLogo a dit :Version de Minecraft : 1.7.10
Version de Skript : 2.X.XDescription du script :
Bonjour, j'ai fait un script pour quand on l'utulise sa fasse en message La personne ...
mais malheureusement quand je reload le skript il me dit succesfully mais la commande ne fait rien meme sur la console il n'y a absolument rien :
Voici le skript :
command /me [<text>]:
trigger:
loop all players in radius 12 of player's location:
stop trigger
if arg 1 is not set:
message "&7[&c&1Erreur&7] &4Commande demande : &1/me <message>" to player
stop trigger
if arg 1 is set:
broadcast "La personne %arg 1%"Merci d'avance.
Salut! Pourquoi avoir mi un stop trigger dans ta boucle ? Cela arrêtera ton script.
-
1
-
-
Salut, tu peux essayer ça :
At 18:00:
{day} is 3
make console execute command "/crate giveall player Fer"
At 17:00:
{day} is 7
make console execute command "/crate giveall player Event"
At 00:00;
add 1 to {day}
set {day} to 1 if {day} is 8
Command /setday <int>:
trigger:
set {day} to arg 1
Tu as juste à faire /day LE NUMÉRO DU JOUR DE LA SEMAINE (Example: Lundi = 1, Jeudi = 4...)
(Dsl, je suis sur telephone)
SkQuery capricieux ?
dans Résolus
Posté(e)
Salut 👋 ! Si je ne me trompe pas, SkQuery ne supporte plus la création de recette de fabrication.
Je te laisse regarder du côté de l'addon SkBee qui fourni se support : https://skripthub.net/docs/?id=4051