- dump entity models straight from the unobfuscated client jar (tools/VanillaModelDump.java, tools/update-vanilla-models.sh): models posed by vanilla setupAnim, baby/variant/layer models, renderer transforms, default textures, pose variants (sitting, holding items, illager arms) and all layer definitions; the old CEM template is only a fallback now - fix adult zombies captured as babies, zero-thickness planes (wings, fins) and back faces in the entity intersector - held items, head items (pumpkins, skulls), shields, elytra, saddles and body equipment for every mount, armor following the pose - block/item/text display entities, dropped items, falling blocks, primed TNT, minecart contents, block entities inside displays, leash ropes - item models resolved from the 26.x item definitions with display transforms; generated items extruded like vanilla - bundle the vanilla font definitions as fallback so sign/text rendering works with packs that lack font/*.json - one failing entity no longer aborts the whole photo - edge-case test plugin (tools/edgecase-plugin) and offline harnesses
19 lines
1016 B
Bash
Executable File
19 lines
1016 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Builds the edge-case test plugin (PPTest.jar) against the compiled PixelPics classes.
|
|
# Usage: ./gradlew compileJava && tools/edgecase-plugin/build.sh <compile-classpath> [out.jar]
|
|
# (classpath = paper-api + its deps, e.g. the Gradle compileClasspath joined with ":")
|
|
# Then drop the jar into the TEST server's plugins/ (never production), start the server and run
|
|
# `pptest all` (or `pptest <scene>`) in its console; renders land in plugins/PPTest/<scene>.png.
|
|
# Scenes are built at world (5000 + i*64, 200, 5000) on stone platforms; see PPTest#onEnable.
|
|
set -euo pipefail
|
|
ROOT="$(cd "$(dirname "$0")/../.." && pwd)"
|
|
API="${1:?compile classpath (paper-api + deps)}"
|
|
OUT="${2:-$ROOT/build/PPTest.jar}"
|
|
JAVAC="${JAVAC:-javac}"
|
|
TMP="$(mktemp -d)"
|
|
trap 'rm -rf "$TMP"' EXIT
|
|
"$JAVAC" -nowarn -d "$TMP" -cp "$ROOT/build/classes/java/main:$API" "$ROOT/tools/edgecase-plugin/pptest/PPTest.java"
|
|
cp "$ROOT/tools/edgecase-plugin/plugin.yml" "$TMP/"
|
|
(cd "$TMP" && zip -q -r "$OUT" .)
|
|
echo "Wrote $OUT"
|