Aller au contenu

Messages recommandés

Version de Minecraft : 1.8.8
Version de Skript : Skript-dev26

Addons utilisés: Addon1, Addon2, ...

Type du skript : Skript pour un JumpCraft

Description du script :

Bonjour/Bonsoir

Je suis actuellement en train de faire un skript pour un JumpCraft et jusque là tout allait bien, sauf que maintenant arrivé aux checkpoints, je rencontre certains problèmes.

 

Voici mon code:

options:
 
    prefix: &6&lJumpCraft &r&l> &a&l
    startjump: Début du parcours !
    newcheckpoint: Nouveau checkpoint défini !
    endjump: Fin du parcours !
    checkpointatteint: &a&lVous avez atteinds le &e&lPalier n°%{paliers.%player%}% &a&laprès &d&l%{_n}% &a&l!
    newrecord: &a&lVous avez battu votre record précédent qui était de
 
on pressure plate:
    if {jump.start.%player%} = true:
        if block below event-block is gold block:
            set slot 4 of player's inventory to orange dye with name "&6Téléporter au dernier checkpoint"
            set {_n} to difference between {jumpstart.%player%} and now
            set {_n} to "%{_n}%"
            replace "second" with "&d" in {_n}
            replace "hour" with "&d:" in {_n}
            replace "day" with "&d:" in {_n}
            replace "minute" with "&d:" in {_n}
            replace "and" with "&d:" in {_n}
            set {c.%player%} to player's location
            add 1 to {paliers.%player%}
            send "{@prefix} {@checkpointatteint}"
 
        else if block below event-block is diamond block:
            set {jump.start.%player%} to true
            set {jumpstart.%player%} to now
            send "{@prefix} {@startjump}" to player
            remove all items from player's inventory
            set slot 0 of player's inventory to barrier with name "&cQuitter le parcour"
            set slot 3 of player's inventory to red dye with name "&cRecommencer le parcours"
            set slot 5 of player's inventory to lime dye with name "&6Cacher les joueurs"
 
        else if block below event-block is redstone block:
            set {jump.start.%player%} to false
            send "{@prefix} {@endjump}" to player
            remove all items from player's inventory
            set slot 3 of player's inventory to door with name "&cRetour au lobby"
            set slot 4 of player's inventory to compass with name "&dParcours"
            set slot 5 of player's inventory to lime dye with name "&6Cacher les joueurs"

 

Le soucis est que quand un joueur marche sur la plaque de pression en question, il reçoit plusieurs fois le message et ça lui ajoute 1 à son nombre de checkpoints atteints, ce qui pose un énorme soucis. J'aimerais que quand le joueur atteint un checkpoint, le message s'affiche qu'une seule fois (même si il se retéléporte après à ce checkpoint) et qu'il ne peut pas retourner sur les checkpoints précédents aussi mais je ne vois pas comment m'y prendre...

 

Si une âme charitable pourrait venir m'aider svp

Modifié par mimi59660

Partager ce message


Lien à poster
Partager sur d’autres sites

Yo, personnellement sur mon Skript Parkour j'ai ajouté les coordonnées de la plaque dans une liste pour éviter ce genre de problèmes

J'ai fait un truc du genre

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Cette partie du code c'est pour vérifier si les coordonées de la plaque sont dans la liste car skript ne marche pas bien (de mon côté en tout cas) avec les "if {liste::*} contains chose"

 

Désolé des grands espaces, quand je veux copier coller un code de Visual Code Studio mon message déraille complétement et je ne peux pas régler cet inconvénient.

Modifié par LOUDO

Partager ce message


Lien à poster
Partager sur d’autres sites
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.