Aller au contenu

Question

Posté(e) (modifié)

Bonjour à tous,

C'est mon premier post sur ce forum mais j'ai vraiment besoin d'aide.

J'ai cherché partout sur internet, sur tous les sites skripts, sur bukkit, spigot, en français, en anglais et j'ai rien trouvé qui proposait une solution à mon problème

 

Alors voila, je cherche un moyen de sauvegarder un item sous forme de texte, qui contient toutes les données de l'item (Enchants, durabilité, lore, nom, nbt)

Bon objectif est de pouvoir ensuite stocker cet item dans une base de donnée MySql, puis de le re-transformer en item pour pouvoir le give à un joueur.

En fait c'est tout simplement de la sauvegarde d'item sous Base de données SQL, mais je ne veux pas que ça soit dans la table automatique de skript (variables21). Je veux pouvoir sauvegarder les items comme je veux dans la BDD

J'ai vu plein de moyen de le faire en java (avec la méthode de sérialisation de Bukkit) mais aucun moyen en skript.

J'ai trouvé plein de fois la syntaxe:

set {inventory} to player's serialized inventory

Mais elle ne fonctionne pas alors que j'ai tous les add-ons, et je ne suis pas sur qu'elle soit une solution à mon problème.

 

PS: J'utilise Skript 2.2-dev37c pour Paper Spigot 1438 (Minecraft 1.12.2)

J'ai les add-ons suivants: 

Skellett, SkQuery, skRayFall, skript-db, Skript, skUtilities, Vixio, WildSkript

 

En espérant que quelqu'un puisse m'aider, antoinech

Modifié par antoinech

13 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Salut, merci de ta réponse.

J'ai regardé mais ça ne répond pas à mon problème.

Dans la fonction du sujet, les items sont stockés dans une variable de skript, et non en tant que texte brut...

  • 0
Posté(e) (modifié)
Il y a 23 heures, antoinech a dit :

Salut, merci de ta réponse.

J'ai regardé mais ça ne répond pas à mon problème.

Dans la fonction du sujet, les items sont stockés dans une variable de skript, et non en tant que texte brut...

Une variable en général stocke une chaîne de caractères si tu regardes sa valeur.  Après je n'ai plus l'addon mais il y a un moyen de faire une belle table dans ta BDD avec Skript sans utiliser les variables.

Modifié par MrUrica
  • J'aime 1
  • 0
Posté(e)
Le 07/01/2019 à 10:31, > NoaGamingFR a dit :

Salut, pourquoi ne pas set une variable temporaire à chaque choses voulue ta BDD, name tool, lore,... tu les envoies sur ta BDD dans une catégorie et après tu rècupèré ?

Salut, j'ai commencé à faire une fonction de Sérialisation en faisant comme tu dis, le problème c'est qu'il manque certaines informations dans les items, par exemple:

  • Les attributs d'un item
  • Le contenu des shulkers
  • La texture des têtes

En réalité il ne me manque surtout que les attributs, les autres sont très facultatifs pour ce que je veux faire

 

PS: En réalisant ma fonction de sérialisation, je met la ligne suivante:

set name of {_item} to "%{_name}%"

Pour définir le nom de l'item contenu dans la variable "{_item}". J'ai vérifier et il s'agit de la bonne syntaxe, pourtant j'obtient l'erreur suivante:

Citation

name of {_item} can't be set to anything

Quelqu'un sait comment résoudre le problème?

  • 0
Posté(e) (modifié)

Ta variable {_item} est de type item ?

set name of {_item} parsed as item to {_name}

Quelque chose comme ça devrait passé (logiquement ^^)

 

Ou alors ce que tu voulais faire serait plutôt ceci : ?

set {_name} to the name of {_item}

 

Modifié par WeBer_Le_Pecheur
  • J'aime 1
  • 0
Posté(e)
à l’instant, Spartan9802 a dit :

Bonjour @antoinech,
Qu'elle est ta version de SkQuery ? (/ver SkQuery)

@Spartan9802 J'ai SkQuery version 3.6.0-Lime

 

Le 11/01/2019 à 17:37, WeBer_Le_Pecheur a dit :

Ta variable {_item} est de type item ?


set name of {_item} parsed as item to {_name}

Quelque chose comme ça devrait passé (logiquement ^^)

 

Ou alors ce que tu voulais faire serait plutôt ceci : ?


set {_name} to the name of {_item}

 

J'ai essayé ta première proposition, mais ça ne marche pas, même erreur

  • 0
Posté(e)
il y a 2 minutes, Spartan9802 a dit :

Il y a une erreur quand tu exécute l'effect que tu a cité au début ?

Je viens de re-tester pour voir si ça marche, et miraculeusement je n'ai plus d'erreur! (WTF??)

Du coup je teste de refaire ma fonction et tout ce qui va avec, et si ça fonctionne je passe le sujet en résolu

(Je comprends pas pourquoi la ça marche et pas avant)

 

PS: Est ce que on peut utiliser la même syntaxe mais pour un item seulement (le tool of player par exemple), au lieu de tout l'inventaire?

  • 0
Posté(e)

Hum, j'ai quand même un problème, en fait 2.

Premièrement quand j'utilise ca:

set serialized contents of player's inventory to {inventory}

Ça ne me give absolument rien dans mon inventaire (alors que la variable {inventory} contient le contenu sérialisé.

 

Ensuite j'aimerais seulement give un item, et non remplacer complètement l'inventaire du joueur, je ne sais pas si c'est possible d'un manière ou d'une autre avec cette syntaxe.

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.