KyloRen3600 Posté(e) le 13 juin 2017 Posté(e) le 13 juin 2017 Bonjour/Bonsoir, aujourd'hui on se retrouve pour mon premier tutoriel ! J'ai remarqué une tendance dans le création de skript de rush/hikabrain. Dans ce tutoriel très simple je vais donc vous apprendre à détecter la personne qui allume une TNT (avec un briquet uniquement) ce qui vous permet donc d'ensuite savoir si tel équipe à détruit le lit de tel autre équipe et d'alors lui rajouter une récompense par exemple(comme sur funcraft). Ici on va faire en sorte que lorsqu'une TNT explose on envoie à tout les joueurs: "<joueur> à fait exploser une TNT !" Tout d'abord on définit l’événement: on rightclick with flint and steel: #quand on fait clique droit avec un briquet: if event-block is tnt: #si le bloc atteint est une TNT Puis on annule l’événement pour créer une TNT que l'on va pouvoir enregistrer dans une variable: cancel event #annulation de l'événement set event-block to air #suppression du bloc de TNT spawn an primed tnt at location of event-block #on place une TNT allumée set {_tnt} to last spawned primed tnt #que l'on sauvegarde dans la variable locale {_tnt} Ce qui donne finalement: on rightclick with flint and steel: if event-block is tnt: cancel event set event-block to air spawn an primed tnt at location of event-block set {_tnt} to last spawned primed tnt Cela revient à créer l'action classique de Minecraft qui fait que lorsque l'on fait clique droit sur une TNT une TNT allumée apparaît. Cependant ici on a pu reconnaître la TNT est l'enregistrer. Maintenant il faut détecter quand la TNT explose pour savoir quand on envoie le message "<joueur> à fait exploser une TNT !". Pour cela on va attendre deux secondes, car une TNT n'explose pas aussi vite. wait 2 second #rien de sorcier mais évitera de trop faire lag ! Puis on va regarder toutes les TNT allumées est si la TNT trouvée est la TNT {_tnt} que nous avons défini avant on va mettre la variable {_find} à true pour dire que l'on a trouvé la TNT (vous allez comprendre): loop all primed tnt: #on regarde toutes les TNT allumées if loop-entity is {_tnt}: #si on trouve la TNT {_tnt} que l'on a fait spawn avant set {_find} to true #on met la variable {_find} à true Puis on attend 1 tick puis si {_find} n'est pas mise alors on n'a pas trouvé la TNT cela signifie donc que la TNT a explosée est l'on peut donc envoyer notre message: wait 1 tick if {_find} is not set: #si on a pas trouvé la TNT broadcast "&b%player% &7a fait explosé une &4TNT &7!" #envoie du message On va répéter l'action 5 fois toutes les secondes jusqu'à ce que nous ne trouvions plus la TNT: loop 5 times: #on répète l'action 5 fois loop all primed tnt: if loop-entity is {_tnt}: set {_find} to true wait 1 tick if {_find} is not set: broadcast "&b%player% &7a fait explosé une &4TNT &7!" stop loop #on arrête larépétition else: #si on a trouvé la TNT clear {_fin} #on nettoie la variable {_find} wait 1 second #on attend une seconde avant de reprendre Ce qui donne enfin: on rightclick with flint and steel: if event-block is tnt: cancel event set event-block to air spawn an primed tnt at location of event-block set {_tnt} to last spawned primed tnt wait 2 second loop 5 times: loop all primed tnt: if loop-entity is {_tnt}: set {_find} to true wait 1 tick if {_find} is not set: broadcast "&b%player% &7a fait explosé une &4TNT &7!" stop loop else: clear {_find} wait 1 second J'éspère avoir était le plus clair possible et n'héitez pas à mettre un commentaire pour m'aider !
HardTrox Posté(e) le 22 juin 2017 Posté(e) le 22 juin 2017 Sinon tu peut faire cela , je trouve cela plus simples apres je c'est pas si ça te convient on rightclick with flint and steel: #Quand on clique droit sur un bricket if event-block is tnt:#si le bloc est une tnt message "%player% a allumer une tnt :D"#On annonce le joueurs qui a allumer la tnt wait 4 seconds #on attend 4 secondes message "%player% a fait peter une tnt :D" #On annonce le joueurs qui a fait peter la tnt 1
KyloRen3600 Posté(e) le 22 juin 2017 Auteur Posté(e) le 22 juin 2017 Sinon tu peut faire cela , je trouve cela plus simples apres je c'est pas si ça te convient on rightclick with flint and steel: #Quand on clique droit sur un bricket if event-block is tnt:#si le bloc est une tnt message "%player% a allumer une tnt :D"#On annonce le joueurs qui a allumer la tnt wait 4 seconds #on attend 4 secondes message "%player% a fait peter une tnt :D" #On annonce le joueurs qui a fait peter la tnt C'est vrai c'est aussi une autre méthode qui fonctionne très bien, seulement le message ne s'affichera pas exactement au bon moment mais il y aura moins de lag avec ta méthode je pense
HardTrox Posté(e) le 22 juin 2017 Posté(e) le 22 juin 2017 C'est vrai c'est aussi une autre méthode qui fonctionne très bien, seulement le message ne s'affichera pas exactement au bon moment mais il y aura moins de lag avec ta méthode je pense Si si test tu verra une tnt met 4 secondes a peter <3 :p 1
KyloRen3600 Posté(e) le 22 juin 2017 Auteur Posté(e) le 22 juin 2017 Faux il est de 4,04 je viens de tester avec un skript xD
HardTrox Posté(e) le 22 juin 2017 Posté(e) le 22 juin 2017 Faux il est de 4,04 je viens de tester avec un skript xD Mdr faut pas chipoter :p
Cecemel_PvP Posté(e) le 10 décembre 2017 Posté(e) le 10 décembre 2017 Sinon tu peut faire cela , je trouve cela plus simples apres je c'est pas si ça te convient on rightclick with flint and steel: #Quand on clique droit sur un bricket if event-block is tnt:#si le bloc est une tnt message "%player% a allumer une tnt :D"#On annonce le joueurs qui a allumer la tnt wait 4 seconds #on attend 4 secondes message "%player% a fait peter une tnt :D" #On annonce le joueurs qui a fait peter la tnt Ton orthographe par contre...
KyloRen3600 Posté(e) le 10 décembre 2017 Auteur Posté(e) le 10 décembre 2017 Sujet de juin :p Avec un peu de recul, je me dit vraiment que cette méthode est vraiment pas du tout opti x)
Cecemel_PvP Posté(e) le 10 décembre 2017 Posté(e) le 10 décembre 2017 Sujet de juin :p Avec un peu de recul, je me dit vraiment que cette méthode est vraiment pas du tout opti x) XDD, c'est vrais que ça fait longtemps ^^ [FUSIONNE] Faudrait mettre en 'résolu'. [FUSIONNE] Mes je sais pas comment tu pourrais faire...
Shelk Posté(e) le 10 décembre 2017 Posté(e) le 10 décembre 2017 Evite le triple post Et c’est un tutoriel hein pas une demande donc on met pas en résolue xD 3
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant