cooldowns survive a relog, the MOTD prints, and lost channels come back

- a cooldown still running when you log out and back in keeps sweeping instead of vanishing, and another character no longer inherits the previous session's cooldowns (2116)
- the server's Welcome and Patch 1.12 lines print at login in system yellow, and a character whose General, Trade and LocalDefense had gone silent for good gets them back at the next login (2119, 2120)
- the stock Interface Options window loads hidden beside ours, so pfUI's options skin finds the real thing; the Auto-join Guild Recruitment Channel row has a real store, and a /reload no longer trips on its camera dropdowns (2115)
- the combat log words a power gain on the display scale, so MikScrollingBattleText shows +1 Rage where it showed +10; a 1.12 predicate answers 1 or nil rather than a Lua boolean, the test ColorPickerPlus makes (2117, 2118)
- a Lua error quotes a program element with a backquote the way 5.0 does, so AceLibrary's argument checks report their caller instead of raising inside the error path (2122)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
Sam
2026-09-11 20:50:37 +07:00
co-authored by Claude Fable 5.1
parent c775181933
commit d49fe51e0e
62 changed files with 2473 additions and 704 deletions
@@ -161,9 +161,15 @@ pub(super) fn install(lua: &Lua) -> mlua::Result<()> {
with_mf(lua, &this, |mf| mf.fading_enabled = on)
})?,
)?;
// 1/nil, the reference's predicate shape — `binding-shapes.tsv` has this row as
// `(nil) | (number)`, like every other 1.12 predicate (decision 2118).
m.set(
"GetFading",
lua.create_function(|lua, this: Table| with_mf(lua, &this, |mf| mf.fading_enabled))?,
lua.create_function(|lua, this: Table| {
with_mf(lua, &this, |mf| {
crate::script::binding_abi::flag(mf.fading_enabled)
})
})?,
)?;
m.set(
"SetTimeVisible",
@@ -219,9 +219,15 @@ pub(super) fn install(lua: &Lua) -> mlua::Result<()> {
with_smf(lua, &this, |smf| smf.fading_enabled = on)
})?,
)?;
// 1/nil, the reference's predicate shape — `binding-shapes.tsv` has this row as
// `(nil) | (number)`, like every other 1.12 predicate (decision 2118).
m.set(
"GetFading",
lua.create_function(|lua, this: Table| with_smf(lua, &this, |smf| smf.fading_enabled))?,
lua.create_function(|lua, this: Table| {
with_smf(lua, &this, |smf| {
crate::script::binding_abi::flag(smf.fading_enabled)
})
})?,
)?;
// The XML attr is `displayDuration`; the Lua accessors call the same field `TimeVisible`
// (msgframe-runtime.md).