Aller au contenu
  • 0

Petit problème sur un skript


Question

Posté(e)

Bonsoir à tous/toutes !

 

Voici mon skript:

 

every 1 seconds:
   loop all players:
       loop-player is not flying
       set {_block} to the block below loop-player
       if {_block} is air :
           set {_block} to the block below {_block}
               replaceitem entity %loop-player% slot.armor.chest 0

 

 

En fait je voudrais que lorsqu'un joueur atterri d'un vol en Elytra, que celles ci soient supprimées de son inventaire... Savez vous comment corriger mon skript ? Car celui ci ne fonctionne pas.

 

Merci d'avance !

  • Réponses 64
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans cette question

Meilleurs contributeurs dans cette question

Messages recommandés

  • 0
Posté(e)

Traduction de l'erreur: le skript veux 12 espaces mais tu as mis 4 Tabultations.

 

Solutions:

A la ligne n°7, tu appuis 12x sur la barre d'espace devant la première lettre de cette ligne au lieu de 4x sur TAB.

 

every 1 second:
loop all players:
	loop-player is not flying
	set {_block} to the block below loop-player
	if {_block} is air :
		set {_block} to the block below {_block}
		replaceitem entity %loop-player% slot.armor.chest 0

  • 0
Posté(e)
Traduction de l'erreur: le skript veux 12 espaces mais tu as mis 4 Tabultations.

 

Solutions:

A la ligne n°7, tu appuis 12x sur la barre d'espace devant la première lettre de cette ligne au lieu de 4x sur TAB.

 

every 1 second:
loop all players:
	loop-player is not flying
	set {_block} to the block below loop-player
	if {_block} is air :
		set {_block} to the block below {_block}
		replaceitem entity %loop-player% slot.armor.chest 0

Ca ne marche malheureusement pas :c

 

[ATTACH=full]1948[/ATTACH]

  • 0
Posté(e)
Maintenant que le skript peut lire la ligne.

C'est le code qui a une erreur

As tu une idée de comment le modifier ?

Car j'ai fais pas mal de recherches sur pleins de sites mais je trouve pas vraiment mon bonheur (Ou je suis nul ? xD)

  • 0
Posté(e)

[22:26:47 WARN]: [skript] Task #1887 for Skript v2.1.2 generated an exception
java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()[Lorg/bukkit/entity/Player;
       at ch.njol.skript.entity.EntityData.getAll(EntityData.java:451) ~[?:?]
       at ch.njol.skript.expressions.ExprEntities.get(ExprEntities.java:145) ~[?:?]
       at ch.njol.skript.expressions.ExprEntities.get(ExprEntities.java:1) ~[?:?]
       at ch.njol.skript.lang.util.SimpleExpression.getArray(SimpleExpression.java:101) ~[?:?]
       at ch.njol.skript.lang.util.SimpleExpression.iterator(SimpleExpression.java:304) ~[?:?]
       at ch.njol.skript.expressions.ExprEntities.iterator(ExprEntities.java:214) ~[?:?]
       at ch.njol.skript.lang.Loop.walk(Loop.java:85) ~[?:?]
       at ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:91) ~[?:?]
       at ch.njol.skript.lang.Trigger.execute(Trigger.java:53) ~[?:?]
       at ch.njol.skript.events.EvtPeriodical.execute(EvtPeriodical.java:94) ~[?:?]
       at ch.njol.skript.events.EvtPeriodical$1.run(EvtPeriodical.java:120) ~[?:?]
       at org.bukkit.craftbukkit.v1_9_R2.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot.jar:git-Spigot-4af49dc-4e19de1]
       at org.bukkit.craftbukkit.v1_9_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot.jar:git-Spigot-4af49dc-4e19de1]
       at net.minecraft.server.v1_9_R2.MinecraftServer.D(MinecraftServer.java:734) [spigot.jar:git-Spigot-4af49dc-4e19de1]
       at net.minecraft.server.v1_9_R2.DedicatedServer.D(DedicatedServer.java:399) [spigot.jar:git-Spigot-4af49dc-4e19de1]
       at net.minecraft.server.v1_9_R2.MinecraftServer.C(MinecraftServer.java:665) [spigot.jar:git-Spigot-4af49dc-4e19de1]
       at net.minecraft.server.v1_9_R2.MinecraftServer.run(MinecraftServer.java:564) [spigot.jar:git-Spigot-4af49dc-4e19de1]
       at java.lang.Thread.run(Unknown Source) [?:1.8.0_91]

 

