Aller au contenu
TitiLaPierre

>> Téléporation (Temps custom avant le tp / annulation si on avance

Messages recommandés

Posté(e) (modifié)

Salut tout le monde ! J'ai créer un morceau de code qui permet de ce téléporter à un endroit dans le monde (Un /spawn quoi).

Propriétées :

- Permet aux joueurs de ce téléporter à un spawn que l'on peut définir In-Game

- Téléportation avec cooldown personnalisé

- Si le joueur bouge, la téléportation sera annulé (Les mouvement de la tête ne compte pas)

- Si le joueur à une certaine permission (configurable) il peut passer outre du cooldown

- Option personnalisable dans la config

 

Code :

Options:
	prefix: &6[&2Set-Spawn&6]
	spawnset: Le spawn a été mit en %location of player%

	prefix2: &6[&2Spawn&6]
	starttp: Début de la téléporation !
	stoptp: Téléporation annulé !
	leftsecond: Téléporation dans >> %{_second}% secondes
	succestp: Téléporation réussi !

	second: 5

	prefix3: &c[&4Erreur&c]
	nopermission: Vous n'avez pas la permission d'utilisé cela !
	spawnnoset: Le spawn n'existe pas ! (/setspawn pour le mettre)

	setspawnpermission: spawn.staff
	usespawnpermission: spawn.use
	bypasspermission: spawn.bypass

Command /spawn:
	trigger:
		if player has permission "{@usespawnpermission}":
			if {serverspawn} exists:
				message "{@prefix2} {@starttp}"
				if player doesn't have permission "{@bypasspermission}":
					set {_x} to player's x-pos
					set {_y} to player's y-pos
					set {_z} to player's z-pos
					set {_second} to {@second}
					message "{@prefix2} {@leftsecond}"
					loop {@second} times:
						wait 1 second
						remove 1 from {_second}
						if {_x} isn't player's x-pos:
							message "{@prefix2} {@stoptp}"
							stop
						if {_y} isn't player's y-pos:
							message "{@prefix2} {@stoptp}"
							stop
						if {_z} isn't player's z-pos:
							message "{@prefix2} {@stoptp}"
							stop
						else:
							message "{@prefix2} {@leftsecond}"
					teleport player to {serverspawn}
					wait 1 second
					message "{@prefix2} {@succestp}"
					stop
				else:
					teleport player to {serverspawn}
					wait 1 second
					message "{@prefix2} {@succestp}"
					stop
			else:
				message "{@prefix3} {@spawnnoset}"
				stop
		else:
			message "{@prefix3} {@nopermission}"
			stop
Command /setspawn:
	trigger:
		if player has permission "{@setspawnpermission}":
			set {serverspawn} to location of player
			message "{@prefix} {@spawnset}"
			stop
		else:
			message "{@prefix3} {@nopermission}"
			stop

Si vous avez un bug : Signalez le moi en MP ou en dessous

[Modifié]

Modifié par TitiLaPierre
  • Merci 1

Partager ce message


Lien à poster
Partager sur d’autres sites
command /hub:
	aliases: lobby
	trigger:
		if {Active::%player%} = true:
			if player is not in world "RushFFA" or "Soup":
				set {_sec} to 3
				set {_loc} to player's location
				send "&e[&bLunatick&e] &aVous allez être téléporté au lobby dans 3 secondes" to player
				loop 2 times:
					wait 1 second
					if x-loc of {_loc} is between x-loc of player - 0.75 and x-loc of player + 0.75:
						z-loc of {_loc} is between z-loc of player's location - 0.75 and z-loc of player's location + 0.75
						set {_ok} to 1
					if {_ok} is 1:
						clear {_ok}
					else:
						send "&e[&bLunatick&e] &cErreur : vous avez bougé."
						stop
					send "&e[&bLunatick&e] &aVous allez être téléporté au lobby dans %difference between loop-number and 3% secondes"
				wait a second
				teleport player to {lobby}
				send "&e[&bLunatick&e] &aVous avez été téléporté au lobby." to player

kdo (j'ai pas modifié)

  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 22/06/2019 à 17:33, TitiLaPierre a dit :

@Kilterra J'avais compris mais je ne comprend pas le : kdo (j'ai pas modifié)

En gros, j'ai fais cadeau d'un code optimisé et pratique x)

Et le "J'ai pas modifié", juste pour dire que j'ai gardé mon propre codé, et ne l'ai pas adapté pour toi xD

Partager ce message


Lien à poster
Partager sur d’autres sites
Posté(e) (modifié)
Il y a 4 heures, KneaXy a dit :

En gros, j'ai fais cadeau d'un code optimisé et pratique x)

Et le "J'ai pas modifié", juste pour dire que j'ai gardé mon propre codé, et ne l'ai pas adapté pour toi xD

Il reste encore quelque petit détails dans ton code, tout d'abord dans ta condition tu verifie si il est entre x - 0.75 et x + 0.75 si tu comparais la difference a 0.75 ce serait un poil mieux, ensuite, tu utilise une difference pour le cooldown des secondes alors que tu peux le faire plus efficacement (la difference renvoie en fait la valeur absolu de la soustraction donc il y a 1 conditions et 1 calcul) alors que tu pourrai le réduire juste en 1 seul calcul

 

Modifié par Kilterra
  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 23/06/2019 à 22:52, Kilterra a dit :

Il reste encore quelque petit détails dans ton code, tout d'abord dans ta condition tu verifie si il est entre x - 0.75 et x + 0.75 si tu comparais la difference a 0.75 ce serait un poil mieux, ensuite, tu utilise une difference pour le cooldown des secondes alors que tu peux le faire plus efficacement (la difference renvoie en fait la valeur absolu de la soustraction donc il y a 1 conditions et 1 calcul) alors que tu pourrai le réduire juste en 1 seul calcul

 

Oui, ça change rien quoi

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 4 heures, Kilterra a dit :

Fait un peu d'optimisation de base et tu verras que ça change plein de truc à grande échelle 

Non ^^'

J'veux bien que ça peut encore plus s'optimiser mais à ce rythme ça ne sert à rien, c'est une commande qui concerne uniquement le joueur, qui utilise des variables temporaire... Même si 50 joueurs exécutent la commande ça ne change rien, c'est juste 3 secondes

Ca ne change rien...

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×

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.