Aller au contenu

[Skript] Aide - Freeze


Messages recommandés

Posté(e)

Version de Minecraft : 1.8.8
Version de Skript : 2.1.2

Type du skript : Freeze

Description du script :

Bonjour, j'ai fait mon skript de Freeze mais j'ai un problème... Quelqu'un pourrais m'aidé s'il vous plait ?

 

command /freeze [<offline player>] [<text>]:
    trigger:
        if arg 1 is player:
            if arg 2 is not set:
                send "C'est bete de vous freeze tout seul"
                stop
        if arg 1 is offline:
            if arg 2 is not set:
                send "Le joueur n'es pas en ligne"
                stop

        if arg 1 is player:
            if arg 2 is set:
                send "C'est bete de vous freeze tout seul"
                stop
        if arg 1 is offline:
            if arg 2 is set:
                send "Le joueur n'es pas en ligne"
                stop
        if arg 1 is online:
            if arg 2 is not set:
                if {freeze.%arg 1%} is not set:
                    set {freeze.%arg 1%} to false
                if {freeze.%arg 1%} is true:
                    set {freeze.%arg 1%} to false
                    remove jump boost from arg 1
                    remove Slowness from arg 1
                    remove Blindness from arg 1
                    send "Joueur defreeze" to player
                    send "Vous n'etes plus freeze" to arg 1
                    stop
                if {freeze.%arg 1%} is false:
                    set {freeze.%arg 1%} to true
                    apply Jump Boost 999 to arg 1 for 10000 seconds
                    apply Slowness 999 to arg 1 for 10000 seconds
                    apply Blindness to arg 1 for 10000 seconds
                    send "Vous venez de freeze %arg 1%" to player
                    send "&8-----------------------------------------------------" to arg 1
                    send "&f████&c█&f████" to arg 1
                    send "&f███&c███&f███" to arg 1
                    send "&f██&c██&0█&c██&f██                  &6Tu as été emprissoné(e) !" to arg 1
                    send "&f██&c██&0█&c██&f██             &eSi tu te déconnecte, tu seras banni." to arg 1
                    send "&f█&c███&0█&c███&f█     &6Télécharge TeamSpeak et connecte toi sur" to arg 1
                    send "&f█&c███████&f█             &e&lMettre Ip TS" to arg 1
                    send "&c████&0█&c████" to arg 1
                    send "&c█████████" to arg 1
                    send "&8-----------------------------------------------------" to arg 1
                    stop

        if arg 1 is set:
            if arg 2 is set:
                if {freeze.%arg 1%} is true:
                    set {freeze.%arg 1%} to false
                    remove Jump Boost from arg 1
                    remove Slowness from arg 1
                    remove Blindness from arg 1
                    send "Joueur defreeze" to player
                    send "Vous n'etes plus freeze" to arg 1
                    stop
                if {freeze.%arg 1%} is false:
                    set {freeze.%arg 1%} to true
                    send "Vous venez de freeze %arg 1%" to player
                    apply Jump Boost 999 to arg 1 for 10000 seconds
                    apply Slowness 999 to arg 1 for 10000 seconds
                    apply Blindness to arg 1 for 10000 seconds
                    send "&8-----------------------------------------------------" to arg 1
                    send "&f████&c█&f████" to arg 1
                    send "&f███&c███&f███" to arg 1
                    send "&f██&c██&0█&c██&f██                  &6Tu as été emprissoné(e) !" to arg 1
                    send "&f██&c██&0█&c██&f██             &eSi tu te déconnecte, tu seras banni." to arg 1
                    send "&f█&c███&0t█&c███&f█     &6Télécharge TeamSpeak et connecte toi sur" to arg 1
                    send "&f█&c███████&f█             &e&lMettre Ip TS" to arg 1
                    send "&c████&0█&c████" to arg 1
                    send "&c█████████" to arg 1
                    send "&8-----------------------------------------------------" to arg 1
                    stop


Sa bloque au niveau ou on enleve les effects
Merci de faire quelque chose.

2019-12-07_14.17.14.png

Posté(e)

Bonjour, je pense que c'est simplement impossible de retirer un effet sur une personne qui peut être offline.

Garde ton système pour freeze un offline-player mais fais en sorte que quand il est offline ça ne lui donne pas l'effet et que quand il se reconnecte sa detecte si ses variables de freeze sont true et la donne lui les effets.

En esperant t'avoir aidé 🙂

Posté(e) (modifié)
on quit:
	make console execute command "effect %player% clear"

Juste, ta commande n'est absolument pas optimisée du tout !

En voilà une mieux :

# Addon : SkQuery (Pour le "on any movement")

options:
	prefix: &8[&3Freeze&8]

