Aller au contenu
  • 0

Erreur du %player_name


Question

Posté(e)

Salut, j'ai fait ce skript:

 

#Script TEST

command /test:
   trigger:
       set {_random} to a random integer between 0 and 3

       if {_random} = 1:
           make console execute command "petadmin create %player_name irongolem"

       if {_random} = 2:
           make console execute command "petadmin create %player_name zombie"

       if {_random} = 3:
           make console execute command "petadmin create %player_name creeper"

J'ai un plugin qui permet d'effectuer une commande quand un joueur rejoint pour la première fois mon serveur. Ce plugin, c'est FirstJoinPlus. Je fais donc exécuter la commande /test (celle que j'ai créée avec ce skript) grâce au plugin FirstJoinPlus par la console quand un joueur se connecte pour la première fois. Je voudrais que cette commande choisisse aléatoirement parmi les 3 commande «petadmin create %player_name irongolem», «petadmin create %player_name zombie» et «petadmin create %player_name creeper». Ces commandes donnent un animal de compagnie au joueur (du plugin MyPet). La portion du skript qui s'occupe de choisir aléatoirement fonctionne bien. Le problème c'est les commandes. Comment puis-je savoir que la portion sur l'aléatoire fonctionne bien et que ce sont les commandes le problème? C'est simple, j'ai testé avec d'autres commandes (/day, /night). Bref, elles ne fonctionnent pas à cause du %player_name. Le symbole % me fait des erreurs. J'ai aussi essayé avec des variantes comme %player% ou <player>, mais ça ne fonctionne pas. Quand je mets directement la commande «petadmin create %player_name irongolem» dans le config.yml du plugin FirstJoinPlus, ça fonctionne. Le joueur reçoit bien son animal, mais moi je veux qu'il reçoive un animal aléatoirement donc je ne peux pas faire ça. Je dois mettre une commande dans le config.yml du plugin FirstJoinPlus qui choisit aléatoirement entre les 3 commandes (irongolem, zombie et creeper)

Bien sûr, les commandes pour avoir un animal ne peuvent pas être exécutés par le joueur sinon tout le monde pourrait avoir l'animal qu'il veut et ça foutrait un gros bordel. Les commandes doivent être exécutés par la console. Y a-t-il quelque chose qui peut remplacer %player_name et qui fonctionne dans skript?

 

Je suis sur paper spigot 1.7.x-1.8.x et j'ai skript version 2.1.2 et 0 addons

Messages recommandés

  • 0
Posté(e)
Salut, j'ai fait ce skript:

 

#Script TEST

command /test:
   trigger:
       set {_random} to a random integer between 0 and 3

       if {_random} = 1:
           make console execute command "petadmin create %player_name irongolem"

       if {_random} = 2:
           make console execute command "petadmin create %player_name zombie"

       if {_random} = 3:
           make console execute command "petadmin create %player_name creeper"

J'ai un plugin qui permet d'effectuer une commande quand un joueur rejoint pour la première fois mon serveur. Ce plugin, c'est FirstJoinPlus. Je fais donc exécuter la commande /test (celle que j'ai créée avec ce skript) grâce au plugin FirstJoinPlus par la console quand un joueur se connecte pour la première fois. Je voudrais que cette commande choisisse aléatoirement parmi les 3 commande «petadmin create %player_name irongolem», «petadmin create %player_name zombie» et «petadmin create %player_name creeper». Ces commandes donnent un animal de compagnie au joueur (du plugin MyPet). La portion du skript qui s'occupe de choisir aléatoirement fonctionne bien. Le problème c'est les commandes. Comment puis-je savoir que la portion sur l'aléatoire fonctionne bien et que ce sont les commandes le problème? C'est simple, j'ai testé avec d'autres commandes (/day, /night). Bref, elles ne fonctionnent pas à cause du %player_name. Le symbole % me fait des erreurs. J'ai aussi essayé avec des variantes comme %player% ou <player>, mais ça ne fonctionne pas. Quand je mets directement la commande «petadmin create %player_name irongolem» dans le config.yml du plugin FirstJoinPlus, ça fonctionne. Le joueur reçoit bien son animal, mais moi je veux qu'il reçoive un animal aléatoirement donc je ne peux pas faire ça. Je dois mettre une commande dans le config.yml du plugin FirstJoinPlus qui choisit aléatoirement entre les 3 commandes (irongolem, zombie et creeper)

