Bonjour,
Je tiens à créer un mini-jeux avec skript comme j'ai aucune compétence en java. Pour le moment je souhaite créer un système de 2 équipes (les rouges et les bleu). Quand on rejoint la game à partir de 2 joueur le compteur commence. Mais voici mes problèmes :
on join:
if {lol.game.start} is true:
execute console command "gamemode spectator %player%"
teleport player to {lol.spectate}
add player to {joueurs::*}
if {lol.game.start} is false:
teleport player to {lol.lobby}
add 1 to {lol.wait}
add player to {joueurs::*}
set join message to "&7Un joueur a rejoint : &c&r%number of all players%/10"
on load:
set {lol.wait} to 0
set {timer.on} to false
clear {joueurs::*}
set {lol.game.start} to false
every 2 seconds:
if size of {joueurs::*} is greater than or equal to 2:
if {timer.on} is false:
loop all players:
make the loop-player execute command "/sdfosdfsdhfj"
set {timer.on} to true
command /sdfosdfsdhfj:
trigger:
if {lol.game.start} is true:
send "bipbip"
if {lol.game.start} is false:
set {_time} to 30
while {_time} is more than 0:
set player's level to {_time}
remove 1 from {_time}
{_time} is 5 or 4 or 3 or 2 or 1:
play raw sound "random.click" at player with pitch 1 volume 10
{_time} is 4:
send player title "&c5" for 1 second
{_time} is 3:
send player title "&64" for 1 second
{_time} is 2:
send player title "&e3" for 1 second
{_time} is 1:
send player title "2" for 1 second
{_time} is 0:
send player title "&e1" for 1 second
wait 1 second
set the player's level to 0
send player title "&bAttente finie" for 2 seconds
wait 2 seconds
send player title "&bVous allez être tp" with subtitle "&cdans 10 secondes" for 5 seconds
loop {joueurs::*}:
execute player command "/sjdfkbhkjf"
on quit:
if {lol.game.start} is false:
set {joueurs::*} to false
remove 1 from {lol.wait}
set leave message to "&7Un joueur a rejoint : &c&r%number of all players%/10"
if {team::color::%player%} is set:
remove player from {joueurs::*}
remove player from {team::%{team::color::%player%}%::*}
delete {team::color::%player%}
remove player from {team::*}
if {lol.game.start} is true:
if {team::color::%player%} is set:
remove player from {joueurs::*}
remove player from {team::%{team::color::%player%}%::*}
delete {team::color::%player%}
remove player from {team::*}
wait 1 tick
if size of {team::blue::*} is greater than or equal to 1:
loop all players:
broadcast "&7%player% de l'équipe bleu a quitté la partie."
if size of {team::blue::*} is 0:
set {lol.game.start} to false
loop all players:
if size of {team::red::*} is greater than or equal to 1:
if {lol.%loop-player%.join} is true:
broadcast "&c&l>> &7L'équipe &crouge &7a gagné !"
wait 2 seconds
execute player command "/h"
if {team::color::%player%} is set:
remove player from {joueurs::*}
remove player from {team::%{team::color::%player%}%::*}
delete {team::color::%player%}
remove player from {team::*}
wait 1 tick
if size of {team::red::*} is greater than or equal to 1:
loop all players:
broadcast "&7%player% de l'équipe rouge a quitté la partie."
if size of {team::red::*} is 0:
set {lol.game.start} to false
loop all players:
if size of {team::blue::*} is greater than or equal to 1:
if {lol.%loop-player%.join} is true:
broadcast "&3&l>> &7L'équipe &bbleu &7a gagné !"
wait 2 seconds
execute player command "/h"
command /lol <text>:
trigger:
if arg 1 is not set:
execute player command "/lol help"
if arg 1 is "help":
send "&3League Of Legends"
send ""
send "&6/lol leave &e- &7Quitter la partie"
if arg 1 is "leave":
if {lol.game.start} is true:
if {team::color::%player%} is set:
remove player from {joueurs::*}
execute player command "/h"
remove player from {team::%{team::color::%player%}%::*}
delete {team::color::%player%}
remove player from {team::*}
wait 1 tick
if size of {team::blue::*} is greater than or equal to 1:
loop all players:
broadcast "&7%player% de l'équipe bleu a quitté la partie."
if size of {team::blue::*} is 0:
set {lol.game.start} to false
loop all players:
if size of {team::red::*} is greater than or equal to 1:
if {lol.%loop-player%.join} is true:
broadcast "&c&l>> &7L'équipe &crouge &7a gagné !"
wait 2 seconds
execute player command "/h"
if {team::color::%player%} is set:
remove player from {joueurs::*}
execute player command "/h"
remove player from {team::%{team::color::%player%}%::*}
delete {team::color::%player%}
remove player from {team::*}
wait 1 tick
if size of {team::red::*} is greater than or equal to 1:
loop all players:
broadcast "&7%player% de l'équipe rouge a quitté la partie."
if size of {team::red::*} is 0:
set {lol.game.start} to false
loop all players:
if size of {team::blue::*} is greater than or equal to 1:
if {lol.%loop-player%.join} is true:
broadcast "&3&l>> &7L'équipe &bbleu &7a gagné !"
wait 2 seconds
execute player command "/h"
else:
execute player command "/h"
command /loladmin <text>:
permission: lol.admin
trigger:
if arg 1 is not set:
execute player command "/loladmin help"
if arg 1 is "help":
send "&3League Of Legends"
send ""
send "&6/loladmin setlobby &e- &7Définir la position du lobby"
send "&6/loladmin gotolobby &e- &7Se tp à la position du lobby"
send ""
send "&6/loladmin setspawnspectate &e- &7Définir la position du spawn des spectateurs"
send "&6/loladmin gotospawnspectate &e- &7Se tp à la position du spawn des spectateurs"
send ""
send "&6/loladmin setspawnbleu &e- &7Définir la position des bleu"
send "&6/loladmin gotospawnbleu &e- &7Se tp au bleu"
send ""
send "&6/loladmin setspawnrouge &e- &7Définir la position des rouges"
send "&6/loladmin gotospawnrouge &e- &7Se tp au rouge"
# Lobby
if arg 1 is "setlobby":
set {lol.lobby} to location of player
send "&a&oLe lobby d'attente a bien été set en &e%{lol.lobby}%"
if arg 1 is "gotolobby":
teleport player to {lol.lobby}
# Spawn équipe
if arg 1 is "setspawnbleu":
set {lol.spawnbleu} to location of player
send "&a&oLe spawn des bleu a bien été set en &e%{lol.spawnbleu}%"
if arg 1 is "gotospawnbleu":
teleport player to {lol.spawnbleu}
if arg 1 is "setspawnrouge":
set {lol.spawnrouge} to location of player
send "&a&oLe spawn des rouges a bien été set en &e%{lol.spawnrouge}%"
if arg 1 is "gotospawnrouge":
teleport player to {lol.spawnrouge}
# Spawn spectate
if arg 1 is "setspawnspectate":
set {lol.spectate} to location of player
send "&a&oLe spawn des spectateurs a bien été set en &e%{lol.spectate}%"
if arg 1 is "gotospawnspectate":
teleport player to {lol.spectate}
command /sjdfkbhkjf:
trigger:
if {team::color::%player%} is not set:
if size of {team::red::*} is more than size of {team::blue::*}:
add player to {team::blue::*}
set {team::color::%player%} to blue
else:
add player to {team::red::*}
set {team::color::%player%} to red
add player to {team::*}
loop {team::*}:
send message "&7%player% a rejoint l'équipe %{team::color::%player%}%" to loop-value
invoke "timertest"
sub "timertest":
if size of {team::red::*} + size of {team::blue::*} is more than 1:
set {_s} to 11
loop 10 times:
remove 1 from {_s}
loop {team::*}:
send message "La partie commence dans %{_s}% secondes" to {team::*}
wait 1 second
loop {team::red::*}:
teleport loop-value to {lol.spawnrouge}
loop {team::blue::*}:
teleport loop-value to {lol.spawnbleu}
Le problème N°1 est au "on quit" et le /lol leave
Je souhaite que si il reste au moins un joueur dans une équipe et dans l'autre, il y'en a 0. He bien que la partie soit finie et l'équipe qui reste gagne avec un message comme vous avez gagné.
Sauf que il ne se passe rien alors que j'ai aucune erreur.
Le problème N°2 est au (sub "timertest":):
Je ne comprend pas mais déjà, je ne peux pas mettre
set player's level to {_s}.
Il n'y a pas de subroutine event.
Le code:
loop {team::*}:
send message "La partie commence dans %{_s}% secondes" to {team::*}
Spam toujours 2x fois de message a chaque essaie de game... J'en était à 16 fois spam pour une seconde.
Le problème N°3 est au message de join et de quit:
set join message to "&7Un joueur a rejoint : &c&r%number of all players%/10"
set leave message to "&7Un joueur a rejoint : &c&r%number of all players%/10"
Je souhaite juste qu'il affiche le nombre de joueur en ligne
Voilà j'espère que vous pourrez m'aider.