feat(rust): write the recommended PopupNotifications banner (runicnpc 9e, D327, D328) #39
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/9e-popup-banner"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What & why
RunicNPC stage 9e, step 1 (docs/runicnpc/PLAN.md). The 9d player session settled on a PopupNotifications look: a banner across the top of the screen (left 0.15, bottom 0.87, width 0.7, height 0.07, spacing 0.005), no close button, Roboto Condensed Bold at 18, panel transparency 0.8.
install --game rustandupdate --game rustnow write that look toPopupNotifications.jsonin the framework's config directory (oxide/configorcarbon/configs). They write it only where:Versionis ignored and numbers are compared as numbers (D328, all or nothing).A config with any setting changed, or one that does not parse, is kept whole and never merged into. The file always carries PopupNotifications'
Version(the existing file's version is kept), because the plugin resets a config without one to its defaults on load. The plan prints apopup lookrow naming the case.uninstallnever touches the file.New module:
src/rustgame/popup.rs.Docs: RunicGateway/docs PR for 9e step 1 (
rust-link/INSTALL.md,INTEGRATION.md§2.4).How it was tested
cargo fmt --check,cargo clippy --all-targets -- -D warningsandcargo testall pass: 188 tests, 5 of them new inpopup.rs. The new tests cover:12.0 == 12;RUNICGATEWAY_STATE_DIRagainst two scratch server roots. No published bundle carries RunicNPC yet, so for this run only I bypassed the RunicNPC check in the working tree (never committed). Results:updateafter the Carbon font was changed to 14: both configs kept ("Already on bundle — nothing moved").Checklist
AI-assisted contributions (required)
Claude Code (Claude Opus 5.5). I have reviewed and understandevery change, and take responsibility for it. AI-authored commits are
marked with a
Co-Authored-By/Assisted-Bytrailer.License
(GNU GPL v3.0 or later), and I have the right to contribute it.
🤖 Generated with Claude Code
https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY