Skip to content

🏷️ API y Extensión mediante Etiquetas de Datos

📌 Aviso sobre el código fuente del repositorio: La documentación de esta Wiki refleja el estado actual del código fuente en el repositorio, que puede incluir confirmaciones recientes no publicadas o características en desarrollo antes de los lanzamientos públicos en CurseForge y Modrinth.


📦 Etiquetas Orientadas a Datos (Data-Driven)

Los creadores de datapacks y mods pueden personalizar el comportamiento de máquinas y entidades sin necesidad de programar en Java.


1. Etiqueta de Máquinas Aceleradas (#truesleep:accelerated_machines)

  • Ruta del Archivo: data/truesleep/tags/block_entity_type/accelerated_machines.json
  • Propósito: Declara los tipos de entidades de bloque que reciben aceleración multitick.
json
{
  "replace": false,
  "values": [
    "minecraft:furnace",
    "minecraft:blast_furnace",
    "minecraft:smoker",
    "minecraft:brewing_stand",
    "minecraft:campfire",
    "minecraft:soul_campfire",
    "minecraft:beehive",
    "mymod:custom_smelter",
    "mymod:alloy_forge"
  ]
}

2. Etiqueta de Criaturas Trabajadoras (#truesleep:worker_mobs)

  • Ruta del Archivo: data/truesleep/tags/entity_type/worker_mobs.json
  • Propósito: Declara los tipos de entidades gobernados por la GameRule truesleep:freeze_workers en vez de freeze_mobs.
json
{
  "replace": false,
  "values": [
    "minecraft:allay",
    "minecraft:villager",
    "mymod:goblin_trader"
  ]
}

💻 Hooks de Java para Desarrolladores

1. Acceso Estático a TimeWarpManager

java
import net.vanillaoutsider.truesleep.logic.TimeWarpManager;

// Check if world time is currently accelerating
boolean isWarping = TimeWarpManager.get().isWarping();

// Get current time stride multiplier
long stride = TimeWarpManager.get().getStride();

2. Interfaz de Envejecimiento de Efectos de Pociones

java
import net.vanillaoutsider.truesleep.MobEffectInstanceExtensions;

MobEffectInstance effect = mob.getEffect(MobEffects.REGENERATION);
if (effect != null) {
    ((MobEffectInstanceExtensions) effect).truesleep$ageEffect(skipTicks);
}

Official documentation & web portal for Dasik Igaijinn mods.