Shykuzo 69 Posté : 17 mars 2021 Version de Minecraft : 1.13.x - 1.14.x (Native : 1.14.4) Version de Skript : 2.5.3 Addons utilisés: Vixio, Skript-GUI, SkQuery, SkEnt, SkDragon, Skellett, SkBee, SharpSK et Reqn Type du skript : Achat dans un magasin joueur (Market / HDV) Description du script : Bonjour à tous et à toutes ! J'ai récemment créer un Market, un peu comme pour les serveurs Factions avec le HDV, celui-ci fonctionne extrêmement bien sauf une chose. Quand j'essaye d'acheter l'objet d'un autre joueur via le menu, je définis une variable sur une variable texte suivi d'un "parsed as a integer". Cependant, une fois le "parsed ..." mis, ma variable retourne "<none>" au lieu du prix alors que la variable contenant le prix de base, elle me retourne bien le prix sauf que comme celle-ci est un texte, je ne peux pas l'utiliser Voici le code : Citation Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Ici, je ne donne que le "on inventory click:" car, premièrement, je ne veux pas partager le reste du code et deuxième, le problème vient de là. Alors, la variable qui pose problème est "{_Price}" défini sur "{_Lore.2}", "{_Lore.2}" me retourne bien le prix indiqué dans la ligne 2 du lore mais quand je défini "{_Price}" sur celle-ci suivi d'un "parsed as a integer" afin de faire comprendre à Skript que c'est un nombre, il me retourne "<none>" comme dit précédemment. Cela fait plusieurs jours que j'essaye de réglé ce problème, en vain alors si vous avez la solution, merci grandement à vous ! Bonne journée ! Partager ce message Lien à poster Partager sur d’autres sites
Blob 4 Répondu : 20 mars 2021 (modifié) Le souci c'est que la variable que tu parse as integer n'est pas seulement un nombre sous "format texte", je m'explique : Comme tu l'as dis, t'essaye de faire comprendre au script que ta variable {_Lore.2} est un nombre, SAUF QUE : si le contenu de la variable était par exemple "58" (et j'ai bien mis des guillemets pour dire que c'est un texte) et que t'ecris "set {_Price} to "%{_Lore.2}%" parsed as integer", ca va bien te retourner 58, sauf que là ta variable ne contient pas QUE le nombre, mais aussi d'autre texte, en l'occurence ta variable contient je suppose : "&7Prix &8: &f + ton nombre ici j'imagine" Et skript ne peut pas transformer des lettres en nombre (c'est logique). Si tu n'as toujours pas compris je t'invite à faire par exemple : set {_texte1} to "58" set {_texte2} to "le nombre 58" set {_exemple1} to "%{_texte1}%" parsed as a integer set {_exemple2} to "%{_texte2}%" parsed as a integer et tu verras que la variable {_exemple1} te retournera 58 et la variable {_exemple2} te retournera <none>, car tu peux transformer une variable qui contient un texte en integer UNIQUEMENT si elle contient SEULEMENT un nombre et pas de texte. Modifié 20 mars 2021 par Blob j'ai corrigé quelques fautes Partager ce message Lien à poster Partager sur d’autres sites
Shykuzo 69 Répondu : 20 mars 2021 (modifié) il y a 52 minutes, Blob a dit : Le souci c'est que la variable que tu parse as integer n'est pas seulement un nombre sous "format texte", je m'explique : Comme tu l'as dis, t'essaye de faire comprendre au script que ta variable {_Lore.2} est un nombre, SAUF QUE : si le contenu de la variable était par exemple "58" (et j'ai bien mis des guillemets pour dire que c'est un texte) et que t'ecris "set {_Price} to "%{_Lore.2}%" parsed as integer", ca va bien te retourner 58, sauf que là ta variable ne contient pas QUE le nombre, mais aussi d'autre texte, en l'occurence ta variable contient je suppose : "&7Prix &8: &f + ton nombre ici j'imagine" Et skript ne peut pas transformer des lettres en nombre (c'est logique). Si tu n'as toujours pas compris je t'invite à faire par exemple : set {_texte1} to "58" set {_texte2} to "le nombre 58" set {_exemple1} to "%{_texte1}%" parsed as a integer set {_exemple2} to "%{_texte2}%" parsed as a integer et tu verras que la variable {_exemple1} te retournera 58 et la variable {_exemple2} te retournera <none>, car tu peux transformer une variable qui contient un texte en integer UNIQUEMENT si elle contient SEULEMENT un nombre et pas de texte. Regarde bien mon code, je remplace le "Prix :" et le signe "$" Surtout que quand j'envoie ma variable, il me retourne bien le nombre et rien d'autre. Modifié 20 mars 2021 par Shykuzo Partager ce message Lien à poster Partager sur d’autres sites
TitiLaPierre 39 Répondu : 22 mars 2021 Pourquoi ne pas directement utiliser sous cette forme au lieu de passer par un on inventory click: Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Je suppose que quand tu définis les slots de ton GUI, le prix que tu indiques dans le lore est un integer et le vendeur un offline player. Partager ce message Lien à poster Partager sur d’autres sites
Shykuzo 69 Répondu : 23 mars 2021 (modifié) Il y a 17 heures, TitiLaPierre a dit : Pourquoi ne pas directement utiliser sous cette forme au lieu de passer par un on inventory click: Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Je suppose que quand tu définis les slots de ton GUI, le prix que tu indiques dans le lore est un integer et le vendeur un offline player. Oui et effectivement, je n'y ai pas pensé, je vais essayer EDIT : Même en mettant tout le code du "on inventory click:" dans le GUI directement, le bug est toujours présent Citation Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Modifié 23 mars 2021 par Shykuzo Partager ce message Lien à poster Partager sur d’autres sites
Alliz 27 Répondu : 28 mars 2021 Salut, J'ai eu ce problème lors de la création d'un skript de jobs sans pouvoir le résoudre, Question que je te pose: Pourquoi vouloir un parsed as integer ? Si ton nombre de base X est un entier mais sous forme de int, alors ça ne se verra pas. (C'est moins clair que le parsed pour toi mais tes joueurs le verront pas) Partager ce message Lien à poster Partager sur d’autres sites
Shykuzo 69 Répondu : 29 mars 2021 Le 28/03/2021 à 10:10, Alliz a dit : Salut, J'ai eu ce problème lors de la création d'un skript de jobs sans pouvoir le résoudre, Question que je te pose: Pourquoi vouloir un parsed as integer ? Si ton nombre de base X est un entier mais sous forme de int, alors ça ne se verra pas. (C'est moins clair que le parsed pour toi mais tes joueurs le verront pas) J'ai pas le choix, la variable qui gère l'argent ({Economy::Dollard::%player%}) contient un integer. Ma variable {Lore.2} contient un texte. Donc, afin de vérifier si le joueur à tel montant ou pas, j'ai besoin que cette variable soit transformée en integer. Sauf que, malgré des dizaines de tentatives, je n'ai pas réussis à faire fonctionner le "parsed" Partager ce message Lien à poster Partager sur d’autres sites
Crastix 0 Répondu : 30 mars 2021 Salut, y'a une règle en anglais, peut-être que comme il faut rajouter 1 n quand une lettre est à côté d'une voyelle ? Du coup peut-être: parsed as an integer ? Partager ce message Lien à poster Partager sur d’autres sites
Shykuzo 69 Répondu : 30 mars 2021 Il y a 1 heure, Crastix a dit : Salut, y'a une règle en anglais, peut-être que comme il faut rajouter 1 n quand une lettre est à côté d'une voyelle ? Du coup peut-être: parsed as an integer ? J'ai déjà essayé mais si cela venait de sa, Skript m'aurait retourné une erreur, hors, ce n'est pas le cas. 1 Partager ce message Lien à poster Partager sur d’autres sites
TitiLaPierre 39 Répondu : 4 avril 2021 Salut! Peux-tu envoyer le code que tu utilises (Celui sans le on inventory). Partager ce message Lien à poster Partager sur d’autres sites
Shykuzo 69 Répondu : 5 avril 2021 Le 04/04/2021 à 20:24, TitiLaPierre a dit : Salut! Peux-tu envoyer le code que tu utilises (Celui sans le on inventory). C'est celui de mon message de demande d'aide '-' Partager ce message Lien à poster Partager sur d’autres sites
Joriis 267 Répondu : 27 juin 2021 Le sujet n'a pas reçu de réponse pouvant le résoudre. Il a donc été verrouillé. Cordialement, l'équipe. Partager ce message Lien à poster Partager sur d’autres sites