Aller au contenu

Question

Posté(e)

Bonjour,
J'avance petit à petit dans mon système de niveaux mais je suis encore confronté à un problème 😞
Quand un joueur atteins 50 d'XP, je souhaiterais que son tier passe niveau 2.
Comment puis-je créer un event dans lequel je peux récupérer le pseudo du joueur (car le nom de ma variable est {TopaLevels.%player%.tier}) et mettre à jour ma variable ?
J'ai essayé avec loop-players mais sa ne marche pas 😞
Voici mon code :
 

on join:
  if {TopaLevels.%player%.xp} isn't set:
    set {TopaLevels.%player%.xp} to 1
    set {TopaLevels.%player%.tier} to 1
command /levels:
  trigger:
    if {TopaLevels.%player%.xp} isn't set:
      send "Hey ! Bienvenue sur Topazia, un profil vient de t'être créé !"
      set {TopaLevels.%player%.xp} to 1
      send "Ton niveau d'xp est : %{TopaLevels.%player%.xp}%"
    else:
      send "Ton niveau d'xp est : %{TopaLevels.%player%.xp}%"

command /levelscheck [<player>]:
	trigger:
		if arg 1 is set:
			send "Niveau xp joueur : %{TopaLevels.%arg 1%.xp}%"

command /levelsadd [<player>] [<integer>]:
	trigger:
		if arg 1 is set:
			if arg 2 is set:
				if {TopaLevels.%arg 1%.xp} isn't set:
					send "Ce pseudo n'est pas enregistré dans la base de données"
				else:
					add arg 2 to {TopaLevels.%arg 1%.xp}
					send "%arg 2% ont été rajoutés à l'XP du Joueur %arg 1% !"
					send "Son niveau actuel est donc de : %{TopaLevels.%arg 1%.xp}%"
command /levelsremove [<player>] [<integer>]:
  trigger:
    if arg 1 is set:
      if arg 2 is set:
        if {TopaLevels.%arg 1%.xp} isn't set:
          send "Ce pseudo n'est pas enregistré dans la base de données"
        else:
          remove arg 2 from {TopaLevels.%arg 1%.xp}
          send "%arg 2% ont été supprimés à l'XP du Joueur %arg 1% !"
          send "Son niveau actuel est donc de : %{TopaLevels.%arg 1%.xp}%"
command /levelsreset [<player>] [<integer>]:
  trigger:
    if arg 1 is set:
      if arg 2 is set:
        if {TopaLevels.%arg 1%.xp} isn't set:
          send "Ce pseudo n'est pas enregistré dans la base de données"
        else:
          set {TopaLevels.%arg 1%.xp} to 1
          send "Les niveaux de  %arg 1% ont étés réinitialisés !"
          send "Son niveau actuel est donc de : %{TopaLevels.%arg 1%.xp}%"

# Tiers

Merci d'avance 🙂

Version de Minecraft : 1.7.10 (Build Thermos 57)
Version de Skript : 2.1.2

Addons utilisés: Aucun

Type du skript : Un Skript avec des levels et plus on monte de levels, plus on monte de tiers.

Description du script :

Des levels qu'on peut augmenter et sa débloque des choses ...

4 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Je ne pense pas que tu ai compris.
En fait j'aimerais exécuter une commande toute les 5 secondes où je peux utiliser l'argument %player% à l'interieur pour ma variable.
Je ne vois pas comment je peux me servir de ton code 😞

Une autre idée ?

  • 0
Posté(e)

Essaye ça:

every 5 seconds:

             loop all players:

                      if {TopaLevels.%loop-player%.xp} is 50:

                                   set {TopaLevels.%loop-player%.tier} to {TopaLevels.%loop-player%.tier} + 1

TopaLevels.%player%.xp
  • J'aime 1
Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.
×
×
  • 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.