Aller au contenu
  • 0

Correction de Skript de vote


Question

Posté(e)

Bonjour,

J'aimerai faire un skript de vote :

Il est activable et désactivable sur commande (/govote et /stopvote)

Une fois que le joueur à fait /vote, si le vote est activé, on lui demande combien de points sur 3 il veut mettre pour le critère 1. Il doit alors taper son chiffre dans le chat. De même pour le critère 2 et 3. S'il souhaite donner un points bonus, il met alors "Oui" dans le chat (critère 4). Une fois fini, le système fait la somme des 3 critères et fait faire au joueur la commande /plot rate (utilisable sous PlotSquared).

J'ai codé mon truc mais ça marche pas ...

# Auteur: MyMyMy26                                     #
# Dépendances: Skript                                  #
options:
#---Messages---#
 MESSAGE_PERMISSION: "&8[&4&l!&r&8] &7Vous n'avez pas cette permission !"
 MESSAGE_VOTE_ON: "&8[&a!&r&8] &7Vous entrez en phase de vote &6%player%&7, durant cette phase vous devrez communiqué votre vote dans le chat (il ne sera pas envoyé dans le canal public). Pour sortir de cette phase, tapez /vote. "
 MESSAGE_VOTE_OFF: "&8[&a!&r&8] &7Vous sortez de phase de vote &6%player%&7."
 MESSAGE_VOTE_END: "&8[&a!&r&8] &7Vous avez fini le vote &6%player%&7."
 MESSAGE_VOTE_ACTIVE: "&8[&a!&r&8] &7Vote activé."
 MESSAGE_VOTE_DESACTIVE: "&8[&a!&r&8] &7Vote désactivé."
 MESSAGE_VOTE_PASDISPO: "&8[&4!&r&8] &7Vous ne pouvez pas encore voter&7."
#---Erreurs---# 
 ERREUR_POINTS_NEGATIF: "&8[&l&4!&r&8] &cVous ne pouvez pas donner un nombre de points négatif!"
 ERREUR_POINTS_SUP3: "&8[&l&4!&r&8] &cVous ne pouvez pas donner un nombre de points supérieur à 3!"
 ERREUR_DEJAACTIVE: "&8[&l&4!&r&8] &cLe vote est déjà activé"
 ERREUR_DEJADESACTIVE: "&8[&l&4!&r&8] &cLe vote est déjà désactivé"
#---Critères---#
 CRITERE_1: "&6Combien donné vous, sur 3 points, à ce plot pour sa cohérence et son respect du batiment d'origine ?"
 CRITERE_2: "&6Combien donné vous, sur 3 points, à ce plot pour son originalité et son intérêt ?"
 CRITERE_3: "&6Combien donné vous, sur 3 points, à ce plot pour la qualité de ses espaces et de son aménagement ?"
 CRITERE_4: "&6Voulez-vous donner un points bonus ? (répondre par Oui ou par Non)"

#------ VOTE ------#
command /vote:
 description: Permet d'augmenter le niveau d'avertissement d'un joueur.
 permission: avec.concours
 permission message: {@MESSAGE_PERMISSION}
 trigger:
   if {vote.active} is set
     if {vote.mode.on::%player%} is not set:
       set {vote.mode.on::%player%} to true
       set {vote.mode::%player%} to C1
       send {@MESSAGE_VOTE_ON} to player
       send "" to player
       send {@CRITERE_1} to player
     else:
       delete {vote.mode::%player%}
       delete {vote.valeur.C1::%player%}
       delete {vote.valeur.C2::%player%}
       delete {vote.valeur.C3::%player%}
       delete {vote.valeur.C4::%player%}
       delete {vote.valeur.total::%player%}
       delete {vote.valeur.on::%player%}
       send {@MESSAGE_VOTE_OFF} to player
     stop
   else
     send {@MESSAGE_PASDISPO} to player

