# Lectern - v1.2.2
## Skybox, Toast Controls, End Beam
### API UPDATES
- **ISkyboxManager** — new. `showSkybox/removeSkybox/clearSkyboxes`. OptiFine-style cube atlas with daytime fade, blend mode, axis rotation.
- **Toast** — full styling controls: text scale, overall scale, max message lines, pop-in/out animation timing, and per-element text alignment (title + message). Chainable `with*` builders. Resending an id updates in place.
- **IUIManager.removeToast** — explicit toast removal by id.
- **ImpactFrame** — `triggerImpactFrame(player)` is arg-free.
### PLUGIN UPDATES
- **Custom Skybox effect** — server-driven cube skybox. Fades by daytime ticks, rotates with the celestial bodies.
- **disable_end_beam** — new toggle that hides the beacon-style beam from End Gateway portals. The portal swirl is left intact.
- **Toast lifecycle** — multi-toast by id with pop-in/out, position interpolation, and alignment anchors.
- **Impact Frame** — single-fire 200ms freeze. Framebuffer capture, entity glow, grayscale quantized-contrast shader for the flat manga look.
- **Spear gating** — `spear_usage=false` blocks all four spear entry points, detected via `#minecraft:spears`.
- **/lectern packet** — subcommands for `toast`, `impact_frame`, `explosion`, `skybox`.
### PLUGIN FIXES
- **`/lectern version` showed `${VERSION}`** — now a Maven-filtered resource.
- **Explosion shockwave one-sided** — ring renders both faces.
- **Debug log noise** — dropped pre-handshake warns and dev stdout spam.
### INTERNAL UPDATES
- Bumped **Lectern-API** + **Lectern-Impl** to `1.2.2`.