Un every X time est plus efficace qu'un while, car un while doit "stocker son intérieur", ce qui fait que :
J'ai un while de 5 secondes :
on join:
while player is online:
broadcast "..."
wait 5 seconds
Le soucis c'est que lorsqu'un joueur va se connecter, et que une seconde plus tard un autre joueur se connecte, les temps seront décalés. S'il y a trop de joueurs dans un serveur, (ex : 75), il y aura beaucoup de décalages et la mémoire Skript sera remplie, par rapport à un every X time, et qui ne prend pratiquement rien en mémoire et n'a pas de décalages.
De toute façon cela revenait au même de faire :
on join:
while player is online:
broadcast "..."
wait 5 seconds
Et...
every 5 seconds:
broadcast "..."
Le plus efficace est le every X time dans ces conditions. Le while est plutôt à utiliser en cas d'extrême (on any movement, etc...).
Y a moyen d'optimiser encore plus avec un every X time. Je prends le code de @TwerkRekt pour exemple :
every second:
loop all players:
wipe loop-player's sidebar
set name of sidebar of loop-player to "&6FrinoCraft"
set score "&3" in sidebar of loop-player to 0
set score "&6Informations" in sidebar of loop-player to 1
set score "&2 " in sidebar of loop-player to 2
set score "&6%number of all players%" in sidebar of loop-player to 3
set score " " in sidebar of loop-player to 4
set score "&6%loop-player%" in sidebar of loop-player to 5
En rajoutant seulement une ligne de code, j'économise un tout petit peu de lags en moins :
every second:
loop all players:
wipe loop-player's sidebar
set name of sidebar of loop-player to "&6FrinoCraft"
set score "&3" in sidebar of loop-player to 0
set score "&6Informations" in sidebar of loop-player to 1
set score "&2 " in sidebar of loop-player to 2
set score "&6%number of all players%" in sidebar of loop-player to 3
set score " " in sidebar of loop-player to 4
set score "&6%loop-player%" in sidebar of loop-player to 5
wait 2 ticks # <- Et oui coco !
Donc un every X time > while^^ !