Système de Logements
Ce document présente comment configurer et utiliser le système de logements (houses) dans le plugin Horizons.
📂 Structure des Fichiers
Les logements sont gérés via plusieurs fichiers de configuration situés dans le dossier plugins/Horizons/
:
houses.yml
- Stocke les informations sur les maisonsconfig.yml
- Contient les paramètres généraux du système, notamment les formats des panneaux
🏗️ Types de Logements
Types Disponibles
Le plugin supporte deux types de logements :
PLAYER
Maisons appartenant à des joueurs individuels
Points personnels
TEAM
Maisons appartenant à des équipes entières
Points d'équipe
🛠️ Commandes
Le système de logements est géré par la commande principale /house
ou son alias /housing
.
Commandes Disponibles
/house create <nom> <team|player>
Crée une nouvelle maison
horizons.house.create
/house forsale <nom> <prix>
Met une maison en vente
horizons.house.forsale
/house addmember <nom> <joueur>
Ajoute un membre à une maison
Propriétaire
/house removemember <nom> <joueur>
Retire un membre d'une maison
Propriétaire
/house list [page]
Liste toutes les maisons
horizons.house.list
/house delete <nom>
Supprime une maison
horizons.house.delete
/house setsign <nom>
Définit un panneau pour une maison
horizons.house.setsign
/house restrictteam <nom> [équipe|none]
Restreint l'achat d'une maison à une équipe
horizons.house.restrictteam
🔑 Créer une Maison
Pour créer une maison, vous devez d'abord sélectionner une zone avec WorldEdit, puis utiliser la commande /house create
.
Étapes pour créer une maison :
Obtenez l'outil de sélection WorldEdit avec
//wand
Sélectionnez deux points opposés pour définir la zone
Exécutez
/house create <nom> <team|player>
💰 Vente et Achat de Maisons
Mettre une maison en vente
Utilisez la commande /house forsale <nom> <prix>
pour mettre une maison en vente à un prix spécifique.
Acheter une maison
Les joueurs peuvent acheter une maison en cliquant sur un panneau de vente. Notez que:
Pour les maisons de type
PLAYER
, le coût est prélevé des points personnels du joueur ainsi que son équipePour les maisons de type
TEAM
, le coût est prélevé des points de l'équipe du joueur
Restrictions d'achat par équipe
Vous pouvez restreindre l'achat d'une maison à une équipe spécifique :
Pour restreindre :
/house restrictteam <nom> <équipe>
Pour supprimer la restriction :
/house restrictteam <nom> none
Pour vérifier la restriction actuelle :
/house restrictteam <nom>
🚪 Gestion des Membres
Maisons de joueurs
Les propriétaires peuvent ajouter/retirer des membres :
/house addmember <nom> <joueur>
/house removemember <nom> <joueur>
Maisons d'équipe
Pour les maisons d'équipe, tous les membres de l'équipe ont automatiquement accès à la maison.
🪧 Panneaux de Maisons
Les maisons demandent d'avoir des panneaux informatifs qui permettent de les acheter.
Configuration des Panneaux
Utilisez la commande /house setsign <nom>
en visant un panneau pour l'associer à une maison.
Format des Panneaux
Les formats d'affichage des panneaux sont configurables dans config.yml
:
Maisons à vendre
Maisons occupées
Placeholders disponibles
{type}
Type de maison (Équipe/Joueur)
{name}
Nom de la maison
{price}
Prix avec la devise
{owner}
Nom du propriétaire
{team}
Nom de l'équipe (pour les maisons d'équipe)
{team_restriction}
Équipe ayant le droit d'acheter la maison
🔄 Cycle de Vie d'une Maison
Création : Un administrateur crée la maison avec WorldEdit et
/house create
Mise en vente : La maison est mise en vente avec
/house forsale
Achat : Un joueur achète la maison, devenant propriétaire
Utilisation : Le propriétaire peut ajouter des membres
♻️ Rechargement du Système
Le système de maisons peut être rechargé via la commande /horizons reload housing
. Cette commande:
Recharge la configuration
Met à jour toutes les maisons
Actualise les panneaux
📋 Exemple Complet
Création et configuration d'une maison
🛡️ Permissions
horizons.house.create
Permet de créer des maisons
horizons.house.forsale
Permet de mettre des maisons en vente
horizons.house.admin
Accès complet à toutes les commandes principales
horizons.house.delete
Permet de supprimer des maisons
horizons.house.setsign
Permet de configurer des panneaux
horizons.house.breaksign
Permet de casser un panneau d'affichage
horizons.house.restrictteam
Permet de restreindre l'achat à une équipe
🪧horizons.house.help
Permet d'afficher toutes les commandes d'aide
🧠 Concepts Avancés
Interaction avec WorldGuard
Le système de logements utilise WorldGuard pour gérer les régions protégées. Chaque maison est associée à une région WorldGuard portant le préfixe "house_" suivi du nom de la maison.
Intégration avec le Système d'Équipes
Les maisons d'équipe utilisent le système d'équipes du plugin
Le coût des maisons d'équipe est prélevé des points d'équipe
Tous les membres de l'équipe ont accès aux maisons d'équipe
Mise à jour des Panneaux
Les panneaux de maisons sont automatiquement mis à jour :
Lors du chargement du plugin
Lors de la mise en vente d'une maison
Lors de l'achat d'une maison
Lors de la modification des restrictions d'équipe
Protection des Panneaux
Les panneaux associés aux maisons sont protégés contre la destruction par les joueurs non-administrateurs.
Dernière mise à jour