diff --git a/language.version b/language.version index 4e434964a..d33a88c1f 100644 --- a/language.version +++ b/language.version @@ -1,3 +1,3 @@ [default] -SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r656 \cu(Thu 1 Dec 09:47:27 CET 2022)\c-"; -SWWM_SHORTVER="\cw1.3pre r656 \cu(2022-12-01 09:47:27)\c-"; +SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r656 \cu(Thu 1 Dec 10:20:49 CET 2022)\c-"; +SWWM_SHORTVER="\cw1.3pre r656 \cu(2022-12-01 10:20:49)\c-"; diff --git a/zscript/hud/swwm_hud.zsc b/zscript/hud/swwm_hud.zsc index c56904342..4d346eb25 100644 --- a/zscript/hud/swwm_hud.zsc +++ b/zscript/hud/swwm_hud.zsc @@ -874,18 +874,21 @@ Class SWWMStatusBar : BaseStatusBar { // ignore outside of levels if ( gamestate != GS_LEVEL ) return false; + int rprintlevel = printlevel&PRINT_TYPES; + // treat any unrecognized levels as critical messages + // note that checking for PRINT_LOG isn't needed as those are skipped early in the C++ side + if ( (rprintlevel < PRINT_LOW) || (rprintlevel > PRINT_TEAMCHAT) ) rprintlevel = PRINT_HIGH; // strip trailing newline (all Printf type messages have this) outline.DeleteLastCharacter(); // append chat messages to full history - if ( (printlevel == PRINT_CHAT) || (printlevel == PRINT_TEAMCHAT) ) - EventHandler.SendNetworkEvent("swwmstoremessage."..outline,level.totaltime,printlevel,consoleplayer); - if ( (printlevel < PRINT_LOW) || (printlevel > PRINT_TEAMCHAT) ) return true; // we couldn't care less about these + if ( (rprintlevel == PRINT_CHAT) || (rprintlevel == PRINT_TEAMCHAT) ) + EventHandler.SendNetworkEvent("swwmstoremessage."..outline,level.totaltime,rprintlevel,consoleplayer); let m = new("MsgLine"); m.str = outline; - m.type = printlevel; + m.type = rprintlevel; m.tic = level.totaltime; m.rep = 1; - if ( printlevel == PRINT_LOW ) + if ( rprintlevel == PRINT_LOW ) { // check if repeated for ( int i=0; i