Aller au contenu

ThibaudPst

Membre
  • Compteur de contenus

    126
  • Inscription

  • Dernière visite

  • Jours gagnés

    1

Messages posté(e)s par ThibaudPst

  1. Salut, 

    Merci effectivement c'est un super 

    on right click on a chest:
    	if {chestlist::*} contains location of clicked block:
    		cancel event
    		send "Pas touche"
    	else:
    		if {chestlist.%player%::*} contains location of clicked block:
    			cancel event
    		else:
    			clear clicked block's inventory
    			add 1 diamond to clicked block's inventory
    			add location of clicked block to {chestlist.%player%::*}

    J'édites mon précédent message car celui-ci n'a plus lieu d'être, j'ai compris ma bêtise et je l'ai modifiée.
    Je laisse le code si jamais celui-ci peut-être utile à quelqu'un un jour !

    Merci encore, 
    Sujet résolu 😄

  2. Version de Minecraft : 1.9.2 - Spigot
    Version de Skript : 2.6.4

     

    Type du skript : Permettre d'inclure l'apparition de structures / schéma lors de l'évènement "on chunk load"

    Description du script :

    Bonjour, l'idée est sommes toutes relativement simple et s'apparente également à une question pour laquelle je n'ai pas trouvé de sujets / réponses claires
    Je souhaiterai savoir si il est possible d'incorporer, par Skript, des structures (Vanilla ou schématic enregistrée) dans des chunk à l'occasion du chargement de ceux-ci.
    Je me doute que le calcul pour ne pas avoir de "trous" sur la carte par l'apparition de ces structures pourrait s'avérer problématiques, aussi l'implantation de ces structures seraient sur une carte plate à Y => 0 ; 
    Permettre également d'inclure un % de chance pour l'apparition de celles-ci

    Je vous remercie par avance ! Pour un petit bout d'code de départ ou pour le code en entier !

     

  3. Version de Minecraft : 1.9.2 - Spigot
    Version de Skript : 2.6.4

    Addons utilisés: Skellet v2.0.8, LimeSK v1.0, skRayFall v1.9.28, skQuery v4.1.8, SkBee v2.7.1, SharpSk v1.6.3, 

    Type du skript : L'idée est de détecter si un coffre a été généré naturellement ou si celui-ci a été placé par un joueur. La finalité est de générer "manuellement" par le skript le contenu possible du coffre, puis, empêcher la génération d'objet dans ce même coffre pour un joueur l'ayant trouvé ; 
    Le "problème" est de ne pas appliquer cela à tout les coffres existants 

    Description du script :

    Actuellement je n'ai pas encore trouvé comment stocker le coffre placé artifficiellement dans une liste permettant d'indiquer que celui-ci ne doit pas être sujet aux modifications de son inventaires.
    Pistes déjà explorées :
    - NBT (Pas réussi à mettre en forme..)
    - Nom de l'inventaire (Semble ne pas s'actualiser ?)
    - Localisation du coffre


     

    on place of chest:
    	# set {_world} to player's world
    	# set {_xlocchest} to x-coordinate of location of event-block
    	# set {_ylocchest} to y-coordinate of location of event-block
    	# set {_zlocchest} to z-coordinate of location of event-block
    	# add -0.5 to {_xlocchest}
    	# add -0.5 to {_ylocchest}
    	# add -0.5 to {_zlocchest}	
    	# message "%{_xlocchest}%, %{_ylocchest}%, %{_zlocchest}%"
    	# broadcast "%{chestlist::*}%"
    	add event-block to {chestlist::%player%::*}
    			
    on right click on a chest:
    	loop {chestlist::*}:
    		if {chestlist::*} contains location of targeted block:
    			broadcast "test"
    	# set {_xlocchest} to x-coordinate of location of event-block
    	# set {_ylocchest} to y-coordinate of location of event-block
    	# set {_zlocchest} to z-coordinate of location of event-block
    	# add -0.5 to {_xlocchest}
    	# add -0.5 to {_ylocchest}
    	# add -0.5 to {_zlocchest}
    	# broadcast "%{_locchest}%"
    	loop {chestlist::*}:
    		if {chestlist::*} contains {_locchest}:
    			broadcast "test"
    		else:
    			broadcast "test2"
    	

    Merci par avance !

  4. Bonsoir, ce ne serait pas en accord avec les règles d'utilisations de liteban.. Un plug-in payant est un plug-in ayant été fait consciencieusement -généralement- le fait de le rendre payant indique un suivis et des mises à jours de la part des développeurs, ce n'est clairement pas correct que d'offrir ce plug-in

    Il y a 19 heures, KneaXy a dit :

    Sinon, même si tu es intéressé par un script, je te propose tout de même le plugin LiteBans, c'est un très bon plugin
    PS : le plugin conseillé est un plugin que j'ai payé, je suis prêt à te le fournir.

    image.png.95f1f4cac1239e9a05e0aacba6565b40.png

  5. J'ai pu "contrer" cela, grâce à l'aide du second développeur sur mon serveur :
    L'idée est de faire que si les X premiers % de chances ne s'applique pas.. Alors ça utilise Y% etc etc et dans l'idée, ça revient à faire des statistiques/proba avec des multiplications de % !

  6. Bonsoir, 

    Je ne suis malheureusement pas en mesure de fournir le mute|tempmute & Tempban par manque de temps devant moi, Voici néanmoins un petit bout de code qui devrait faire ton bonheur !

     

    options:
    	perm: permissionsanction #La permission que le joueur doit avoir pour utiliser la commande de modération
    
    
    command /sanction [<text>] [<offlineplayer>] [<text>] [<text>]: #arg-1 => Ban-ip |ban etc #arg-2 => Joueur #arg-3 => Motif #arg-4 durée ?
    	permission: {@perm}
    	trigger:
    		
    		arg-1 is "ban-ip":
    			arg-2 is set:
    				ban ip of arg-2 due to "&cBanni-ip pour %arg-3%"
    				kick the arg-2 due to "&cBanni-ip pour %arg-3%"
    		
    		arg-1 is "ban":
    			arg-2 is set:
    				add player to {banlist::*}
    				kick the arg-2 due to "&cBanni pour %arg-3%"
    				ban the arg-2 due to "&cBanni pour %arg-3%"
    		
    		arg-1 is "mute":
    			arg-2 is set:
    				if {mutelist::*} contains arg-2:
    					remove arg-2 from {mutelist::*}
    					send "&cVous n'êtes plus muet !" to arg-2
    					send "&c%arg-2% n'est plus muet !" to executor
    				else:
    					add arg-2 to {mutelist::*}
    					send "&cVous êtes désormais muet !" to arg-2
    					send "&cVous avez rendu muet %arg-2%" to executor
    			#arg-3 is set: Ici devrait venir la durée ... Jouer avec le "now" dans une variable et le délai entre now stocké et "now" réel
    		#arg-1 is "tempban": Pareil que le tempmute !	
    		
    		arg-1 is "kick":
    			arg-2 is set:
    				kick the arg-2 due to "&cExclu pour :%arg-3%" #Le message contenant la raison du kick
    
    on chat:
    	if {mutelist::*} contains player:
    		cancel event
    		send "&cVous êtes muet." to player
    	else:
    		exit

     

  7. Bonsoir ! 
    Je me permets deux pistes : CustomNPC à pour syntaxe basiquement "tonnom" ou "&6tonnom" ou "&ftonnom" (...)

    if name of clicked entity is "Ton nom"

    En changeant ça par :
     

    if name of clicked entity contains "Ton nom" #Pour rappel, "Ton nom" doit être le texte "brute"càd avec les balises de couleurs/syntaxe (&f/&r/etc)
  8. Il y a 4 heures, HakrayIII a dit :

    [13:19:44 ERROR]: indentation error: expected 0 tabs, but found 16 tabs (ATM.sk, line 14: Version: 2.0')

    Cela veut dire qu'il y avait une erreur au niveau des règles d'espacements, en l’occurrence, il voulait 0 tabulations en ligne 14 mais en a trouvé 16

    Et pour la "balise" c'est :
    1557590663-capture.png

  9. Bonjour, je t'invites à ajouter la "balise" résolu (éditer tout en haut de la page) pour passer ton sujet en résolu ! 

    Les erreurs de ce genre viennent très souvent d'un problème dans le Skript concerné, en l'occurrence (et dans la globalité) c'est écrit sur les premières lignes 😛

    • Ok . 1
  10. Bonsoir, de ce que je viens de voir c'est plus à mon sens une demande de Skript, car j'ai dû mal à me familiariser avec ton bout de code (Surtout concernant le loop qui ne mène à pas grand chose si ce n'est rien ^^)

    Il serait aussi bon de connaître ta version de Skript ainsi que de Minecraft (/version => Spigot/Bukkit/PS | /version Skript)

    Merci, bonne soirée

    EDIT :

     

    command /1v1file:
    	aliases: 1v1
    	executable by: players
    	trigger:
    		if {wait1v1::*} contains player: #On regarde si le joueur est pas déjà dans la liste d'attente.
    			send "&cVous êtes déjà présent dans la file d'attente" to player
    			stop #Si c'est le cas : stop
    		else:#Si n'est pas présent dans la file
    			if (size of {wait1v1::*}) is less than 1: #Si il n'y a personne dans la file...
    				send "&bVous êtes désormais en file d'attente !"
    				add player to {wait1v1::*}
    			else: #Si il y a un joueur dans la file..
    				add player to {wait1v1::*} #On ajoute le joueur à la file d'attente
    				set {_against} to a random element out of {wait1v1::*} #Ici, on prends un joueur aléatoire de la file d'attente
    				while {_against} is player: #Si le joueur aléatoirement choisis est le joueur inscrit, alors ça refait une boucle..
    					set {_against} to a random element out of {wait1v1::*}
    				send "&bVous allez affronter %{_against}%" to player #Petit message de courtoisie
    				send "&bVous allez affronter %player%" to {_against}
    				set {1v1.%player%} to {_against} #Cette variable là sortira donc le pseudo du joueur X -Celui choisis aléatoirement est définit plus haut comme "{_against}"
    				set {1v1.%{_against}%} to player #Celle ci stockera l'exécuteur de la commande -Ou tout du moins l'exécuteur ayant eu une place directement-
    				remove {_against} from {wait1v1::*} #On les retire de la liste d'attente
    				remove player from {wait1v1::*} #On les retire de la liste d'attente
    				(...) #Ici, la téléportation, etc etc


    Voici un bout de ce que j'ai refaits avec ta base de développement, en détaillant / expliquant au mieux (Les textes écrits après les # sont des "commentaires" ils ne sont pas lut lors de l'exécution ; Tu as donc tes deux variables qui contiennent Joueur 1 / 2 et un bout de code un peu plus pratique 🙂
    Skript testé et fonctionnel en Skript 2.3.6 |Spigot 1.13.2 

  11. Bonsoir,

    il n'est pas possible de créer cela (le cheval n'étant pas une entité permettant d'avoir un casque équipé dans une version vanilla)
    La commande aurait théoriquement été (utilisable en vanilla)
    /summon horse ~ ~ ~ {ArmorItems:[{},{},{},{id:"minecraft:end_rod",Count:1b}]}
    Néanmoins comme je le pensais, l'objet n'est que "théorique" et pas physique, l'objet est là, mais invisible car rien ne dit à Minecraft que le cheval peut avoir un casque

    Bonne soirée 🙂
     

  12. Je me permets quand même de t'écrire une ébauche d'une commande avec délai qui s'appliquerait à ton cas 🙂

     

    options:
    	time: 24 #Le délai en heure entre chaque utilisation de la commande
    	solde: 500 #L'argent donné par la commande
    	
    command /salaire:
    	trigger:
    		if {timersolde.%player%} isn't set: #Si le joueur n'a encore JAMAIS récupéré son salaire
    			make console execute command "eco give %player% {@solde}" #On donne le salaire
    			set {timersolde.%player%} to now #On dit que le salaire à été donné au moment T
    		else:
    			set {_time} to difference between {timersolde.%player%} and now #On créer une variable temporaire contenant la différence entre T et 24 heures
    			if {_time} is less than {@time}: #Si cela fais moins de 24h
    				send "&cVous devez attendre %difference between 24 hours and {_time}% avant de pouvoir récupérer à nouveau votre salaire !" to player
    				exit
    			else: #Sinon..
    				make console execute command "eco give %player% {@solde}"
    				set {timersolde.%player%} to now #Et on remet l'heure d'utilisation, ça te fait 24h réelles entre chaque utilisation

     

  13. Bonsoir, voici donc l'idée que j'avais énoncée plus haut retranscrite :

     

    options:
    	item: &0&lGriffes #Ton nom d'objet
    	perm: blackpanther.use #Ta permission
    	damage: 5 #Les dégats
    	
    on damage:
    	attacker's tool is {@item}:
    		attacker has permission {@perm}:
    			cancel event
    			damage victim by {@damage}

     

  14. Autant pour moi je me suis embrouillé quant à ta version. Je ne saurais plus t'aider je n'étais plus là lors de la 1.8, éventuellement fais une recherche au niveau de "pack d'addon" directement fait pour la 1.8

  15. Bonsoir, pour ma part j'ai eu quelques problèmes concernant 
    "on region enter"
    Je les avais résolus en remplaçant "%region at player%" par "%region%" est tout mes problèmes se sont résolu, affaire à suivre 🙂 Une autre piste encore ^^

  16. Bonsoir !

    Je verrais plus un truc de la forme :

     

    on join: #Ainsi les totaux s'actualiserons à la connexion d'un/de joueur(s)
    	loop all players: #Sélectionnes la totalité des joueurs présent, si ton hub est un serveur séparé ne fonctionnera potentiellement pas [Vérifies SkBungee qui doit avoir une alternative
    		loop-player is in world "monde1": #Le joueur est dans le monde "monde1"
    			add 1 to {monde1.total} #On ajoute le/les joueur(s) sélectionné à la variable
    		loop-player is in world "monde2":
    			add 1 to {monde2.total}

     

  17. D'accord, voici une partie de mon skript de vente de kit en espérant que tu puisses le prendre pour le modifier du coup ^^ -Il est fonctionnel-
     

    format gui slot 2 of player with iron pickaxe named "&3Kit d'outils" with lore "&bClic gauche : Acheter le kit (200 000$)" and "&bClic droit : Affiche le contenu du kit." to run using left mouse button:
    				if player's balance is more than 199999:
    					if player has permission "essentials.kits.outils":
    						message "&6Vous possédez déjà le kit !"
    						exit
    					if player doesn't have permission "essentials.kits.outil":
    						message "&6Vous venez d'acheter le kit ""&eoutil&6"" pour la valeur de 200 000$ !"
    						execute console command "pex user %player% add essentials.kits.outils"
    						remove 200000 from player's balance
    				if player's balance is less than 199999:
    					message "&6Vous n'avez pas assez d'argent pour acheter le kit."			

     

×
×
  • 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.