-
Compteur de contenus
98 -
Inscription
-
Dernière visite
-
Jours gagnés
5
Type de contenu
Profils
Forums
Téléchargements
Tout ce qui a été posté par DKSM
-
C'est vrai qu'on ne peut pas récupérer le contenu du log directement sans addons.. Donc tu peux faire soit : Un addons pour lire le fichier .log Utiliser les variables listes de Skript de base mais faut pas en abuser en terme d'historique Skript-Yaml qui lui sera un choix entre deux car il fera des fichiers plus optimisés que les variables liste de Skript et tu pourra aussi faire la commande Une base de donnée, mais ce sera un peu plus technique à setup et bien sur, il te faut une base de donnée + un addons pour intéragir avec
-
Il n'y a techniquement rien de compliqué à faire la dedans, tu va juste utiliser la fonction log de skript pour enregistrer plein d'events différents etc... https://skripthub.net/docs/?id=1136 Tu veux pas essayer toi même un peu ?
-
on chat: cancel event broadcast formatted "<command:/reportchat %player% %message%>&4⚠<reset> &r[&dGlobal&r] &e%player%&r: %message%" command /reportchat <player> <text>: trigger: send "%arg-1%, %arg-2%" to player Hello, J'ai ajouté le formatted qui permet de considérer la <command:/....> J'ai ajouté les espaces nécessaires dans la commande car sinon ça ferait /reportchatjoueurmessage au lieu de /reportchat joueur message J'ai aussi enlevé les variables que tu set avant car elles ne servent pas à grand chose surtout que l'argument 1 de la commande /reportchat est un player, pas un texte. Le stop sert à rien non plus Bonne journée ^^
-
Hello, tu prévois quoi contre l'eau ?
-
résolu ✔ Stick qui kick un joueur en cliquant sur le joueur
DKSM a répondu à un(e) sujet de EletrixTimeLeVrai dans Résolus
on right click on player: if name of player's tool is "Kicker": kick event-entity due to "Tu as été kick" J'ai pas essayé mais ça devrait pas être loin, tu as pas beaucoup cherché. -
J'ai fait un test, tu penses vraiment que porter la cible est le meilleur choix, ca gâche pas mal la vue je trouve ^^' Les joueurs ne sont pas trop fait pour porter d'autres joueurs sans que ca gène largement le champ de vision une téléportation très rapide qui n'affecte que la position mais pas le pitch ni le yaw pour pas faire des trucs bizarre dans la vue serait plus pratique à mon gout
-
Hello, ca devrait fonctionner assez bien Il te faut un item renommé correspondant à la ligne 2, l'item n'a aucune importance, seulement le nom. Explications rapido: Quand on click droit sur un joueur Si le nom de l'outil est "Baton de fouille" On vérifie si la distance est inférieur ou égale à 3 blocs On prévient la cible qu'elle est entrain d'être fouillé par un message On ouvre l'inventaire de la cible On lance une boucle qui vérifie si la distance est inférieure ou égale à 3 blocs de distance Tant que la boucle tourne, on vérifie qu'on est dans l'inventaire de la cible, sinon on stop la boucle Si la cible s'éloigne de plus de 3 blocs, la boucle n'est plus valide et se stop Si la boucle est stoppé, on ferme l'inventaire de la cible pour la personne qui a lancé la fouille on right click on player: if name of player's tool is "Baton de fouille": if distance between player and event-entity <= 3: send "Vous êtes entrain de subir une fouille..." to event-entity open inventory of event-entity to player while distance between player and event-entity <= 3: if player's current inventory is not event-entity's inventory: stop wait 2 tick close player's inventory Selon l'item utilisé, il faudra ajouter un petit cancel event dans le code après la vérification du nom de l'objet pour ne pas avoir de problème.
-
Tu peux définir la vitesse de déplacement avec Skript de base, augmente juste la vitesse du joueur de 3% à chaque kill Enfin, je veux dire par là, il n'y a rien de compliqué, c'est juste mathématique ^^
-
L'addons Skellett semble avoir quelques syntaxes en rapport avec la world border, faudrait peut-être fouiller de ce côté là https://docs.skunity.com/syntax/search/addon:Skellett border
-
Je propose une solution théorique qui pourrait fonctionner mais je ne travail pas avec des versions d'il y a 10 ans. Faudra attendre le passage d'un autre ^^
-
Au pire tente lui directement ^^
-
Le plus optimale resterais d'utiliser la fonction de bordure de minecraft de base, possiblement géré en Skript D'ailleurs, si le serveur utilise un texture pack, remplacer l'apparence de la bordure de base pourrait être sympa ^^ Sinon, faire apparaitre des blocs ou particules sur une telle quantités de blocs, ca va surement faire mal au serveur/joueur ^^
-
Envoi un code de ce que tu fais déjà, ca aidera aussi
-
En faite, tu ne peux pas vraiment set une variable sur un item, tu peux stocker une informations sur l'item (Nom, NBT...) et ensuite le comparer à une variable qui aurait la même informations. L'idée étant qu'il faut absolument rendre la pioche unique. Je pourrais probablement apporter un peu plus de détails si tu expliques ce que tu souhaites faire au final ^^
-
Oula, si tu veux envoi moi ton discord en MP pour en parler ^^ Mais en brouillon ca donnerai on place unBloc: if le bloc et un bloc utilisé dans les métiers: if {bloc::%player's world%} is not set: add player's world to {bloc::*} if {bloc::player's world%::%chunk at event-block%} is not set: add chunk at event-block to {bloc::player's world%::*} add location of event-block to {bloc::player's world%::%chunk at event-block%::*} on break: if {bloc::player's world%::%chunk at event-block%} is set: if {bloc::player's world%::%chunk at event-block%::%location of event-block%} is set: on donne pas d'xp remove location of event-block from {bloc::player's world%::%chunk at event-block%::*} Alors, on est sur un truc très dégueulasse pas utilisable pour l'exemple. C'est juste pour donner une potentiel idée de la démarche ^^ Il pourrait être optimisé pour être plus précis et minimiser encore les calculs inutiles Pour pas conserver certaines variables vides inutilement, il faudrait aussi nettoyer les variables Le tout de manière plus propre, probablement avec des fonctions pour que ce soit plus propres et une manière simple de vérifier si c'est un bloc de métier
-
En faite, tu as pas besoin de stocker de variable sur la buche cassé, de toute façon, elle ne la retiendra pas ^^ Techniquement, tout ce qui est posé par un joueur n'est pas censé apporté d'XP si on le recasse dans ton système de métier Donc ce qu'il faudrait je pense, c'est stocker la position du bloc qui est posé par un joueur, et ensuite vérifier quand on casse un bloc: Si le bloc en question fait partie de la liste: - on ne donne pas d'XP mais aussi - supprimer le bloc de la liste vu qu'il n'existe plus Je te recommande aussi pour que la vérif ne soit pas trop lourde de segmenté la recherche du bloc Par exemple, si une variable fini par contenir 200 000 blocs, on va pas passer au travers des 200 000 blocs à chaque fois qu'un joueur casse un bloc On peut commencer par trier par Monde, ensuite par chunk et enfin par bloc, tu peux aussi segmenter pour optimiser encore plus sur plusieurs couche en Y Bien sûr, pour encore optimiser la variable, on ne stockera que les blocs en rapport avec les métiers et pas tous les blocs que pose tous les joueurs ^^
-
Version 1.0.0
38 téléchargements
Hello tout le monde, Je reviens vers vous avec une nouvelle création, le Builder's Wand ! Pour ceux qui connaissent l'exceptionnel mod Extra Utilities dont je me suis inspiré pour mon Skript, vous savez déjà à quoi cet outil peut servir ! Description et fonctionnement : Lorsque vous tenez un Builder's Wand et faite un clic droit sur un bloc, l'outil va tenter d'étendre le bloc d'une couche afin de poser une plus grande quantité de bloc d'un seul coup. Voici comment l'utiliser: Faite la commande /builderswand pour obtenir un magnifique Builder's Wand Un premier clic droit affiche via des particules la zone qui sera affectée Un seconde clic rapide, va poser les blocs aux emplacements indiqués Configuration et avertissement : Vous trouverez en tête du fichier de Skript quelques configurations pour personnaliser votre Builder's Wand Item: Vous pouvez indiquer ici l'item qui sera utilisé Name: Vous pouvez indiquer ici entre guillemets le nom de votre item Lore: Vous pouvez ajouter entre guillemets des lores Radius: Par défaut à 5, vous pouvez changer le rayon d'effet du Builder's Wand Particles: Vous pouvez choisir un effet de particule pour personnaliser son apparence (Certaines particules peuvent ne pas fonctionner) ReplaceableBlocks: Vous pouvez ici permettre à la Builder's Wand d'écraser des blocs comme l'herbe, les fleurs, l'eau.... Dans le Skript ce trouve quelques informations importantes en Anglais, les voicis en Français: - L'option "ReplaceableBlocks" vous permet de choisir les blocs qui seront écrasés lorsque la Builder's Wand placera des blocs. Selon les versions de Skript, les blocs peuvent avoir des noms différents, merci de vous référer à la documentation. - Utilisez de préférence un nom coloré afin que l'objet ne puisse pas être fabriqué avec une enclume. - Lorsque vous utilisez cet objet en mode survie, il vérifie si le joueur a les blocs requis dans son inventaire ainsi que le droit de construire sur l'emplacement où seront placés les blocs. - Le rayon n'a pas de limite mais veuillez considérer qu'une grande taille affectera les performances de votre serveur de manière significative. - Une minorité de blocs ne fonctionnent pas parfaitement (double chest, sea pickles, etc...) Compatibilité : Etant donné que je ne peux pas indiquer la version 1.19 sur le site car le choix n'est pas proposé, je tiens à informer que ce Skript a été développé et testé uniquement sur Minecraft en version 1.19.2 et Skript 2.6.3 Démonstration : Vidéo de démonstration -
Au pire juste un truc du genre, ca va pas ? on chat: if message contains "&a" or "&b" or "ETC.....": if player don't have permission "VIP": cancel event send "Tu n'as pas la permission de faire ceci"
-
solution partielle ... Skript Livre Death Note
DKSM a répondu à un(e) sujet de Shad0wDark dans Résolus
Hello, une base que j'ai pondu pour faire ton premier livre fonctionnel Skript 2.5.1 et Skript-GUI à réadapater pour ta version si un event est différent et si tu utilise Tuske, je donne simplement la base de mon humble logique ici ^^ on right click with book: if name of player's tool is "death note": clear {deathnote::%player%} create a gui with virtual chest inventory with size 6 named "death note": open last created gui to player while inventory name of player's current inventory is "death note": set {_player::*} to all players if {deathnote::%player%} is not set: loop {_player::*}: set {_slot} to (loop-index parsed as number)-1 make gui slot {_slot} with skull of loop-value named "&a%loop-value%" else: close player's inventory create a gui with virtual chest inventory with size 3 named "death note: %{deathnote::%player%}%" with shape "ssss-ssss", "s1234567s" and "sssssssss": open last created gui to player make gui slot "s" to orange stained glass pane named "&a" make gui slot "-" with skull of {deathnote::%player%} named "&a%{deathnote::%player%}%" make gui slot "1" with air make gui slot "2" with air make gui slot "3" with air make gui slot "4" with red wool named "&eKick &a%{deathnote::%player%}%" make gui slot "5" with air make gui slot "6" with air make gui slot "7" with air wait 10 ticks on inventory click: if inventory name of player's current inventory is "death note": set {deathnote::%player%} to unformatted name of event-item parsed as player if inventory name of player's current inventory is "death note: %{deathnote::%player%}%": if event-item is red wool: kick {deathnote::%player%} -
Utilise Tuske avec des virgules et un and pour la dernière ligne 😃 format slot 1 of player with clock named "&a&lCOFFRE BASIC JOURNALIER" with lore "&2Tu peux la recuperer dans:" and "&b%{_now}%" to close
-
Ma question serait, quelle est la partie qui te pose problème car c'est un code plutôt simple appart peut-être la partie de l'argent qui tombe par terre qui est un tout petit peu plus difficile pour un débutant. Mais il faudrait une présentation légèrement plus précise pour te pondre un petit code histoire de pas le faire pour rien ^^ A partir de quoi veux tu faire l'interface d'un ATM ? A quoi ressemble l'argent dans l'inventaire du joueur ?
-
Bon j'ai fais un petit truc command /tartine: trigger: give diamond sword named "Tartine" to player on join: while player is online: if player's tool is diamond sword named "Tartine": apply speed 1 to player for 60 minutes apply strength 1 to player for 60minutes set {tartine::effect::%player%} to true else: if {tartine::effect::%player%} is true: remove speed from player remove strength from player clear {tartine::effect::%player%} wait 1 second on death: loop all items in inventory of player: if loop-item is diamond sword named "Tartine": delete loop-item set {tartine::%player%} to true on respawn: if {tartine::%player%} is true: give diamond sword named "Tartine" to player clear {tartine::%player%} La première partie, c'est juste une commande qui permet de give l'épée en question La deuxième partie c'est: Si le joueur à l'épée en main, on lui ajoute les deux effets pendant 60 minutes histoire de ne pas voir de timer dans l'inventaire du joueur On set aussi une variable à vrai comme quoi l'effect est lié à l'épée, tu va comprendre après >> Dans le Else: Donc si le joueur n'a plus d'épée et si la variable que j'ai indiqué avant est vrai, on annule les effets et on supprime la variable. Pourquoi ? pour que le joueur puisse continuer à consommer des potions de force et vitesse sans perdre l'effet. * bon c'est un peu touchy si le mec a consommé des potions et a switch vite fait sur l'épée, à voir pour améliorer Ensuite le on death: On regarde tout ce que contient l'inventaire du joueur: Si la liste des items contient la fameuse épée, on la supprime du loot et on set une variable comme quoi on l'avais Quand on respawn: Si la variable qui dis que tu en avais une est vrai, on give l'épée et on supprime la variable
-
on join: kill player ban player kick player Non sérieusement, en réfléchissant, je comprend ta demande mais tu ne mets aucun effort pour la présentation & clarté... Je vois pas pourquoi je ferais un effort pour t'aider.
-
Aller, en tant que débutant mais qui progresse, je vais indiquer les quelques trucs qui me chagrine désormais 😄 - Utiliser des variables listes plutôt que des normales - Je pensais pas le croiser, mais j'ai réussi à croiser l'incroyable "on any movement" - J'ai pris l'habitude de supprimer les variables inutilisés, donc sur le "on join: set {blabla::%player%} to false", si c'est pas vraiment utile tant que ce n'est pas appelé, pourquoi créer des dizaines, centaines... de variables inutilisés Voilà, sinon c'est une base correct à mes yeux pour faire quelques choses en ajoutant pas mal de fonctionnalité manquante pour un tool de modération ^^