Files
Documentation/content/advanced/effects/_index.fr.md
2026-01-20 20:33:59 +01:00

3.1 KiB

title, type, weight
title type weight
Effets docs 10

Les effets visuels dans Hytale incluent les particules, les lumières dynamiques et les effets de statut d'entité.

{{< cards >}} {{< card link="particles" title="Particules" subtitle="Générer et configurer les systèmes de particules" >}} {{< card link="dynamic-lights" title="Lumières Dynamiques" subtitle="Effets de lueur sur les entités" >}} {{< card link="entity-effects" title="Effets d'Entité" subtitle="Effets de statut avec visuels" >}} {{< /cards >}}

Aperçu

Hytale fournit trois systèmes d'effets visuels complémentaires :

Système Objectif Cas d'Usage
Particules Atmosphère visuelle et feedback Explosions, traînées, effets ambiants
Lumières Dynamiques Effets de lueur sur les entités Objets lumineux, auras magiques
Effets d'Entité Effets de statut avec visuels Buffs, debuffs, indicateurs de statut

Démarrage Rapide

Générer des Particules

import com.hypixel.hytale.server.core.universe.world.ParticleUtil;

// Générer des particules à une position
ParticleUtil.spawnParticleEffect(
    "explosion_small",           // ID du système de particules
    position,                    // Position Vector3d
    componentAccessor
);

Ajouter une Lumière Dynamique

import com.hypixel.hytale.protocol.ColorLight;
import com.hypixel.hytale.server.core.modules.entity.component.DynamicLight;

// Créer une lumière colorée (rayon, R, V, B)
ColorLight light = new ColorLight(
    (byte) 15,   // Rayon
    (byte) 255,  // Rouge
    (byte) 100,  // Vert
    (byte) 50    // Bleu
);

// Ajouter à l'entité
DynamicLight dynamicLight = new DynamicLight(light);
componentAccessor.putComponent(entityRef, DynamicLight.getComponentType(), dynamicLight);

Appliquer des Effets d'Entité

import com.hypixel.hytale.server.core.entity.effect.EffectControllerComponent;

// Obtenir le contrôleur d'effets
EffectControllerComponent controller = store.getComponent(
    entityRef,
    EffectControllerComponent.getComponentType()
);

// Appliquer l'effet
EntityEffect effect = EntityEffect.getAssetMap().getAsset("fire_resistance");
controller.addEffect(entityRef, effect, componentAccessor);

Classes Principales

Classe Package Objectif
ParticleUtil server.core.universe.world Générer des particules
ParticleSystem asset.type.particle.config Configuration du système
DynamicLight modules.entity.component Effets de lueur d'entité
ColorLight protocol Données couleur/rayon de lumière
EntityEffect asset.type.entityeffect.config Définition d'effet de statut

Considérations Réseau

{{< callout type="info" >}} Détails Réseau :

  • Les particules sont envoyées dans un rayon de 75 blocs par défaut (DEFAULT_PARTICLE_DISTANCE)
  • Les changements de DynamicLight se synchronisent automatiquement quand marqués obsolètes
  • Les effets d'entité se synchronisent via EffectControllerComponent {{< /callout >}}