From 4212ea38c2db7ea0a4791d0a619d6105707e4c2f Mon Sep 17 00:00:00 2001 From: Marisa Kirisame Date: Wed, 5 Aug 2020 12:38:18 +0200 Subject: [PATCH] Also beautify class names in combat trackers (please don't mind the test string). --- language.version | 2 +- zscript/swwm_common.zsc | 15 ++++++++++----- zscript/swwm_menu.zsc | 8 ++++++-- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/language.version b/language.version index cf0ee6b5d..f1a724676 100644 --- a/language.version +++ b/language.version @@ -1,2 +1,2 @@ [default] -SWWM_MODVER="\chSWWM \cwGZ\c- r453 (Wed 5 Aug 12:31:23 CEST 2020)"; +SWWM_MODVER="\chSWWM \cwGZ\c- r454 (Wed 5 Aug 12:38:18 CEST 2020)"; diff --git a/zscript/swwm_common.zsc b/zscript/swwm_common.zsc index e4023107a..8a1fd3307 100644 --- a/zscript/swwm_common.zsc +++ b/zscript/swwm_common.zsc @@ -386,9 +386,9 @@ Class SWWMUtility } // because GetTag() returns the localized string, we need to do things the hard way - static clearscope String GetFunTag( Actor a ) + static clearscope String GetFunTag( Actor a, String defstr = "" ) { - if ( a is 'SWWMMonster' ) return SWWMMonster(a).GetFunTag(); + if ( a is 'SWWMMonster' ) return SWWMMonster(a).GetFunTag(defstr); int ntags = 1; String basetag = ""; switch ( a.GetClassName() ) @@ -566,13 +566,13 @@ Class SWWMUtility basetag = "HERESIARCH"; break; } - if ( basetag == "" ) return a.GetTag(); + if ( basetag == "" ) return a.GetTag(defstr); String funtag = "FN_"..basetag.."_FUN"; String lfuntag = StringTable.Localize(funtag,false); if ( lfuntag != funtag ) return lfuntag; String nfuntag = "FN_"..basetag.."_FUNN"; String lnfuntag = StringTable.Localize(nfuntag,false); - if ( lnfuntag == nfuntag ) return a.GetTag(); + if ( lnfuntag == nfuntag ) return a.GetTag(defstr); ntags = lnfuntag.ToInt(); return StringTable.Localize(String.Format("$FN_%s_FUN%d",basetag,Random[FunTags](1,ntags))); } @@ -1305,7 +1305,12 @@ Class SWWMCombatTracker : Thinker if ( !funtags ) funtags = CVar.GetCVar('swwm_funtags',players[consoleplayer]); if ( mytarget && (mytarget.player || mytarget.bISMONSTER || (mytarget is 'BossBrain')) ) { - String realtag = funtags.GetBool()?SWWMUtility.GetFunTag(mytarget):mytarget.GetTag(); + String realtag = funtags.GetBool()?SWWMUtility.GetFunTag(mytarget,"AWESOME IT'S PENIS"):mytarget.GetTag("AWESOME IT'S PENIS"); + if ( realtag == "AWESOME IT'S PENIS" ) + { + realtag = mytarget.GetClassName(); + SWWMUtility.BeautifyClassName(realtag); + } mytag = mytarget.player?(mytarget.player.mo!=mytarget)?String.Format(StringTable.Localize("$FN_VOODOO"),mytarget.player.GetUserName()):mytarget.player.GetUserName():realtag; } else mytag = ""; diff --git a/zscript/swwm_menu.zsc b/zscript/swwm_menu.zsc index 406534a8b..733b2ba6b 100644 --- a/zscript/swwm_menu.zsc +++ b/zscript/swwm_menu.zsc @@ -2164,9 +2164,13 @@ Class SWWMKnowledgeBaseMenu : GenericMenu for ( int i=ofs; i= 370 ) break; - str = GetDefaultByType(sorted_mstats[i].m).GetTag(); + str = GetDefaultByType(sorted_mstats[i].m).GetTag("AWESOME IT'S PENIS"); // beautify if there's no tag - if ( str == sorted_mstats[i].m.GetClassName() ) SWWMUtility.BeautifyClassName(str); + if ( str == "AWESOME IT'S PENIS" ) + { + str = sorted_mstats[i].m.GetClassName(); + SWWMUtility.BeautifyClassName(str); + } Screen.DrawText(fnt,Font.CR_FIRE,origin.x+xx,origin.y+yy,str,DTA_VirtualWidthF,ss.x,DTA_VirtualHeightF,ss.y,DTA_KeepRatio,true); str = String.Format("%d",sorted_mstats[i].kills); int len = fnt.StringWidth(str);