void XonoticPlayerModelSelector_draw(entity me) { float i, n; vector o; if (me.numModels <= 0) { draw_CenterText('0.5 0.5 0', _("<no model found>"), me.realFontSize, '1 1 1', 0.6, FALSE); return; } SUPER(XonoticPlayerModelSelector).draw(me); // draw text on the image, handle \n in the description draw_beginBoldFont(); draw_CenterText('0.5 0 0', me.currentModelTitle, me.realFontSize * (me.titleFontSize / me.fontSize), SKINCOLOR_MODELTITLE, SKINALPHA_MODELTITLE, FALSE); draw_endBoldFont(); o = '0.5 1 0' - eY * me.realFontSize_y * ((n = tokenizebyseparator(me.currentModelDescription, "\n")) + 0.5); for(i = 0; i < n; ++i) { draw_CenterText(o, argv(i), me.realFontSize, '1 1 1', 1, FALSE); o += eY * me.realFontSize_y; } }
void NexuizCreditsList_drawListBoxItem(entity me, float i, vector absSize, float isSelected) { // layout: Ping, Credits name, Map name, NP, TP, MP string s; float theAlpha; vector theColor; s = bufstr_get(me.bufferIndex, i); if(substring(s, 0, 2) == "**") { s = substring(s, 2, strlen(s) - 2); theColor = SKINCOLOR_CREDITS_TITLE; theAlpha = SKINALPHA_CREDITS_TITLE; } else if(substring(s, 0, 1) == "*") { s = substring(s, 1, strlen(s) - 1); theColor = SKINCOLOR_CREDITS_FUNCTION; theAlpha = SKINALPHA_CREDITS_FUNCTION; } else { theColor = SKINCOLOR_CREDITS_PERSON; theAlpha = SKINALPHA_CREDITS_PERSON; } draw_CenterText(me.realUpperMargin * eY + 0.5 * eX, s, me.realFontSize, theColor, theAlpha, 0); }