Bannière de paix
La Bannière de Paix est un objet fabricable qui empêche la conversion naturelle habituelle en élites dans un rayon de chunks configurable. Avec suppressEvents: true, elle supprime aussi les événements d’action et les tentatives d’apparition des événements temporisés gérées par EliteMobs. Elle ne bloque pas tous les boss personnalisés ou régionaux, ne supprime pas les élites existantes et ne protège pas contre tous les mobs.
Fonctionnement
- Fabrication : Les joueurs fabriquent une Bannière de paix avec la recette par défaut (ou une recette personnalisée configurée par l'administrateur). La recette par défaut demande d'entourer d'os une bannière de n'importe quelle couleur.
- Placement : Lorsque la fonctionnalité est activée, placer une Bannière de paix enregistre immédiatement la protection. Le rayon par défaut de 4 couvre un carré de 9×9 chunks centré sur son chunk, à toute hauteur ; ce n'est pas un cercle mesuré depuis le bloc.
- Retrait : Casser le bloc de la Bannière de paix supprime la zone de protection et permet aux mobs d'élite d'apparaître à nouveau dans la zone.
- Persistance : Les Bannières de paix placées sont sauvegardées sur le disque et persistent entre les redémarrages du serveur. Lorsque les chunks contenant une Bannière de paix se chargent, le plugin vérifie que le bloc de la bannière existe toujours et supprime la protection si elle a été détruite par un autre moyen.
Recette de fabrication par défaut
BBB
BWB
BBB
- B = Os (Bone)
- W = N'importe quelle bannière (les 16 couleurs sont acceptées)
La recette produit une bannière bleue avec un motif personnalisé, un nom d'affichage et une description l'identifiant comme une Bannière de paix.
Configuration
Tous les paramètres de la Bannière de paix se trouvent dans PeaceBanner.yml. Consultez la page des paramètres de configuration pour la référence complète.
| Paramètre | Par défaut | Description |
|---|---|---|
enabled | true | Détermine si la fonctionnalité Bannière de paix est activée |
craftable | true | Détermine si les joueurs peuvent fabriquer des Bannières de paix |
chunkRadius | 4 | Rayon en chunks autour d'une bannière placée où l'apparition des mobs d'élite est empêchée |
suppressEvents | true | Détermine si les bannières placées empêchent aussi les événements EliteMobs (événements d'action et temporisés) |
recipeShape | BBB / BWB / BBB | La disposition de la grille de fabrication |
recipeIngredients | B: BONE, W: ANY_BANNER | Associe les caractères de la recette aux matériaux |
itemName | &aPeace Banner | Nom d'affichage de l'objet Bannière de paix |
itemLore | (voir configuration) | Lignes de description affichées sur l'objet |
placedMessage | (voir configuration) | Message envoyé lorsqu'une bannière est placée |
removedMessage | (voir configuration) | Message envoyé lorsqu'une bannière est cassée |
chunkRadius est enregistré lors du placement de chaque bannière et sauvegardé avec elle. Modifier la configuration ne redimensionne pas les bannières existantes, même après redémarrage ; remplacez-les pour utiliser le nouveau rayon. La description par défaut de l'objet contient un 4 littéral qui ne suit pas le rayon, tandis que placedMessage remplace $radius.
enabled: false désactive la suppression des apparitions, le traitement du placement, de la destruction et du chargement, ainsi que la recette de fabrication. Cela ne supprime pas les données sauvegardées et n'interdit pas la commande d'attribution. craftable: false désactive uniquement la recette.
Commandes d'administration
| Commande | Permission | Description |
|---|---|---|
/em peacebanner give <player> | elitemobs.peacebanner.admin | Donne une Bannière de paix à un joueur connecté ; la dépose à sa position si son inventaire est plein |
/em peacebanner list | elitemobs.peacebanner.admin | Liste toutes les Bannières de paix placées avec leurs coordonnées et leur rayon en chunks |
Bannières superposées
Plusieurs Bannières de paix peuvent être placées avec des zones de protection qui se chevauchent. Le système compte les références : un chunk reste protégé tant qu'au moins une bannière le couvre. Retirer une seule bannière ne supprime la protection que des chunks non couverts par une autre bannière.
Détails techniques
- Les nouveaux placements sont identifiés par la balise du conteneur de données persistantes (PDC) de l'objet, et non par son apparence. Une bannière ordinaire placée à un emplacement non enregistré ne crée aucune protection.
- Les données des bannières sont stockées dans
plugins/EliteMobs/data/peace-banners.yml. - Au chargement du chunk, la validation vérifie seulement la présence d'un bloc de bannière à l'emplacement sauvegardé. Elle ne revérifie ni la balise ni le motif de la Bannière de paix. Si le bloc n'est plus une bannière, par exemple après une explosion ou une modification du monde, la protection est retirée à ce moment-là, et non immédiatement lors de la modification externe.
- Les données sauvegardées sont rattachées à l'UUID du monde. Celles d'un monde non chargé pendant l'initialisation d'EliteMobs restent inactives jusqu'au chargement de ce monde, puis leur protection s'active automatiquement. Un autre monde qui réutilise le même nom n'en hérite pas ; EliteMobs enregistre plutôt un avertissement dans la console.