Aller au contenu

Question

Posté(e)

Bonsoir, je suis en train de faire un jump et j'ai pu y faire un start ainsi qu'un respawn en cas de chute. J'ai voulu y ajouter un timer pour pouvoir faire un classement des parcours effectués le plus rapidement. Comme vous le verez sur le skript tout marche sauf quand un joueur passe sur la plaque de pression, le scoreboard s'update mais pour tout les joueurs, auriez vous une solution ? Si vous voyez un moyen d'optimiser le code, n'hésitez pas à me le dire! Cordialement 

command /startjump:
 trigger:
  if player is in "jump":
   teleport player to {start}

on stepping on a pressure plate:
 event-block is a golden pressure plate
 if player is in "jump":
  loop all players:
   make loop-player execute command "/b reset"
   make loop-player execute command "/b on"
   send "&6Début du jump, bonne chance!" to player

command /board:
 trigger:
  loop all players:
   if {board} is true:
    display board named "&6JUMP" to loop-player
    make score "&6Timer: &c%{time.m}%:%{time.s}%" in board of loop-player to 1
    move display of loop-player to sidebar
   if {board} is false:
    display board named "&6JUMP" to loop-player
    make score "&6Timer: &c%{time.m}%/%{time.s}%" in board of loop-player to 1

every 1 second:
 make all players execute command "/board"
 add 1 to {time.s}
 if {time.s} is 60:
  set {time.s} to 0
  add 1 to {time.m}

on damage:
 if victim is in "jump":
  if damage cause is fall:
   cancel event
   set damage to 0

on any move:
 if player is in "jump":
  if {board} is true:
   loop all players:
    if y-coordinate of loop-player < 10:
     teleport loop-player to {start}
     send "&6Dommage, réessaye!" to loop-player
     make loop-player execute command "/b off"
     make loop-player execute command "/b reset"

command /b <text>:
 trigger:
  loop all players:
   if arg 1 is "on":
    set {board} to true
   if arg 1 is "off":
    set {board} to false
   if arg 1 is "reset":
    set {time.s} to 0
    set {time.m} to 0

 

2 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Bah un peu de jugeote enfin !
Regarde ton code :

on stepping on a pressure plate:
 event-block is a golden pressure plate
 if player is in "jump":
  loop all players:
   make loop-player execute command "/b reset"
   make loop-player execute command "/b on"
   send "&6Début du jump, bonne chance!" to player

Evidemment que ça s'update pour tout les joueurs, tu fais un loop all players !!!!
Voici pour le monsieur :

on stepping on pressure plate:
 block is golden pressure plate
 if player is in "jump":
  make player execute command "/b reset"
  make player execute command "/b on"
  send "&6Début du jump, bonne chance!"

 

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.