🌀Warp

Ce document détaille le système de warps (points de téléportation) du plugin Horizons.

📝 Introduction

La commande /warp permet de créer, gérer et utiliser des points de téléportation (warps) sur le serveur. Le système propose différents types de warps avec diverses options de configuration, coûts et restrictions.

🔑 Permissions

  • horizons.warp.create - Permet de créer des warps

  • horizons.warp.delete - Permet de supprimer des warps

  • horizons.warp.link - Permet de lier des warps staff et joueur

  • horizons.warp.list - Permet d'afficher la liste des warps

  • horizons.warp.setperm - Permet de définir la permission d'accès à un warp

  • horizons.warp.setteam - Permet d'associer un warp à une équipe

  • horizons.warp.settings - Permet de configurer les options avancées d'un warp

  • horizons.warp.info - Permet d'afficher les informations détaillées d'un warp

  • horizons.staff - Permet d'accéder aux warps de type staff et de se téléporter sans délai

📋 Sous-commandes

🚪 Téléportation simple

Syntaxe: /warp <nom>

Description: Se téléporte au warp spécifié si le joueur a les permissions nécessaires et peut en payer le coût.

🆕 create

Syntaxe: /warp create <staff/player> <nom> [permission] [team]

Description: Crée un nouveau warp à la position actuelle.

Paramètres:

  • staff/player - Type de warp (réservé au staff ou accessible aux joueurs)

  • nom - Nom du warp

  • permission - Permission optionnelle requise pour utiliser ce warp

  • team - Équipe optionnelle associée à ce warp

🗑️ delete

Syntaxe: /warp delete <staff/player> <nom>

Description: Supprime un warp existant.

Syntaxe: /warp link <staff_warp> <player_warp>

Description: Lie un warp staff à un warp joueur, permettant des téléportations conditionnelles.

📋 list

Syntaxe: /warp list [page]

Description: Affiche la liste de tous les warps accessibles, paginée si nécessaire.

🔑 setperm

Syntaxe: /warp setperm <warp> <permission>

Description: Définit la permission requise pour utiliser un warp.

🏆 setteam

Syntaxe: /warp setteam <warp> <team>

Description: Associe un warp à une équipe spécifique.

⚙️ settings

Syntaxe: /warp settings <warp> <option> [valeur]

Description: Configure les options avancées d'un warp.

Options disponibles:

  • teleport-delay <secondes> - Délai de téléportation spécifique au warp

  • require-stand-still <true/false> - Nécessite que le joueur reste immobile pendant le délai

  • cancel-on-damage <true/false> - Annule la téléportation si le joueur subit des dégâts

  • cost-points <montant> - Coût en points d'équipe pour utiliser ce warp

  • item-cost <matériel> <quantité> - Objet et quantité requis pour utiliser ce warp

ℹ️ info

Syntaxe: /warp info <warp>

Description: Affiche les informations détaillées sur un warp, y compris son type, ses coûts, ses paramètres de téléportation et ses restrictions d'accès.

🧩 Types de warps

👑 Warps Staff

Les warps de type "staff" sont:

  • Visibles et accessibles uniquement aux joueurs avec la permission horizons.staff

  • Peuvent être liés à des warps joueur

  • Affichés en rouge dans la liste des warps

  • Généralement utilisés pour des zones administratives ou de modération

👤 Warps Joueur

Les warps de type "player" sont:

  • Accessibles par les joueurs selon les permissions et équipes configurées

  • Peuvent être associés à des coûts en points d'équipe ou en objets

  • Affichés en vert dans la liste des warps

  • Utilisés pour les téléportations courantes dans le jeu

💰 Système de coûts

Les warps peuvent être configurés pour exiger différents types de paiement:

📊 Points d'équipe

Un montant prélevé sur le score de l'équipe du joueur. Configurable via:

  • /warp settings <warp> cost-points <montant>

🧰 Objets requis

Des objets spécifiques requis et consommés lors de la téléportation. Configurables via:

  • /warp settings <warp> item-cost <matériel> <quantité>

Si un joueur ne possède pas les ressources nécessaires, un message détaillant ce qui manque sera affiché.

⏱️ Paramètres de téléportation

Chaque warp peut être configuré avec des paramètres spécifiques:

⏳ Délai de téléportation

  • Délai global: Applicable à tous les warps, défini dans la configuration

  • Délai spécifique: Configurable par warp via /warp settings <warp> teleport-delay <secondes>

  • Exemption: Les joueurs avec la permission horizons.staff sont téléportés instantanément

🚫 Restrictions de mouvement

  • Immobilité requise: Option configurable via /warp settings <warp> require-stand-still <true/false>

  • Annulation sur dégâts: Option configurable via /warp settings <warp> cancel-on-damage <true/false>

Les ressources ne sont consommées qu'une fois la téléportation effectuée avec succès.

🔐 Restrictions d'accès

L'accès aux warps peut être restreint par:

  • Type de warp: Les warps staff nécessitent la permission horizons.staff

  • Permission spécifique: Configurable via /warp setperm <warp> <permission>

  • Équipe: Configurable via /warp setteam <warp> <team>

💡 Exemples d'utilisation

Création de warps

# Warp public
/warp create player spawn

# Warp réservé au staff
/warp create staff admin_zone

# Warp avec permission spécifique
/warp create player vip_mine vip.access

# Warp d'équipe
/warp create player base_rouge custom.permission Rouge

Configuration de warps

# Définir un délai de téléportation de 5 secondes
/warp settings spawn teleport-delay 5

# Exiger que le joueur reste immobile pendant la téléportation
/warp settings mine require-stand-still true

# Définir un coût en points d'équipe
/warp settings resource_mine cost-points 50

# Exiger des diamants pour la téléportation
/warp settings diamond_mine item-cost DIAMOND 3

Téléportation

# Téléportation simple
/warp spawn

# Téléportation avec coût
/warp resource_mine
# (Si le joueur n'a pas assez de points)
→ Il vous manque: 20 points

# Téléportation avec délai
/warp mine
→ Téléportation dans 5 secondes...

⚙️ Configuration

Les warps individuels sont stockés dans le fichier warps.yml avec la structure suivante:

warps:
  staff:
    admin_zone:
      location:
        world: world
        x: 100.5
        y: 64.0
        z: 200.5
        yaw: 90.0
        pitch: 0.0
      permission: horizons.admin
      linked_player_warp: prison

  player:
    spawn:
      location:
        world: world
        x: 0.5
        y: 70.0
        z: 0.5
        yaw: 0.0
        pitch: 0.0
      settings:
        teleport-delay: 0
        require-stand-still: false
        cancel-on-damage: false
    
    mine:
      location:
        world: world
        x: 500.5
        y: 40.0
        z: 500.5
        yaw: 0.0
        pitch: 0.0
      settings:
        teleport-delay: 5
        require-stand-still: true
        cancel-on-damage: true
      costs:
        team-points: 10
        items:
          material: IRON_INGOT
          amount: 2
      team: Mineurs
      permission: horizons.mine