Maintenant c'est sur bukkit que ca merde xD

  • 0
Posté(e)
every 1 tick:
loop all players:
	loop-player is not flying
	set {_block} to the block below loop-player
	if {_block} is air :
		set {_block} to the block below {_block}
		remove loop-player's chestplate

  • 0
Posté(e)
Mais le truc c'est que c'est un peu particulier et nouveau les Elytra...

Oui c'est clair mais techniquement remplacer une armure dans l'inventaire n'est pas nouveau :/ C'est ce qui me perturbe

  • 0
Posté(e)
every 1 tick:
   loop all players:
       loop-player is not flying
       set {_block} to the block below loop-player
       if {_block} is air :
           set {_block} to the block below {_block}
           loop all items in loop-player's inventory:
               if loop-item is elytra:
                   remove loop-player's chestplate

  • 0
Posté(e)
every 1 tick:
loop all players:
	loop-player is not flying
	set {_block} to the block below loop-player
	if {_block} is air :
		set {_block} to the block below {_block}
		loop all items in loop-player's inventory:
			if loop-item is elytra:
				remove loop-player's chestplate

Nan :/

  • 0
Posté(e)

helmet of player is neither a helmet nor air #Player is wearing a block, e.g. from another plugin

 

Autrement dit les élytra ne sont pas encore reconnue par skript.

Mais peut etre qu'en utilisant ceci ca marcherais...

every 1 seconds:
loop all players:
	if loop-player is not flying:
		broadcast "&4TEST0"
		set {_block} to the block below loop-player
		if {_block} is air:
			broadcast "&3TEST1"
			set {_2block} to the block below {_block}
		if {_2block} is not air:
			broadcast "&6TEST2"
			if player is wearing an ID ELYTRA:
				broadcast "&eTEST3"
				delete chestplate of the loop-player
			else:
				broadcast "&aTEST4"
				delete chestplate of the loop-player

PS: pour moi il y a un problème deja psk quand tu marque si le bloc en dessous et de l'air alors enlever les elytra il va se scratcher quand il volera. Ducoup je me suis permis de modif vite fait tu regarde si ca te va.

 

Aussi j'ai pas test vu que j'ai pas de serv en 1.9 mais la ca devrait eviter tout vos problème.

Derniere chose les couleurs des messages indique le niveau de réussite du skript pti custom :D

  • J'aime 1
  • 0
Posté(e)
helmet of player is neither a helmet nor air #Player is wearing a block, e.g. from another plugin

 

Autrement dit les élytra ne sont pas encore reconnue par skript.

Mais peut etre qu'en utilisant ceci ca marcherais...

every 1 seconds:
loop all players:
	if loop-player is not flying:
		broadcast "&4TEST0"
		set {_block} to the block below loop-player
		if {_block} is air:
			broadcast "&3TEST1"
			set {_2block} to the block below {_block}
		if {_2block} is not air:
			broadcast "&6TEST2"
			if player is wearing an ID ELYTRA:
				broadcast "&eTEST3"
				delete chestplate of the loop-player
			else:
				broadcast "&aTEST4"
				delete chestplate of the loop-player

PS: pour moi il y a un problème deja psk quand tu marque si le bloc en dessous et de l'air alors enlever les elytra il va se scratcher quand il volera. Ducoup je me suis permis de modif vite fait tu regarde si ca te va.

 

Aussi j'ai pas test vu que j'ai pas de serv en 1.9 mais la ca devrait eviter tout vos problème.

Derniere chose les couleurs des messages indique le niveau de réussite du skript pti custom :D

 

 

Merci de ta réponse

 

Malheureusement ca ne marche pas...

 

Et pour ce que tu m'a dis, si la personne se crash, ca ne dérange pas, les dégats de chute sont désactivé sur le hub du serveur, mais merci d'y avoir pensé ;)

 

Et un petit screen ;)

 

[ATTACH=full]1968[/ATTACH]


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