On Chat:
 if {staffchat.mode::%player%} is set:
   cancel event
   if message < 0
     send {@ERREUR_POINTS_NEGATIF} to player
   else if message > 3
     send {@ERREUR_POINTS_SUP3} to player
   else if {vote.mode::%player%} = C1
     set {vote.valeur.C1::%player%} to message
     send {@CRITERE_2} to player
     set {vote.mode::%player%} to C2
   else if {vote.mode::%player%} = C2
     set message to {vote.valeur.C2::%player%}
     send {@CRITERE_3} to player
     set {vote.mode::%player%} to C3
   else if {vote.mode::%player%} = C3
     set message to {vote.valeur.C3::%player%}
     send {@CRITERE_4} to player
     set {vote.mode::%player%} to C4
   else if {vote.mode::%player%} = C4
     if message is "Oui"
     set 1 to {vote.valeur.C4::%player%}
     send {@MESSAGE_VOTE_END} to player
     delete {vote.mode::%player%}
     set {vote.valeur.total::%player%} to {vote.valeur.C1::%player%} + {vote.valeur.C2::%player%} + {vote.valeur.C3::%player%} + {vote.valeur.C4::%player%}
     execute player command "plot rate %{vote.valeur.total::%player%}%"
     delete {vote.valeur.C1::%player%}
     delete {vote.valeur.C2::%player%}
     delete {vote.valeur.C3::%player%}
     delete {vote.valeur.C4::%player%}
     delete {vote.valeur.total::%player%}
   else
     send "ERREUR" to player
 stop

#------ GOVOTE ------#
 command /govote:
 description: Permet d'activer le vote.
 permission: avec.moderation.concours
 permission message: {@MESSAGE_PERMISSION}
 trigger:
   if {vote.active} is not set:
     set {vote.active} to true
   else send {@ERREUR_DEJAACTIVE} to player
   stop

#------ STOPVOTE ------#
command /stopvote:
 description: Permet de désactiver le vote.
 permission: avec.moderation.concours
 permission message: {@MESSAGE_PERMISSION}
 trigger:
   if {vote.active} is set:
     delete {vote.active} to true
   else send {@ERREUR_DEJADESACTIVE} to player
   stop

18 réponses à cette question

Messages recommandés

  • 0
Posté(e)

J'ai corrigé des trucs mais il y a tjs des erreurs :

"can't understand this expression : C1" 32

"can't compare text with an integer" 52

 

A partir de la il fait des trucs très chelou

 

"else if has to be placed afetr another if or else if"54, 56, 60, 64, 68, 80

"can't understand this condition : command" 86

"can't understand this condition : description" 87

"can't understand this condition : permission" 88

"can't understand this condition : permission message" 89

"can't understand this condition : trigger"90

 

# Auteur: MyMyMy26                                     #
# Dépendances: Skript                                  #
options:
#---Messages---#
 MESSAGE_PERMISSION: "&8[&4&l!&r&8] &7Vous n'avez pas cette permission !"
 MESSAGE_VOTE_ON: "&8[&a!&r&8] &7Vous entrez en phase de vote &6%player%&7, durant cette phase vous devrez communiqué votre vote dans le chat (il ne sera pas envoyé dans le canal public). Pour sortir de cette phase, tapez /vote. "
 MESSAGE_VOTE_OFF: "&8[&a!&r&8] &7Vous sortez de phase de vote &6%player%&7."
 MESSAGE_VOTE_END: "&8[&a!&r&8] &7Vous avez fini le vote &6%player%&7."
 MESSAGE_VOTE_ACTIVE: "&8[&a!&r&8] &7Vote activé."
 MESSAGE_VOTE_DESACTIVE: "&8[&a!&r&8] &7Vote désactivé."
 MESSAGE_VOTE_PASDISPO: "&8[&4!&r&8] &7Vous ne pouvez pas encore voter&7."
#---Erreurs---#
 ERREUR_POINTS_NEGATIF: "&8[&l&4!&r&8] &cVous ne pouvez pas donner un nombre de points négatif!"
 ERREUR_POINTS_SUP3: "&8[&l&4!&r&8] &cVous ne pouvez pas donner un nombre de points supérieur à 3!"
 ERREUR_DEJAACTIVE: "&8[&l&4!&r&8] &cLe vote est déjà activé"
 ERREUR_DEJADESACTIVE: "&8[&l&4!&r&8] &cLe vote est déjà désactivé"
