Aller au contenu principal

MMO Inventory

Vérifie les MMOItems portés dans des emplacements MMOInventory personnalisés, sous forme de fait TypeWriter.

Gratuitesv0.7Intégrations
NécessiteTypeWriter0.9Quest (TypeWriter extension)MMOInventoryMMOItemsMythicLib

Vue d'ensemble​

MMO Inventory connecte MMOInventory à TypeWriter. MMOInventory ajoute des emplacements d'équipement personnalisés (accessoires, capes, artefacts, etc.) qui se trouvent en dehors de l'inventaire vanilla. TypeWriter ne peut pas les voir par lui-même : cette extension comble ce manque.

Elle fournit un unique fact lisible. Ce fact répond à une question : ce joueur détient-il actuellement les MMOItems que vous listez dans l'un de vos inventaires MMOInventory personnalisés ? Vous pouvez ensuite utiliser le fact comme critère dans des dialogues, des quêtes, des audiences ou toute autre entrée qui accepte des critères, par exemple pour débloquer une option de dialogue uniquement pour les joueurs portant un artefact donné.

Seuls les MMOItems sont reconnus. Un objet est identifié par son type et son ID MMOItems, et non par son nom ou son matériau.

Fonctionnalités​

  • Prise en compte des emplacements personnalisés — lit les objets stockés dans un inventaire personnalisé nommé de MMOInventory, et non dans l'inventaire vanilla.
  • Correspondance par type et ID — identifie les MMOItems par leur paire TYPE:ID, par exemple ACCESSORY:RING_OF_FIRE.
  • Quantités d'objets — chaque objet peut exiger une quantité minimale, écrite TYPE:ID:amount.
  • Plusieurs objets à la fois — listez autant d'objets que vous voulez, séparés par des virgules.
  • L'un ou tous — requireAllItems décide si une seule correspondance suffit ou si chaque objet listé est requis.
  • Utilisable comme condition — le fact renvoie 1 ou 0, prêt à servir dans n'importe quel critère.

Installation​

  1. Installez MMOInventory, MMOItems et sa bibliothèque requise MythicLib sur le serveur.
  2. Assurez-vous que l'extension officielle TypeWriter Quest est installée : MMO Inventory en dépend.
  3. Placez le JAR de MMO Inventory dans plugins/Typewriter/extensions/.
  4. Redémarrez le serveur.
  5. Définissez vos inventaires personnalisés dans la configuration de MMOInventory. Le nom que vous donnez à un inventaire à cet endroit est celui que vous utiliserez dans le panel.

Premiers pas​

Débloquez une option de dialogue uniquement pour les joueurs qui portent une bague précise dans l'inventaire accessories :

  1. Dans le panel web TypeWriter, ouvrez une page static et ajoutez une entrée Check Item Fact.
  2. Définissez inventoryName sur le nom de l'inventaire personnalisé dans MMOInventory, par exemple accessories.
  3. Définissez itemsToCheck sur ACCESSORY:RING_OF_FIRE. Pour plusieurs objets, séparez-les par des virgules : ACCESSORY:RING_OF_FIRE, ACCESSORY:AMULET:2.
  4. Laissez requireAllItems désactivé si une seule correspondance suffit, ou activez-le pour exiger chaque objet listé.
  5. Sur l'option de dialogue (ou toute entrée avec des critères), ajoutez un critère qui utilise ce fact avec la valeur 1.
  6. Cliquez sur Publish (Publier) et testez avec un joueur qui a l'objet équipé dans cet inventaire.
Format de itemsToCheck

Chaque jeton est TYPE:ID (quantité 1) ou TYPE:ID:amount. Le type et l'ID ne sont pas sensibles à la casse. Un jeton qui ne respecte pas ce format est ignoré silencieusement ; s'il ne reste aucun jeton valide, le fact renvoie 0.

Fonctionnement​

L'extension lit le plugin MMOInventory à l'exécution. Seuls les objets qui portent des données MMOItems sont comptés, et les piles du même objet sont additionnées avant d'être comparées à la quantité demandée.

Entrées​

1 entrées, générées depuis la source de l'extension.

Faits1

Dépannage​

Le fact vaut toujours 0. L'extension renvoie 0 dès qu'un élément manque : inventoryName ou itemsToCheck vide, plugin MMOInventory non chargé, ou inventaire vide. Vérifiez-les dans cet ordre.

Le journal indique « Inventory 'x' not found ». Le nom dans inventoryName ne correspond à aucun inventaire personnalisé défini dans MMOInventory. Copiez le nom exactement tel qu'il apparaît dans la configuration de MMOInventory.

« Error accessing MMOInventory » apparaît dans la console. L'extension communique avec MMOInventory via son API à l'exécution. Cette erreur signifie que la version installée de MMOInventory n'expose pas les méthodes attendues. Mettez MMOInventory à jour et signalez la stack trace complète si le problème persiste.

Un objet vanilla ou non MMOItems n'est jamais compté. Seuls les objets qui ont un type et un ID MMOItems sont pris en compte. Créez l'objet avec MMOItems, ou utilisez une autre extension pour vérifier d'autres types d'objets.

La vérification réussit avec un seul de mes objets. requireAllItems est désactivé : une seule correspondance suffit donc. Activez-le pour exiger chaque objet de la liste.

Une quantité est ignorée. Vérifiez le format : la quantité doit être la troisième partie du jeton (TYPE:ID:3) et doit être un nombre entier. Un jeton comme TYPE:ID:three est abandonné.