+ width = max_rl_width * 2 + padding * 6 + stringwidth(_("vs"), false, fontsize);
+ pos.x += (panel_size.x - width) * align;
+ duel_title_pos = pos;
+
+ pos.x += padding;
+ if (left_width < right_width)
+ pos.x += (max_rl_width - left_width) * 0.5;
+ drawcolorcodedstring(pos, centerprint_title_left, fontsize, panel_fg_alpha, DRAWFLAG_NORMAL);
+
+ pos.x = duel_title_pos.x + max_rl_width + padding * 3;
+ drawstring(pos, _("vs"), fontsize, '1 1 1', panel_fg_alpha, DRAWFLAG_NORMAL);
+
+ pos.x = duel_title_pos.x + width - padding - max_rl_width;
+ if (left_width >= right_width)
+ pos.x += (max_rl_width - right_width) * 0.5;
+ drawcolorcodedstring(pos, centerprint_title_right, fontsize, panel_fg_alpha, DRAWFLAG_NORMAL);
+ }
+ else
+ {
+ pos.x = panel_pos.x + (panel_size.x - width) * align;
+ drawcolorcodedstring(pos, centerprint_title, fontsize, panel_fg_alpha, DRAWFLAG_NORMAL);
+ }
+
+ if (autocvar_hud_panel_centerprint_flip)
+ pos.y -= cp_fontsize.y * CENTERPRINT_TITLE_SPACING;
+ else
+ pos.y += fontsize.y + (hud_fontsize.y * CENTERPRINT_TITLE_SPACING);
+
+ if (centerprint_title_left != "")
+ {
+ pos.x = duel_title_pos.x;
+ drawfill(pos, vec2(max_rl_width + padding * 2, 1), '1 1 1', panel_fg_alpha, DRAWFLAG_NORMAL);
+ drawfill(pos + vec2(width - max_rl_width - padding * 2, 0), vec2(max_rl_width + padding * 2, 1), '1 1 1', panel_fg_alpha, DRAWFLAG_NORMAL);
+ }
+ else
+ drawfill(pos - eX * padding, vec2(width + 2 * padding, 1), '1 1 1', panel_fg_alpha, DRAWFLAG_NORMAL);
+
+ if (autocvar_hud_panel_centerprint_flip)
+ pos.y -= cp_fontsize.y * CENTERPRINT_TITLE_SPACING;
+ else
+ pos.y += cp_fontsize.y * CENTERPRINT_TITLE_SPACING;
+
+ all_messages_expired = false;
+ }
+
+ for (g=0, i=0, j=cpm_index; i<CENTERPRINT_MAX_MSGS; ++i, ++j)
+ {