EnuTella Posté(e) le 30 décembre 2015 Posté(e) le 30 décembre 2015 Et bien bonjours à tous , J'aimerais savoir si une personne présente ici aurais les capacités de me Skripter un Script pouvant Ban un joueur 20 min une fois mort , cela me servirais pour mon serveur HCF déjà ouvert car nous avons tester des Script qui théoriquement aurait du marcher mais sans succès ...HELP ME Encore Merci D'avance a celui qui le feras :p Nokeria: IP: Play.nokeria.fr Cordialement , EnuTella
_MinecraftHero_ Posté(e) le 30 décembre 2015 Posté(e) le 30 décembre 2015 Quelle commande utilises tu pour pouvoir ban ? Tu as essentials ?
EnuTella Posté(e) le 30 décembre 2015 Auteur Posté(e) le 30 décembre 2015 je veux que ca se fasse tout seul je n'utilise pas de commande
BrokenFiles_ Posté(e) le 31 décembre 2015 Posté(e) le 31 décembre 2015 Voilà pour le code, bisous ;) on death of player: if player is op: message "&cVous êtes morts, mais vous êtes administrateur." stop else: ban victim broadcast "&c%victim% est mort, il ne reviendra jamais."
Hashway Posté(e) le 31 décembre 2015 Posté(e) le 31 décembre 2015 Voilà pour le code, bisous ;) on death of player: if player is op: message "&cVous êtes morts, mais vous êtes administrateur." stop else: ban victim broadcast "&c%victim% est mort, il ne reviendra jamais." Ce n'est absolument pas ça. on death: if victim is op: send "&e(&cDeathBan&e) &5Vous êtes mort ! &f(Ban annulé car vous êtes Administrateur)" else: broadcast "&e(&cDeathBan&e) &9%victim% &5est mort ! &f(Ban 20 Minutes)" kick victim due to "&e(&cDeathBan&e) &5Vous êtes mort ! &f(Ban 20 Minutes)" set {inban.%UUID of victim%} to true wait 20 minutes set {inban.%UUID of player%} to false on connect: if {inban.%UUID of player%} is true: kick player due to "&e(&cDeathBan&e) &5Vous êtes mort ! &f(Ban 20 Minutes)" if {inban.%UUID of player%} is false: send "&aDeathBan terminé ! Vous pouvez vous reconnecter !"
The__V Posté(e) le 1 janvier 2016 Posté(e) le 1 janvier 2016 Mille excuses si je me trompe, mais il me semble qu'utiliser un wait dans ce cas est une erreur. En cas de reboot serveur (personne n'est à l'abri d'un crash), les skripts sont ré-éxécutés en partant du début. Ainsi, un joueur ayant été banni avant un crash ne serait pas unban (la variable reste à true), causant donc un bannissement de 20 min... définitif :/
Hashway Posté(e) le 1 janvier 2016 Posté(e) le 1 janvier 2016 Mille excuses si je me trompe, mais il me semble qu'utiliser un wait dans ce cas est une erreur. En cas de reboot serveur (personne n'est à l'abri d'un crash), les skripts sont ré-éxécutés en partant du début. Ainsi, un joueur ayant été banni avant un crash ne serait pas unban (la variable reste à true), causant donc un bannissement de 20 min... définitif :/ Alors comment faire dans ce cas là ?
Gurvv29 Posté(e) le 1 janvier 2016 Posté(e) le 1 janvier 2016 essaye de faire seulement une durée de ban : on death of player: if victim is op: send "&e(&cDeathBan&e) &5Vous êtes mort ! &f(Ban annulé car vous êtes Administrateur)" else: broadcast "&e(&cDeathBan&e) &9%victim% &5est mort ! &f(Ban 20 Minutes)" ban player 20 minutes due to "&e(&cDeathBan&e) &5Vous êtes mort ! &f(Ban 20 Minutes)" et comme ca, il se reconnectera dans 20 min meme en cas de crash antérieur .
The__V Posté(e) le 1 janvier 2016 Posté(e) le 1 janvier 2016 @AirSoftMinecraft Une solution serait d'utiliser une variable contenant la durée du ban et décompter à chaque seconde. Une autre serait d'enregistrer l'heure du ban et de comparer avec l'heure de la prochaine connexion pour vérifier que 20 minutes réelles se sont écoulées. Avec un peu de réflexion et quelques connaissances sur les variables, il y a moyen de s'en sortir. La méthode de @Gurvv29, en revanche m'est tout à fait inconnue. Peut-être est-ce une nouvelle fonctionnalité de Skript? En tous cas, elle n'est répertoriée ni sur skunity ni dans la doc officielle.
Gurvv29 Posté(e) le 1 janvier 2016 Posté(e) le 1 janvier 2016 apres je sais pas si ma technique marche : je l'ai pas testée
Matdark2 Posté(e) le 2 janvier 2016 Posté(e) le 2 janvier 2016 La cela devrait marcher :) on death: set {time.ban::%victim%} to now kick victim due to "&cTu es mort, revient dans 20 minutes" broadcast "&c%victim% &6est mort de la main de &c%attacker%" on join: if {time.ban::%player%} is set: if difference between now and {time.ban::%player%} is bigger or equal to 1320: clear {time.ban::%player%} unban player if difference between now and {time.ban::%player%} is smaller than 1320: kick player due to "&cTu est toujours ban" 1
Messages recommandés