Aller au contenu
antoinech

résolu Sauvegarde d'un item sous forme de texte (sérialisation)

Messages recommandés

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:

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

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

Partager ce message


Lien à poster
Partager sur d’autres sites

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

Partager ce message


Lien à poster
Partager sur d’autres sites
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

Partager ce message


Lien à poster
Partager sur d’autres sites
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:

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

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?

Partager ce message


Lien à poster
Partager sur d’autres sites

Ta variable {_item} est de type item ?

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

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

 

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

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

 

Modifié par WeBer_Le_Pecheur
  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites
à 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 ?

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

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

 

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

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

 

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

Partager ce message


Lien à poster
Partager sur d’autres sites
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?

Partager ce message


Lien à poster
Partager sur d’autres sites

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

Premièrement quand j'utilise ca:

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Ç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.

Partager ce message


Lien à poster
Partager sur d’autres sites
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.