diff --git a/src/st_stuff.c b/src/st_stuff.c
index 4a9accf0e84612f8498138d117ce532d3c2a0ef2..0c91ad717213e4a152de7954c204e2761149fb97 100644
--- a/src/st_stuff.c
+++ b/src/st_stuff.c
@@ -1967,12 +1967,10 @@ static void ST_overlayDrawer(void)
 	{
 		if (renderisnewtic)
 		{
-			LUA_HUD_ClearDrawList(luahuddrawlist_game);
 			LUAh_GameHUD(stplyr, luahuddrawlist_game);
 		}
-		LUA_HUD_DrawList(luahuddrawlist_game);
 	}
-#endif
+#endif // HAVE_BLUA
 
 	// draw level title Tails
 	if (*mapheaderinfo[gamemap-1]->lvlttl != '\0' && !(hu_showscores && (netgame || multiplayer) && !mapreset)
@@ -2166,6 +2164,12 @@ void ST_Drawer(void)
 
 	if (st_overlay)
 	{
+#ifdef HAVE_BLUA
+		if (renderisnewtic)
+		{
+			LUA_HUD_ClearDrawList(luahuddrawlist_game);
+		}
+#endif // HAVE_BLUA
 		// No deadview!
 		for (i = 0; i <= splitscreen; i++)
 		{
@@ -2173,6 +2177,10 @@ void ST_Drawer(void)
 			ST_overlayDrawer();
 		}
 
+#ifdef HAVE_BLUA
+		LUA_HUD_DrawList(luahuddrawlist_game);
+#endif // HAVE_BLUA
+
 		// draw Midnight Channel's overlay ontop
 		if (mapheaderinfo[gamemap-1]->typeoflevel & TOL_TV)	// Very specific Midnight Channel stuff.
 			ST_MayonakaStatic();