Add ZenClient.extractCloudAssets() that copies panel.png, ptr.png,
lie.wav and truth.wav from /assets/zen/cloud_assets/ on the classpath
into ConfigManager.CONFIG_DIR (~/.zen/configs). Existing files are
left untouched so user-replaced assets stick around. Called from
init() right after ConfigManager is constructed, since LieDetector's
TextureUtil/SoundUtil look up these files there.
Co-Authored-By: Claude Opus 4.7 <[email protected]>
- Register HudManager and a fresh IntroAnimation on the event bus
during ZenClient bootstrap so HUDs actually tick and the intro
plays on first launch.
- Strip leftover System.out.println debug breadcrumbs from
NewClickGui, CategoryPanel, ModuleElement and the unused
BUILD_TAG print in ModuleElement.
- Drop the redundant 'initialized' static flag and the stray
NewClickGui instance constructed in the class initializer; the
Lombok @NonNull null check on render() was already enforced, so
the hand-written guard goes too.
- Remove the unused NumberSettingElement.sliderX field.
- Replace Module.getBind() with a Lombok @Getter on the field.
Co-Authored-By: Claude Opus 4.7 <[email protected]>
- Remove unused Encryption class (AES wrapper around shit.zen.utils)
and its construction from ZenClient bootstrap; drop dead TimerPatch
import.
- Defer ConfigManager.loadAll() and CommandManager.initCommands() so
configs load only after modules are registered, fixing values that
were silently discarded.
- Make isOwner() return true so the local user is treated as owner.
- Rename ZenClient.disconnectFromServer() to shutdown() and pin the
MinecraftPatch close hook to At.Type.HEAD so it runs before the
game tears down its subsystems.
- README: invite users to file issues / open PRs for missing features.
Co-Authored-By: Claude Opus 4.7 <[email protected]>