Timeline

Developer API

타임라인은 org.z2six.rpgtimeline.api.RPGTimelineApi 아래에 공개 API 도우미를 노출합니다.

TLDR

API를 사용하여 다음을 수행합니다.

  • 현재 달력 날짜 읽기/형식 지정
  • 서버/개인 메모 추가
  • 네이티브 발전을 기록하다
  • 외부 승진과 같은 이벤트를 기록합니다.

날짜 도우미

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

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

유용한 방법:

  • getCalendarDefinition()
  • getCalendarDayOffsetDays()
  • fromGameTime(긴 게임타임)
  • formatDate(긴 게임 시간)
  • buildDateMessage(long dayIndex)

프로그래밍 방식으로 메모 추가

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);

기록 발전

기본 발전 개체

Java
RPGTimelineApi.recordAdvancement(player, advancementHolder);

대외진출형 이벤트

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"
);
심층 분석: 세계 최초의 정체성

sourceId는 세계 최초 추적에 사용되는 ID입니다. 성과 개념별로 안정적이고 고유하게 유지하세요.

오류 모델

API 호출은 방어적입니다.

  • 가능한 경우 null 입력은 안전하게 무시됩니다.
  • 호출자 모드 충돌을 방지하기 위해 내부 오류가 기록되고 삼켜집니다.
서버측 사용법

연대기 작성 도우미는 서버 측 컨텍스트(ServerPlayer)에서 호출되어야 합니다.

이 프로젝트 후원

이 위키와 모드가 마음에 드시나요?

여러분의 후원은 기능 개발, 문서 작성, 업데이트 지속에 큰 도움이 됩니다.

맨 위로