#---Critères---#
 CRITERE_1: "&6Combien donné vous, sur 3 points, à ce plot pour sa cohérence et son respect du batiment d'origine ?"
 CRITERE_2: "&6Combien donné vous, sur 3 points, à ce plot pour son originalité et son intérêt ?"
 CRITERE_3: "&6Combien donné vous, sur 3 points, à ce plot pour la qualité de ses espaces et de son aménagement ?"
 CRITERE_4: "&6Voulez-vous donner un points bonus ? (répondre par Oui ou par Non)"

#------ VOTE ------#
command /vote:
 description: Permet d'augmenter le niveau d'avertissement d'un joueur.
 permission: avec.concours
 permission message: {@MESSAGE_PERMISSION}
 trigger:
   if {vote.active} is set:
     if {vote.mode.on::%player%} is not set:
       set {vote.mode.on::%player%} to true
       set {vote.mode::%player%} to C1
       send {@MESSAGE_VOTE_ON} to player
       send "" to player
       send {@CRITERE_1} to player
     else:
       delete {vote.mode::%player%}
       delete {vote.valeur.C1::%player%}
       delete {vote.valeur.C2::%player%}
       delete {vote.valeur.C3::%player%}
       delete {vote.valeur.C4::%player%}
       delete {vote.valeur.total::%player%}
       delete {vote.valeur.on::%player%}
       send {@MESSAGE_VOTE_OFF} to player
     stop
   else:
     send {@MESSAGE_PASDISPO} to player

On Chat:
 if {staffchat.mode::%player%} is set:
   cancel event
   if message < 0:
     send {@ERREUR_POINTS_NEGATIF} to player
   else if message > 3:
     send {@ERREUR_POINTS_SUP3} to player
   else if {vote.mode::%player%} = C1:
     set {vote.valeur.C1::%player%} to message
     send {@CRITERE_2} to player
     set {vote.mode::%player%} to C2
   else if {vote.mode::%player%} = C2:
     set message to {vote.valeur.C2::%player%}
     send {@CRITERE_3} to player
     set {vote.mode::%player%} to C3
   else if {vote.mode::%player%} = C3:
     set message to {vote.valeur.C3::%player%}
     send {@CRITERE_4} to player
     set {vote.mode::%player%} to C4
   else if {vote.mode::%player%} = C4:
     if message is "Oui"
     set 1 to {vote.valeur.C4::%player%}
     send {@MESSAGE_VOTE_END} to player
     delete {vote.mode::%player%}
     set {vote.valeur.total::%player%} to {vote.valeur.C1::%player%} + {vote.valeur.C2::%player%} + {vote.valeur.C3::%player%} + {vote.valeur.C4::%player%}
     execute player command "plot rate %{vote.valeur.total::%player%}%"
     delete {vote.valeur.C1::%player%}
     delete {vote.valeur.C2::%player%}
     delete {vote.valeur.C3::%player%}
     delete {vote.valeur.C4::%player%}
     delete {vote.valeur.total::%player%}
   else:
     send "ERREUR" to player
 stop

#------ GOVOTE ------#
 command /govote:
 description: Permet d'activer le vote.
 permission: avec.moderation.concours
 permission message: {@MESSAGE_PERMISSION}
 trigger:
   if {vote.active} is not set:
     set {vote.active} to true
   else:
     send {@ERREUR_DEJAACTIVE} to player
   stop

#------ STOPVOTE ------#
command /stopvote:
 description: Permet de désactiver le vote.
 permission: avec.moderation.concours
 permission message: {@MESSAGE_PERMISSION}
 trigger:
   if {vote.active} is set:
     delete {vote.active} to true
   else:
     send {@ERREUR_DEJADESACTIVE} to player
   stop

  • 0
Posté(e)

Encore un deux point oublié sur une condition de l'évent On chat.

Et corrige ton "combien donné vous" dans tes options critères ..........

 

Sur ce que tu as mis je vois un problème d'indentation sur la commande govote aussi.

  • 0
Posté(e)

Bonsoir,

Pense à:

  1. Vérifier que t'as bien les addons requis
  2. Mettre les : aux if et else
  3. Faire attention à l'indentation
  4. Te renseigner sur SkUnity.com

Je t'ai corrigé ton script, vois ce que ça donne, de mon côté y a aucune erreur au chargement (maintenant qu'il est modifié, bien sur ^^)

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