132646f6c3
ci / verify (push) Successful in 48s
Crusenho's Complete UI Essential Pack is CC BY 4.0 -- redistributable and
commercial-friendly, confirmed from the License.txt the pack itself ships --
so unlike the two bdragon packs a subset is committed: twelve PNGs, 48 KB,
under assets/sprites/ui/. Only what is used, because each committed PNG costs
a Godot .import sidecar and a directory nothing references is one nobody
prunes.
UiTheme builds a Theme in code from it -- button states, panels, line edits --
and every screen roots itself through UiTheme.themed_root(). The HUD's bars are
the pack's frame with a tinted fill, drawn as three horizontal slices because
Godot's nine-patch lives on nodes and the HUD is drawn rather than built from
controls. Inventory slots use the pack's slot art at exactly twice the source
size; a non-integer scale on a 1px border reads as a wobble along every edge.
The credits screen is the other half of the request and it is a licence
obligation, not a nicety: two packs are now CC BY, which asks for attribution
"in any reasonable manner", and a markdown file in a source repo is not
reasonable for someone who downloaded a build. Settings -> Credits shows every
source with its terms and a link to the licence text. test_credits.gd asserts
CREDITS.md and docs/ASSETS.md name every entry, so the three cannot drift.
Two things found by actually looking at the screen, which is the point:
- The FIRST version of this styled nothing. A Control inherits its theme from
Control ANCESTORS only, and the chain breaks at the first plain Node or
CanvasLayer -- which is every screen here. get_window().theme set the
property, changed nothing, and read as correct. check.sh, 458 tests and a
clean smoke run all passed with the entire interface unstyled. The theme
test now instantiates every screen and asks what its buttons resolve.
- The settings screen showed Fire bound to the right mouse button, because
the test suite was writing the player's real user://settings.cfg --
rebinding calls save() and nothing had redirected the path. Settings.path
is now redirectable, the fixture points it at a scratch file, and a test
asserts the default is still the player's own.
tools/screenshot.tscn is what found both. It boots the client windowed and
saves the menus, the HUD, settings and credits. Manual, needs a display, and
the only thing in the project that can tell you the interface rendered.
check.sh clean, 460 tests, SMOKE PASS, all four diagnostics green.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
41 lines
946 B
Plaintext
41 lines
946 B
Plaintext
[remap]
|
|
|
|
importer="texture"
|
|
type="CompressedTexture2D"
|
|
uid="uid://bybgrl0ye24w0"
|
|
path="res://.godot/imported/Frame01a.png-626104f1220a56d01a83a690493b113d.ctex"
|
|
metadata={
|
|
"vram_texture": false
|
|
}
|
|
|
|
[deps]
|
|
|
|
source_file="res://assets/sprites/ui/Frame01a.png"
|
|
dest_files=["res://.godot/imported/Frame01a.png-626104f1220a56d01a83a690493b113d.ctex"]
|
|
|
|
[params]
|
|
|
|
compress/mode=0
|
|
compress/high_quality=false
|
|
compress/lossy_quality=0.7
|
|
compress/uastc_level=0
|
|
compress/rdo_quality_loss=0.0
|
|
compress/hdr_compression=1
|
|
compress/normal_map=0
|
|
compress/channel_pack=0
|
|
mipmaps/generate=false
|
|
mipmaps/limit=-1
|
|
roughness/mode=0
|
|
roughness/src_normal=""
|
|
process/channel_remap/red=0
|
|
process/channel_remap/green=1
|
|
process/channel_remap/blue=2
|
|
process/channel_remap/alpha=3
|
|
process/fix_alpha_border=true
|
|
process/premult_alpha=false
|
|
process/normal_map_invert_y=false
|
|
process/hdr_as_srgb=false
|
|
process/hdr_clamp_exposure=false
|
|
process/size_limit=0
|
|
detect_3d/compress_to=1
|