settings live in one registry, and the net drain starts to peel

- the CVars are one engine-side table that outlives every interface reload: a change fires its observer, the eight latched rows wait for RestartGx, and /console gains set, cvar_reset, cvar_default, cvarlist and help (2303)
- every push into the interface runs in one feed phase after the net drain and before the tick, held by a structural test on the built schedule (2304)
- subsystems own their packet handlers, dispatched in packet order; the auction house is the first family out of the 273-arm drain (2305)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
Sam
2026-09-17 16:47:09 +07:00
co-authored by Claude Fable 5.1
parent 6019703a14
commit aa207b4050
117 changed files with 3844 additions and 2067 deletions
+2 -3
View File
@@ -25,7 +25,6 @@ use crate::target::{
go_is_nearest, ring_reaction, Hovered, HoveredObject, GO_FLAG_LOCKED, GO_TYPE_GENERIC,
};
use crate::ui_action::{PlayerActions, Spells};
use crate::ui_script::UiInput;
use crate::ui_unit::{enrich_unit, snapshot, UnitFeed};
pub struct UiTooltipPlugin;
@@ -35,8 +34,8 @@ impl Plugin for UiTooltipPlugin {
app.add_systems(
Update,
(
drive_mouseover_tooltip.in_set(UnitFeed).before(UiInput),
feed_spell_tooltips.in_set(UnitFeed).before(UiInput),
drive_mouseover_tooltip.in_set(UnitFeed),
feed_spell_tooltips.in_set(UnitFeed),
),
);
}