Je vous explique mon problème: je voudrais faire un skript qui permettrait au joueurs de rejoindre une des deux équipes que j'ai créer (Blue ou Red). Je veux faire en sorte qu'il ne peuvent pas rejoindre sans invitation si il y a déjà quelqu'un dans la team et je voudrais aussi limiter le nombre de joueurs à 3. J'utilise donc plusieurs fois l'expression "contains". Cela marche bien tant que je suis seul mais dès qu'il y a deux joueurs ça capote et il ne reconnaît plus que les joueurs sont dans la team.
Voilà mon code et ma version de skript est la 2.1.2:
command /team [<text>] [<player>]:
permission: team.use
permission message: &cVous ne pouvez pas utilisez cette commande dans ce monde !
trigger:
if arg-1 is "invite":
if arg-2 is not set:
send "&cUsage: /team invite <player>" to player
if arg-2 is set:
if {team.blue::*} contains player:
if {invite.team.blue}:
send "[&b&lTeam&r] Ce joueur a déjà été invité dans votre équipe." to player
else if {invite.team.red}:
send "&cLe joueur a déjà une invitation. Il doit d'abord la refuser avant de pouvoir en avoir une nouvelle." to player
else:
add arg-2 to {invite.team.blue::*}
send "[&b&lTeam&r] Le joueur %arg-2% a été invité à votre équipe." to player
send "[&b&lTeam&r] Vous avez été invité dans son équipe par %player%." to arg-2
send "[&b&lTeam&r] Tapez /team accept pour accepter son invitaion." to arg-2
else:
send "&cVous devez être dans une équipe pour inviter quelqu'un." to player
if arg-1 is "revoke":
if arg-2 is not set:
send "&cUsage: /team revoke <player>" to player
if arg-2 is set:
if {team.blue::*} contains player:
remove arg-2 from {invite.team.blue::*}
send "[&b&lTeam&r] L'invitation de %arg-2% a été révoquée." to player
send "[&b&lTeam&r] Votre invitation a été révoquée par %player%." to arg-2
if arg-1 is "accept":
if {invite.team.blue::*} contains player:
if size of {team.blue::*} is 3:
send "&cL'équipe est déjà pleine." to player
else:
remove player from {team.blue::*}
remove player from {team.red::*}
remove player from {invite.team.blue::*}
add player to {team.blue::*}
send "[&b&lTeam&r] Vous avez rejoint Team Blue." to player
if {invite.team.red::*} contains player:
if size of {team.red::*} is 3:
send "&cL'équipe est déjà pleine." to player
else:
remove player from {team.blue::*}
remove player from {team.red::*}
remove player from {invite.team.red::*}
add player to {team.red::*}
send "[&b&lTeam&r] Vous avez rejoint Team Red." to player
else:
send "[&b&lTeam&r] Vous n'avez pas d'invitation." to player
if arg-1 is "deny":
remove player from {invite.team.blue::*}
remove player from {invite.team.red::*}
send "[&b&lTeam&r] Vous avez refusé l'invitation." to player
if arg-1 is "list":
send "[&b&lTeam&r] Team Blue : %{team.blue::*}%" to player
send "[&b&lTeam&r] Team Red : %{team.red::*}%" to player
if arg-1 is "clear":
if player have permission "team.admin":
clear {team.blue::*}
clear {team.red::*}
send "[&b&lTeam&r] Équipes effacées." to player
if arg-1 is "joinblue":
if {team.blue::*} is set:
send "&cVous ne pouvez pas rejoindre une équipe qui a déjà des membres sans y avoir été invité." to player
else:
remove player from {team.blue::*}
remove player from {team.red::*}
add player to {team.blue::*}
send "[&b&:Team&r] Vous avez team Blue." to player
send "[&b&lTeam&r] Utilisez /team invite pour inviter d'autres joueurs à vous rejoindre." to player
if arg-1 is "joinred":
if {team.red::*} is set:
send "&cVous ne pouvez pas rejoindre une équipe qui a déjà des membres sans y avoir été invité." to player
else:
remove player from {team.blue::*}
remove player from {team.red::*}
add player to {team.red::*}
send "[&b&:Team&r] Vous avez team Red." to player
send "[&b&lTeam&r] Utilisez /team invite pour inviter d'autres joueurs à vous rejoindre." to player
on quit:
remove player from {team.blue::*}
remove player from {team.red::*}
Je crois que le problème vient du fait que j'utilise des variables listes mais je ne vois pas comment faire autrement.
Et sinon j'aimerais bien aussi savoir si il existe un moyen de sélectionner ceux présent dans une variable pour leur mettre un effect à la manière d'un @a[team=blue].
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.
Question
Syltaran
Bonjour les gens.
Je vous explique mon problème: je voudrais faire un skript qui permettrait au joueurs de rejoindre une des deux équipes que j'ai créer (Blue ou Red). Je veux faire en sorte qu'il ne peuvent pas rejoindre sans invitation si il y a déjà quelqu'un dans la team et je voudrais aussi limiter le nombre de joueurs à 3. J'utilise donc plusieurs fois l'expression "contains". Cela marche bien tant que je suis seul mais dès qu'il y a deux joueurs ça capote et il ne reconnaît plus que les joueurs sont dans la team.
Voilà mon code et ma version de skript est la 2.1.2:
Je crois que le problème vient du fait que j'utilise des variables listes mais je ne vois pas comment faire autrement.
Et sinon j'aimerais bien aussi savoir si il existe un moyen de sélectionner ceux présent dans une variable pour leur mettre un effect à la manière d'un @a[team=blue].
Merci les gens !
9 réponses à cette question
Messages recommandés