Add level-aware builder controls
This commit is contained in:
+42
-6
@@ -62,6 +62,11 @@ from the orange links reserved for SHD navigation and legal resources. Support
|
||||
and legal links form a compact horizontal rail that may wrap at intermediate
|
||||
widths and becomes a two-column touch-friendly grid on narrow mobile screens.
|
||||
|
||||
The footer repeats the complete SHD brand lockup used by the global header:
|
||||
double-ring SHD mark, white `SHD`, orange `.build`, and the restrained
|
||||
`LOADOUT NETWORK` descriptor. Do not substitute a plain text wordmark or color
|
||||
the complete product name orange.
|
||||
|
||||
Contact notifications use the mandatory ISAC visual identity because they are
|
||||
operational inbound messages. The notification carries a concise preview and a
|
||||
specific action to an authorization-checked full record. Full messages never
|
||||
@@ -75,6 +80,38 @@ contact columns stack, destination segments become full-width 44-pixel rows,
|
||||
attestations remain readable, and reply/recovery actions occupy the available
|
||||
width.
|
||||
|
||||
### Builder range controls
|
||||
|
||||
Configurable numeric rolls use the shared range-value control: a descriptive
|
||||
label and current minimum/maximum above a synchronized range slider and direct
|
||||
number input. The slider supports fast exploration while the number field
|
||||
supports exact entry; both clamp to the currently calculated bounds. Focus uses
|
||||
the SHD action border, active slider feedback uses the standard pressed
|
||||
brightness treatment, and number fields retain the global select-all-on-focus
|
||||
behavior.
|
||||
|
||||
When an equipment level changes, preserve the configured roll's relative
|
||||
position within its previous range instead of resetting it arbitrarily. Mark
|
||||
unverified portions of a level curve with both `ESTIMATED` text and the
|
||||
High-end yellow caution treatment. Controls stack the slider and direct input
|
||||
at narrow mobile widths and must never create horizontal page overflow.
|
||||
|
||||
Equipment level uses this same synchronized control rather than a standalone
|
||||
number field. Changing level remaps base and rolled values to the equivalent
|
||||
relative position in the newly calculated range.
|
||||
|
||||
Gear and weapons always expose exactly two required rolled-Attribute positions.
|
||||
Render both positions as persistent numbered rows; do not offer add or remove
|
||||
actions. Already selected Attributes are disabled in the other position.
|
||||
|
||||
Use compact segmented radio controls for the small finite weapon-tier set.
|
||||
Use the shared builder radio grid for visually identified Brand Sets and weapon
|
||||
talents: transparent icons lead each square engineered option, text remains
|
||||
visible, and the selected state uses the orange action edge plus an explicit
|
||||
radio state. Talent grids become searchable when their available pool is large.
|
||||
On narrow viewports option grids reduce to two columns and then one column so
|
||||
labels and 44-pixel-or-larger targets remain usable.
|
||||
|
||||
## Tokens
|
||||
|
||||
The canonical tokens live in `src/app.css` under `:root`.
|
||||
@@ -987,12 +1024,11 @@ the live totals immediately. Trigger-dependent talents remain explicitly
|
||||
effects enter combined totals. This textual distinction must remain clear
|
||||
without relying on color.
|
||||
|
||||
Gear level is builder-instance state, never part of an ISAC Gear definition.
|
||||
Each equipped piece stores its own level from 1–50 in the local or persisted
|
||||
build. Until an authoritative level-scaling curve is represented in game data,
|
||||
the workbench must state that level scaling is neutral rather than silently
|
||||
inventing a formula; base Health and Armor remain constrained by their
|
||||
canonical ranges.
|
||||
Gear and weapon level are builder-instance state, never part of an ISAC item
|
||||
definition. Each equipped item stores its own level from 1–50 in the local or
|
||||
persisted build. Range endpoints are calculated from the documented level
|
||||
curve and stored reference level; provisional portions of that curve must be
|
||||
identified in text as estimated.
|
||||
|
||||
### Registry relationship icon rails
|
||||
|
||||
|
||||
Reference in New Issue
Block a user