Timeline

Developer API

A linha do tempo expõe auxiliares de API públicos em org.z2six.rpgtimeline.api.RPGTimelineApi.

TLDR

Use a API para:

  • ler/formatar as datas atuais do calendário
  • adicionar servidor/notas pessoais
  • registrar avanços nativos
  • registrar eventos externos semelhantes a avanços

Ajudantes de data

Java
import org.z2six.rpgtimeline.api.RPGTimelineApi;

long gameTime = serverLevel.getDayTime();
String dateText = RPGTimelineApi.buildDateStringFromGameTime(gameTime);
long dayIndex = RPGTimelineApi.getDayIndexForGameTime(gameTime);

Métodos úteis:

  • getCalendarDefinition()
  • getCalendarDayOffsetDays()
  • fromGameTime(long gameTime)
  • formatDate(long gameTime)
  • buildDateMessage(long dayIndex)

Adicionar notas programaticamente

Java
import org.z2six.rpgtimeline.api.RPGTimelineApi;

RPGTimelineApi.addServerNote(player, "Server Arc Begins", "The kingdom enters a new age.");
RPGTimelineApi.addPersonalNote(player, "My Journal", "Reached the obsidian gate.");

// Explicit day index version
RPGTimelineApi.addServerNote(player, "Coronation", "The crown was claimed.", 512L);

Registro de avanços

Objeto de avanço nativo

Java
RPGTimelineApi.recordAdvancement(player, advancementHolder);

Evento semelhante a um avanço externo

Java
import net.minecraft.network.chat.Component;

RPGTimelineApi.recordExternalAdvancement(
    player,
    "mymod:slay_lich",
    Component.literal("Lich Vanquisher"),
    Component.literal("Defeated the Lich beneath the catacombs."),
    "minecraft:nether_star"
);
DEEP DIVE: primeira identidade mundial

sourceId é a identidade usada para rastreamento pioneiro no mundo. Mantenha-o estável e único por conceito de conquista.

Modelo de erro

As chamadas de API são defensivas:

  • entradas nulas são ignoradas com segurança sempre que possível
  • falhas internas são registradas e engolidas para evitar travamento dos mods de chamada
Uso do lado do servidor

Os auxiliares de escrita de crônicas devem ser chamados a partir de contextos do lado do servidor (ServerPlayer).

Apoie este projeto

Gostou desta wiki e destes mods?

Cada apoio ajuda a continuar criando recursos, escrevendo documentacao e lancando atualizacoes.

Voltar ao topo