command /freeze [<offline player>]:
	trigger:
		if player has permission "freeze.use":
			if arg 1 is not set:
				send "{@prefix} &7Vous devez saisir un pseudo !" to player
				stop
			if arg 1 is set:
				if arg 1 is not online:
					send "{@prefix} &7Ce joueur n'est pas en ligne actuellement !" to player
					stop
				else:
					if arg 1 = player:
						send "{@prefix} &7Vous ne pouvez pas vous gelé vous même !" to player
						stop
					else:
						if {freeze.%arg 1%} is false:
							set {freeze.%arg 1%} to true
							send "{@prefix} &7Le joueur &3%arg 1% &7à bien été gelé !" to player
							send "{@prefix} &7Vous avez été gelé par un Modérateur !" to arg 1
							send "&4&lSi vous vous deconnecter, vous vous ferez automatiquement bannir !" to arg 1
							make console execute command "effect %arg 1% minecraft:blindness 10000 1 true"
							stop
						if {freeze.%arg 1%} is true:
							set {freeze.%arg 1%} to false
							send "{@prefix} &7Le joueur &3%arg 1% &7à bien été dégelé !" to player
							send "{@prefix} &7Vous avez été dégelé !" to arg 1
							make console execute command "effect %arg 1% clear"
							stop
		else:
			send "{@prefix} &7Vous n'avez pas la permissions d'utiliser ceci !" to player
			stop
			
on join:
	make console execute command "effect %player% clear"
	set {freeze.%player%} to false
	
on quit:
	if {freeze.%player%} is true:
		set {freeze.%player%} to false
		ban player due to "Déconnexion en étant gelé !"
	make console execute command "effect %player% clear"
	
on any movement:
	if {freeze.%player%} is true:
		cancel event

 

Modifié par Salwyn
Posté(e)
il y a une heure, Salwyn a dit :

on quit:
	make console execute command "effect %player% clear"

Juste, ta commande n'est absolument pas optimisée du tout !

En voilà une mieux :


# Addon : SkQuery (Pour le "on any movement")

options:
	prefix: &8[&3Freeze&8]

command /freeze [<offline player>]:
	trigger:
		if player has permission "freeze.use":
			if arg 1 is not set:
				send "{@prefix} &7Vous devez saisir un pseudo !" to player
				stop
			if arg 1 is set:
				if arg 1 is not online:
					send "{@prefix} &7Ce joueur n'est pas en ligne actuellement !" to player
					stop
				else:
					if arg 1 = player:
						send "{@prefix} &7Vous ne pouvez pas vous gelé vous même !" to player
						stop
					else:
						if {freeze.%arg 1%} is false:
							set {freeze.%arg 1%} to true
							send "{@prefix} &7Le joueur &3%arg 1% &7à bien été gelé !" to player
							send "{@prefix} &7Vous avez été gelé par un Modérateur !" to arg 1
							send "&4&lSi vous vous deconnecter, vous vous ferez automatiquement bannir !" to arg 1
							make console execute command "effect %arg 1% minecraft:blindness 10000 1 true"
							stop
						if {freeze.%arg 1%} is true:
							set {freeze.%arg 1%} to false
							send "{@prefix} &7Le joueur &3%arg 1% &7à bien été dégelé !" to player
							send "{@prefix} &7Vous avez été dégelé !" to arg 1
							make console execute command "effect %arg 1% clear"
							stop
		else:
			send "{@prefix} &7Vous n'avez pas la permissions d'utiliser ceci !" to player
			stop
			
on join:
	make console execute command "effect %player% clear"
	set {freeze.%player%} to false
	
on quit:
	if {freeze.%player%} is true:
		set {freeze.%player%} to false
		ban player due to "Déconnexion en étant gelé !"
	make console execute command "effect %player% clear"
	
on any movement:
	if {freeze.%player%} is true:
		cancel event

 

Se skript va envoie trop de packet sur le mec bouge....

Posté(e) (modifié)
il y a une heure, DelSk a dit :

Se skript va envoie trop de packet sur le mec bouge....

Non, c'est pas comme le "on any move:". Il pourra juste bouger sa tête, rien d'autre, tandis qu'avec le "on any move:", il est constamment téléporté a l'endroit où il a été freeze.

Modifié par Salwyn
Posté(e)
Il y a 11 heures, Salwyn a dit :

Non, c'est pas comme le "on any move:". Il pourra juste bouger sa tête, rien d'autre, tandis qu'avec le "on any move:", il est constamment téléporté a l'endroit où il a été freeze.

D’accord mais le truc c’est que avec le /effect %arg 1% clear tout le monde voit que sa le clear car sa met le truc Server:

Posté(e)
il y a 41 minutes, DelSk a dit :

D’accord mais le truc c’est que avec le /effect %arg 1% clear tout le monde voit que sa le clear car sa met le truc Server:

Fait "/gamerule sendCommandFeedback false"

  • 1 mois après...
Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.
×
×
  • 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.