27a3f34bfa0c657d6369ba203cd115df6396468e
Some checks failed
build / build (push) Has been cancelled
- Block/BE/Item: BaseEntityBlock + useItemOn(InteractionResult), useOn(UseOnContext), setChanged(), loadAdditional(ValueInput) / saveAdditional(ValueOutput) with getStringOr/getIntOr/getBooleanOr/getFloatOr defaults - Registries: BuiltInRegistries + ResourceKey + Properties.setId(ResourceKey) - Networking: CustomPacketPayload.Type + StreamCodec.composite + RegistryFriendlyByteBuf (note: clientboundPlay/serverboundPlay names in fabric-networking-api-v1 6.3.1) - Commands: Commands.literal/argument, CommandSourceStack.sendSuccess/sendFailure, PermissionSet.hasPermission(Permissions.COMMANDS_GAMEMASTER) (level-2 equivalent) - Client GUI: EditBox / Button / Checkbox / AbstractSliderButton + addRenderableWidget (no render override; widgets render themselves under the new pipeline) - Renderer: rewritten as stub against new BlockEntityRenderer<T, S extends BlockEntityRenderState> pattern (createRenderState / extractRenderState / submit). Stub does not draw a quad yet — frame upload and dynamic texture surface deferred until Watermedia/JavaCV are re-audited for Java 25 - Playback: stripped to bookkeeping-only stub (tracks active anchors, no frame pump) - Client entrypoint: ClientTickEvents.END_LEVEL_TICK (was END_WORLD_TICK), Minecraft.level, LocalPlayer, Vec3, InteractionResult ./gradlew build passes against MC 26.1.2 + Fabric Loader 0.19.2 + fabric-api 0.149.0+26.1.2. Block placement, anchor BE, payloads, commands, and GUI are functional; the anchor renders as the plain block until the new render-state pipeline is wired with a texture.
video_player (영상재생모드)
마인크래프트(Fabric, MC 1.21.6+) 안에서 임의의 mp4 URL을 블록 표면에 재생하는 모드.
- 모드 ID:
video_player - 한글명: 영상재생모드
- 로더: Fabric (싱글플레이어 / 전용 서버 양쪽 지원)
- 명세: 별도 SPEC 문서 참조
빌드
JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 ./gradlew build
산출물: build/libs/video_player-<version>.jar
현재 진행도
이 저장소는 SPEC §10 마일스톤을 순차적으로 채우는 중입니다.
- M1 — 스캐폴드 (현재): Fabric 모드 골격, 비디오 앵커 블록/엔티티 등록, 비디오 스틱 아이템,
/videoStick명령. - M2 — 정적 렌더
- M3 — JavaCV mp4 재생
- M4 — GUI / 네트워크
- M5 — 좌클릭 삭제 +
/videoPlace,/videoDelete - M6 — 오디오 + 거리감 + Mute(소리 on/off)
- M7 — WaterMedia 백엔드 + 자동 선택
- M8 — Stonecutter 멀티버전