Files
Documentation/content/world/entities/inventory/_index.fr.md
2026-01-20 20:33:59 +01:00

1.7 KiB

title, type, weight
title type weight
Inventaire docs 7

Le système d'inventaire dans Hytale gère les objets, conteneurs et inventaires des joueurs.

{{< cards >}} {{< card link="itemstacks" title="ItemStacks" subtitle="Travailler avec les piles d'objets immuables" >}} {{< card link="containers" title="Conteneurs" subtitle="Types d'inventaires et conteneurs" >}} {{< card link="transactions" title="Transactions" subtitle="Modifications sûres des objets" >}} {{< /cards >}}

Aperçu

Le système d'inventaire suit un pattern immuable :

  • ItemStack - Représentation immuable des objets
  • Inventory - Inventaire personnel du joueur
  • ItemContainer - Conteneur générique pour les objets
  • Transactions - Moyen sûr de modifier les objets

Démarrage Rapide

import com.hypixel.hytale.server.core.inventory.Inventory;
import com.hypixel.hytale.server.core.inventory.ItemStack;
import java.util.logging.Level;

// Obtenir l'inventaire du joueur
Player player = ...;
Inventory inv = player.getInventory();

// Obtenir l'objet en main (via Inventory, pas directement sur Player)
ItemStack hand = inv.getItemInHand();

// Vérifier si l'objet existe
if (hand != null && !hand.isEmpty()) {
    // Utiliser getItemId() - Item.getName() n'existe pas
    getLogger().at(Level.INFO).log("Tient : " + hand.getItemId());
}

Concepts Clés

{{< callout type="info" >}} ItemStack est immuable. Les méthodes comme withQuantity() retournent un nouveau ItemStack plutôt que de modifier l'original. {{< /callout >}}

// Pattern immuable
ItemStack original = new ItemStack("iron_sword", 1);
ItemStack modified = original.withQuantity(5);  // Nouvelle instance

// original a toujours une quantité de 1
// modified a une quantité de 5