--- title: Entités type: docs weight: 7 --- Les entités sont tous les objets dynamiques dans le monde du jeu - joueurs, créatures, items, et plus. Hytale utilise une architecture Entity Component System (ECS). {{< cards >}} {{< card link="entity-hierarchy" title="Hiérarchie des Entités" subtitle="Entity → LivingEntity → Player" >}} {{< card link="entity-components" title="Composants d'Entité" subtitle="Transform, BoundingBox, et plus" >}} {{< card link="spawning-entities" title="Faire Apparaître des Entités" subtitle="Créer et spawner des entités personnalisées" >}} {{< card link="player-api" title="API Joueur" subtitle="Méthodes et données spécifiques aux joueurs" >}} {{< card link="npc" title="Système NPC" subtitle="IA, navigation, et comportements" >}} {{< card link="spawning" title="Système de Spawning" subtitle="Marqueurs, beacons, et suppression" >}} {{< card link="flocking-behavior" title="Comportement de Groupe" subtitle="Coordination de groupe NPC" >}} {{< card link="mounts" title="Montures" subtitle="Chevaucher entites et vehicules" >}} {{< card link="inventory" title="Inventaire" subtitle="Items, conteneurs et transactions" icon="archive" >}} {{< /cards >}} ## Hiérarchie des Entités ``` Entity ├── LivingEntity │ ├── Player │ └── Creature └── BlockEntity ``` ## Exemple Rapide ```java getEventRegistry().register(PlayerConnectEvent.class, event -> { Player player = event.getPlayer(); if (player != null) { // Obtenir la position via TransformComponent TransformComponent transform = player.getTransformComponent(); Vector3d pos = transform.getPosition(); // Obtenir le monde World world = player.getWorld(); // Envoyer un message (nécessite un objet Message) player.sendMessage(Message.raw("Bienvenue à " + pos.toString())); } }); ``` {{< callout type="info" >}} `event.getPlayer()` peut retourner null si le joueur n'est pas encore complètement chargé. Vérifiez toujours la valeur null. Pour l'accès à la position, `getTransformComponent()` est déprécié - préférez l'accès aux composants ECS dans le nouveau code. {{< /callout >}}