Bien sûr, les commandes pour avoir un animal ne peuvent pas être exécutés par le joueur sinon tout le monde pourrait avoir l'animal qu'il veut et ça foutrait un gros bordel. Les commandes doivent être exécutés par la console. Y a-t-il quelque chose qui peut remplacer %player_name et qui fonctionne dans skript?

 

Je suis sur paper spigot 1.7.x-1.8.x et j'ai skript version 2.1.2

Bon de 1 pas besoin de player_name c'est directe player et jamais un % sans un deuxième....

donc essaye

%player%

  • J'aime 1
  • 0
Posté(e)

Euh bah, utilise déjà :

on first join:

 

Qui signifie: La première fois qu'un joueur rejoint.

 

après j'ai mal compris mais essaie comme cela:

on first join:
   set {_random.%player%} to a random integer between 0 and 3
   if {_random.%player%} = 1:
       execute console command "/petadmin create %player% irongolem"
   if {_random.%player%} = 2:
       execute console command "/petadmin create %player% zombie"
   else:
       execute console command "/petadmin create %player% creeper"

 

Utilise %player% pour savoir le nom de celui-ci.

 

Bonne journée.

  • 0
Posté(e)
Je n'ai pas compris. Peux-tu reformuler?

essaye par exemple :

execute console command "/petadmin create %player% irongolem"

Sinon le problème viens des commandes, et si les commandes sont créer à partir d'un script alors utilise des fonctions.

  • 0
Posté(e)

Oh, je viens d'essayer et %player% fonctionne quand je fais la commande /test en jeux. Par contre, quand je mets la commande /test dans le plugin FirstJoinPlus, ça ne fonctionne pas. C'est logique, il faudrait préciser le nom du joueur. La console ne fait que /test donc ça ne précise pas le joueur. Qu'est-ce que je devrais ajouter dans le skript pour que la commande soit /test «LePseudoDuJoueur»?

  • 0
Posté(e)

Enlève firstjoinPlus et met dans un skript:

on first join:
   set {_random.%player%} to a random integer between 0 and 3
   if {_random.%player%} = 1:
       execute console command "/petadmin create %player% irongolem"
   if {_random.%player%} = 2:
       execute console command "/petadmin create %player% zombie"
   else:
       execute console command "/petadmin create %player% creeper"

 

C'est fini.

  • 0
Posté(e)

Je ne suis pas très familier avec skript, ou dois-je mettre

on first join:

#

?

 

ah laisse tomber hahaha je suis con

 

[Fusion de deux messages]

  • 0
Posté(e)

Ah, ton code

on first join:

set {_random.%player%} to a random integer between 0 and 3

if {_random.%player%} = 1:

execute console command "/petadmin create %player% irongolem"

if {_random.%player%} = 2:

execute console command "/petadmin create %player% zombie"

else:

execute console command "/petadmin create %player% creeper"

 

ne fonctionne pas. Je rencontre 2 erreurs.

  • 0
Posté(e)

j'ai bien mis les espaces, je ne sais pas pourquoi dans mon message on ne les voit pas

 

quand je veux reload, c'est simplement écrit: encountered 2 errors while reloading the config and all scripts

 

[Fusion de deux messages]

  • 0
Posté(e)

Et pour les espaces:

 

tu dois faire un clic sur l'icone après l'icone vidéo va dans code et met-le dedans ;)

 

C'est quoi tes erreurs (les 2) ?

  • 0
Posté(e)

Je n'ai aucune erreur, j'ai aucun addon sur mon serveur local pourtant. :(

Je t'envoie le fichier, test avec ;)

 

Sinon télécharge Skript version 1.7.10 si sa ne marche pas.

 

Contact moi en cas de besoin.

  • J'aime 1
  • 0
Posté(e)
Je n'ai aucune erreur j'ai aucun addon sur mon serv local pour tant.

Je t'envoie le fichier, test avec ;-)

 

Sinon télécharge skript version 1.7.10 si sa marche pas.

 

Contact moi en cas de besoin.

Ça ne fonctionne toujours pas. J'ignore d'ou vient le problème. As-tu discord ou skype? Je crois que la console a du mal à identifier qui est %player%

×
×
  • 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.