Gratis / Open Access
v1.0.0
1.18 - 1.20.x
xSetHome Official
Un sistema de hogares moderno, ligero y altamente visual. Ofrece a tus jugadores la mejor experiencia de gestión de ubicaciones con interfaces dinámicas y efectos inmersivos.
Características Principales
Menú Visual (GUI)
Interfaz limpia para ver y gestionar hogares. Incluye soporte para botones personalizados y cabezas Base64.
Personalización de Iconos
Los jugadores pueden cambiar el icono de su hogar haciendo click derecho con un bloque en la mano dentro del menú.
Seguridad de Teletransporte
Sistema de countdown con cancelación por movimiento, acompañado de títulos, sonidos y partículas.
Instalación Rápida
- Descarga
xSetHome-v1.0.0.jardesde Modrinth. - Colócalo en la carpeta
/plugins/de tu servidor. - Reinicia el servidor para generar los archivos de configuración.
- Personaliza
config.ymlymenu.ymla tu gusto.
Comandos y Permisos
| Comando | Descripción | Permiso |
|---|---|---|
/sethome |
Establece un hogar en tu ubicación actual. | xsethome.use.sethome |
/home |
Teletranspórtate a uno de tus hogares. | xsethome.use.home |
/homes |
Abre la interfaz gráfica (GUI) de hogares. | xsethome.use.homes |
/delhome |
Elimina un hogar guardado. | xsethome.use.delhome |
/xsethome reload |
Recarga las configuraciones del plugin. | xsethome.admin |
Placeholders (PAPI)
%xsethome_count%▸ Cantidad total de hogares del jugador.%xsethome_max%▸ Límite máximo de hogares permitido.%xsethome_▸ Mundo donde se encuentra el hogar._world%
Developer API
Accede a las funciones de xSetHome desde tus propios plugins mediante nuestra API estática.
Acceso API
import es.xplugins.xsethome.api.xSetHomeAPI; // Abrir la interfaz visual programáticamente xSetHomeAPI.openHomeMenu(player); // Obtener el número de homes de un usuario por UUID int homes = xSetHomeAPI.getHomeCount(playerUUID);
Eventos Custom
Listener
@EventHandler public void onHomeTeleport(PlayerHomeTeleportEvent event) { // Ejemplo: Cancelar TP si el jugador está en combate if (CombatAPI.isInCombat(event.getPlayer())) { event.setCancelled(true); } }