data align 4 LABELV MonthAbbrev address $90 address $91 address $92 address $93 address $94 address $95 address $96 address $97 address $98 address $99 address $100 address $101 align 4 LABELV skillLevels address $102 address $103 address $104 address $105 address $106 lit align 4 LABELV numSkillLevels byte 4 5 data align 4 LABELV netSources address $107 address $108 address $109 address $110 lit align 4 LABELV numNetSources byte 4 4 align 4 LABELV serverFilters address $111 address $112 address $113 address $112 address $114 address $115 address $116 address $117 address $118 address $119 address $120 address $121 address $122 address $123 data align 4 LABELV teamArenaGameTypes address $124 address $125 address $126 address $127 address $128 address $129 address $130 address $131 address $132 lit align 4 LABELV numTeamArenaGameTypes byte 4 9 data align 4 LABELV teamArenaGameNames address $133 address $134 address $135 address $136 address $137 address $138 address $139 address $140 address $141 lit align 4 LABELV numTeamArenaGameNames byte 4 9 align 4 LABELV numServerFilters byte 4 7 data align 4 LABELV sortKeys address $142 address $143 address $144 address $145 address $146 lit align 4 LABELV numSortKeys byte 4 5 data align 4 LABELV netnames address $147 address $148 address $149 byte 4 0 align 1 LABELV quake3worldMessage byte 1 86 byte 1 105 byte 1 115 byte 1 105 byte 1 116 byte 1 32 byte 1 119 byte 1 119 byte 1 119 byte 1 46 byte 1 113 byte 1 117 byte 1 97 byte 1 107 byte 1 101 byte 1 51 byte 1 119 byte 1 111 byte 1 114 byte 1 108 byte 1 100 byte 1 46 byte 1 99 byte 1 111 byte 1 109 byte 1 32 byte 1 45 byte 1 32 byte 1 78 byte 1 101 byte 1 119 byte 1 115 byte 1 44 byte 1 32 byte 1 67 byte 1 111 byte 1 109 byte 1 109 byte 1 117 byte 1 110 byte 1 105 byte 1 116 byte 1 121 byte 1 44 byte 1 32 byte 1 69 byte 1 118 byte 1 101 byte 1 110 byte 1 116 byte 1 115 byte 1 44 byte 1 32 byte 1 70 byte 1 105 byte 1 108 byte 1 101 byte 1 115 byte 1 0 align 4 LABELV gamecodetoui byte 4 4 byte 4 2 byte 4 3 byte 4 0 byte 4 5 byte 4 1 byte 4 6 align 4 LABELV uitogamecode byte 4 4 byte 4 6 byte 4 2 byte 4 3 byte 4 1 byte 4 5 byte 4 7 export vmMain code proc vmMain 12 8 file "../ui_main.c" line 148 ;1:// Copyright (C) 1999-2000 Id Software, Inc. ;2:// ;3:/* ;4:======================================================================= ;5: ;6:USER INTERFACE MAIN ;7: ;8:======================================================================= ;9:*/ ;10: ;11:// use this to get a demo build without an explicit demo build, i.e. to get the demo ui files to build ;12://#define PRE_RELEASE_TADEMO ;13: ;14:#include "ui_local.h" ;15: ;16:uiInfo_t uiInfo; ;17: ;18:static const char *MonthAbbrev[] = { ;19: "Jan","Feb","Mar", ;20: "Apr","May","Jun", ;21: "Jul","Aug","Sep", ;22: "Oct","Nov","Dec" ;23:}; ;24: ;25: ;26:static const char *skillLevels[] = { ;27: "I Can Win", ;28: "Bring It On", ;29: "Hurt Me Plenty", ;30: "Hardcore", ;31: "Nightmare" ;32:}; ;33: ;34:static const int numSkillLevels = sizeof(skillLevels) / sizeof(const char*); ;35: ;36: ;37:static const char *netSources[] = { ;38: "Local", ;39: "Mplayer", ;40: "Internet", ;41: "Favorites" ;42:}; ;43:static const int numNetSources = sizeof(netSources) / sizeof(const char*); ;44: ;45:static const serverFilter_t serverFilters[] = { ;46: {"All", "" }, ;47: {"Quake 3 Arena", "" }, ;48: {"Team Arena", "missionpack" }, ;49: {"Rocket Arena", "arena" }, ;50: {"Alliance", "alliance20" }, ;51: {"Weapons Factory Arena", "wfa" }, ;52: {"OSP", "osp" }, ;53:}; ;54: ;55:static const char *teamArenaGameTypes[] = { ;56: "FFA", ;57: "TOURNAMENT", ;58: "SP", ;59: "TEAM DM", ;60: "CTF", ;61: "1FCTF", ;62: "OVERLOAD", ;63: "HARVESTER", ;64: "TEAMTOURNAMENT" ;65:}; ;66: ;67:static int const numTeamArenaGameTypes = sizeof(teamArenaGameTypes) / sizeof(const char*); ;68: ;69: ;70:static const char *teamArenaGameNames[] = { ;71: "Free For All", ;72: "Tournament", ;73: "Single Player", ;74: "Team Deathmatch", ;75: "Capture the Flag", ;76: "One Flag CTF", ;77: "Overload", ;78: "Harvester", ;79: "Team Tournament", ;80:}; ;81: ;82:static int const numTeamArenaGameNames = sizeof(teamArenaGameNames) / sizeof(const char*); ;83: ;84: ;85:static const int numServerFilters = sizeof(serverFilters) / sizeof(serverFilter_t); ;86: ;87:static const char *sortKeys[] = { ;88: "Server Name", ;89: "Map Name", ;90: "Open Player Spots", ;91: "Game Type", ;92: "Ping Time" ;93:}; ;94:static const int numSortKeys = sizeof(sortKeys) / sizeof(const char*); ;95: ;96:static char* netnames[] = { ;97: "???", ;98: "UDP", ;99: "IPX", ;100: NULL ;101:}; ;102: ;103:#ifndef MISSIONPACK // bk001206 ;104:static char quake3worldMessage[] = "Visit www.quake3world.com - News, Community, Events, Files"; ;105:#endif ;106: ;107:static int gamecodetoui[] = {4,2,3,0,5,1,6}; ;108:static int uitogamecode[] = {4,6,2,3,1,5,7}; ;109: ;110: ;111:static void UI_StartServerRefresh(qboolean full); ;112:static void UI_StopServerRefresh( void ); ;113:static void UI_DoServerRefresh( void ); ;114:static void UI_FeederSelection(float feederID, int index); ;115:static void UI_BuildServerDisplayList(qboolean force); ;116:static void UI_BuildServerStatus(qboolean force); ;117:static void UI_BuildFindPlayerList(qboolean force); ;118:static int QDECL UI_ServersQsortCompare( const void *arg1, const void *arg2 ); ;119:static int UI_MapCountByGameType(qboolean singlePlayer); ;120:static int UI_HeadCountByTeam( void ); ;121:static void UI_ParseGameInfo(const char *teamFile); ;122:static void UI_ParseTeamInfo(const char *teamFile); ;123:static const char *UI_SelectedMap(int index, int *actual); ;124:static const char *UI_SelectedHead(int index, int *actual); ;125:static int UI_GetIndexFromSelection(int actual); ;126: ;127:int ProcessNewUI( int command, int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6 ); ;128: ;129:/* ;130:================ ;131:vmMain ;132: ;133:This is the only way control passes into the module. ;134:This must be the very first function compiled into the .qvm file ;135:================ ;136:*/ ;137:vmCvar_t ui_new; ;138:vmCvar_t ui_debug; ;139:vmCvar_t ui_initialized; ;140:vmCvar_t ui_teamArenaFirstRun; ;141: ;142:void _UI_Init( qboolean ); ;143:void _UI_Shutdown( void ); ;144:void _UI_KeyEvent( int key, qboolean down ); ;145:void _UI_MouseEvent( int dx, int dy ); ;146:void _UI_Refresh( int realtime ); ;147:qboolean _UI_IsFullscreen( void ); ;148:int vmMain( int command, int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, int arg8, int arg9, int arg10, int arg11 ) { line 149 ;149: switch ( command ) { ADDRLP4 0 ADDRFP4 0 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $151 ADDRLP4 0 INDIRI4 CNSTI4 10 GTI4 $151 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $164 ADDP4 INDIRP4 JUMPV lit align 4 LABELV $164 address $153 address $154 address $155 address $156 address $157 address $158 address $159 address $160 address $161 address $162 address $163 code LABELV $153 line 151 ;150: case UI_GETAPIVERSION: ;151: return UI_API_VERSION; CNSTI4 6 RETI4 ADDRGP4 $150 JUMPV LABELV $154 line 154 ;152: ;153: case UI_INIT: ;154: _UI_Init(arg0); ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 _UI_Init CALLV pop line 155 ;155: return 0; CNSTI4 0 RETI4 ADDRGP4 $150 JUMPV LABELV $155 line 158 ;156: ;157: case UI_SHUTDOWN: ;158: _UI_Shutdown(); ADDRGP4 _UI_Shutdown CALLV pop line 159 ;159: return 0; CNSTI4 0 RETI4 ADDRGP4 $150 JUMPV LABELV $156 line 162 ;160: ;161: case UI_KEY_EVENT: ;162: _UI_KeyEvent( arg0, arg1 ); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRI4 ARGI4 ADDRGP4 _UI_KeyEvent CALLV pop line 163 ;163: return 0; CNSTI4 0 RETI4 ADDRGP4 $150 JUMPV LABELV $157 line 166 ;164: ;165: case UI_MOUSE_EVENT: ;166: _UI_MouseEvent( arg0, arg1 ); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRI4 ARGI4 ADDRGP4 _UI_MouseEvent CALLV pop line 167 ;167: return 0; CNSTI4 0 RETI4 ADDRGP4 $150 JUMPV LABELV $158 line 170 ;168: ;169: case UI_REFRESH: ;170: _UI_Refresh( arg0 ); ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 _UI_Refresh CALLV pop line 171 ;171: return 0; CNSTI4 0 RETI4 ADDRGP4 $150 JUMPV LABELV $159 line 174 ;172: ;173: case UI_IS_FULLSCREEN: ;174: return _UI_IsFullscreen(); ADDRLP4 4 ADDRGP4 _UI_IsFullscreen CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 RETI4 ADDRGP4 $150 JUMPV LABELV $160 line 177 ;175: ;176: case UI_SET_ACTIVE_MENU: ;177: _UI_SetActiveMenu( arg0 ); ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 _UI_SetActiveMenu CALLV pop line 178 ;178: return 0; CNSTI4 0 RETI4 ADDRGP4 $150 JUMPV LABELV $161 line 181 ;179: ;180: case UI_CONSOLE_COMMAND: ;181: return UI_ConsoleCommand(arg0); ADDRFP4 4 INDIRI4 ARGI4 ADDRLP4 8 ADDRGP4 UI_ConsoleCommand CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 RETI4 ADDRGP4 $150 JUMPV LABELV $162 line 184 ;182: ;183: case UI_DRAW_CONNECT_SCREEN: ;184: UI_DrawConnectScreen( arg0 ); ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 UI_DrawConnectScreen CALLV pop line 185 ;185: return 0; CNSTI4 0 RETI4 ADDRGP4 $150 JUMPV LABELV $163 line 187 ;186: case UI_HASUNIQUECDKEY: // mod authors need to observe this ;187: return qtrue; // bk010117 - change this to qfalse for mods! CNSTI4 1 RETI4 ADDRGP4 $150 JUMPV LABELV $151 line 191 ;188: ;189: } ;190: ;191: return -1; CNSTI4 -1 RETI4 LABELV $150 endproc vmMain 12 8 export AssetCache proc AssetCache 84 8 line 196 ;192:} ;193: ;194: ;195: ;196:void AssetCache() { line 202 ;197: int n; ;198: //if (Assets.textFont == NULL) { ;199: //} ;200: //Assets.background = trap_R_RegisterShaderNoMip( ASSET_BACKGROUND ); ;201: //Com_Printf("Menu Size: %i bytes\n", sizeof(Menus)); ;202: uiInfo.uiDC.Assets.gradientBar = trap_R_RegisterShaderNoMip( ASSET_GRADIENTBAR ); ADDRGP4 $168 ARGP4 ADDRLP4 4 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61660 ADDRLP4 4 INDIRI4 ASGNI4 line 203 ;203: uiInfo.uiDC.Assets.fxBasePic = trap_R_RegisterShaderNoMip( ART_FX_BASE ); ADDRGP4 $171 ARGP4 ADDRLP4 8 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61768 ADDRLP4 8 INDIRI4 ASGNI4 line 204 ;204: uiInfo.uiDC.Assets.fxPic[0] = trap_R_RegisterShaderNoMip( ART_FX_RED ); ADDRGP4 $174 ARGP4 ADDRLP4 12 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61772 ADDRLP4 12 INDIRI4 ASGNI4 line 205 ;205: uiInfo.uiDC.Assets.fxPic[1] = trap_R_RegisterShaderNoMip( ART_FX_YELLOW ); ADDRGP4 $178 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61772+4 ADDRLP4 16 INDIRI4 ASGNI4 line 206 ;206: uiInfo.uiDC.Assets.fxPic[2] = trap_R_RegisterShaderNoMip( ART_FX_GREEN ); ADDRGP4 $182 ARGP4 ADDRLP4 20 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61772+8 ADDRLP4 20 INDIRI4 ASGNI4 line 207 ;207: uiInfo.uiDC.Assets.fxPic[3] = trap_R_RegisterShaderNoMip( ART_FX_TEAL ); ADDRGP4 $186 ARGP4 ADDRLP4 24 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61772+12 ADDRLP4 24 INDIRI4 ASGNI4 line 208 ;208: uiInfo.uiDC.Assets.fxPic[4] = trap_R_RegisterShaderNoMip( ART_FX_BLUE ); ADDRGP4 $190 ARGP4 ADDRLP4 28 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61772+16 ADDRLP4 28 INDIRI4 ASGNI4 line 209 ;209: uiInfo.uiDC.Assets.fxPic[5] = trap_R_RegisterShaderNoMip( ART_FX_CYAN ); ADDRGP4 $194 ARGP4 ADDRLP4 32 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61772+20 ADDRLP4 32 INDIRI4 ASGNI4 line 210 ;210: uiInfo.uiDC.Assets.fxPic[6] = trap_R_RegisterShaderNoMip( ART_FX_WHITE ); ADDRGP4 $198 ARGP4 ADDRLP4 36 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61772+24 ADDRLP4 36 INDIRI4 ASGNI4 line 211 ;211: uiInfo.uiDC.Assets.scrollBar = trap_R_RegisterShaderNoMip( ASSET_SCROLLBAR ); ADDRGP4 $201 ARGP4 ADDRLP4 40 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61680 ADDRLP4 40 INDIRI4 ASGNI4 line 212 ;212: uiInfo.uiDC.Assets.scrollBarArrowDown = trap_R_RegisterShaderNoMip( ASSET_SCROLLBAR_ARROWDOWN ); ADDRGP4 $204 ARGP4 ADDRLP4 44 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61668 ADDRLP4 44 INDIRI4 ASGNI4 line 213 ;213: uiInfo.uiDC.Assets.scrollBarArrowUp = trap_R_RegisterShaderNoMip( ASSET_SCROLLBAR_ARROWUP ); ADDRGP4 $207 ARGP4 ADDRLP4 48 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61664 ADDRLP4 48 INDIRI4 ASGNI4 line 214 ;214: uiInfo.uiDC.Assets.scrollBarArrowLeft = trap_R_RegisterShaderNoMip( ASSET_SCROLLBAR_ARROWLEFT ); ADDRGP4 $210 ARGP4 ADDRLP4 52 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61672 ADDRLP4 52 INDIRI4 ASGNI4 line 215 ;215: uiInfo.uiDC.Assets.scrollBarArrowRight = trap_R_RegisterShaderNoMip( ASSET_SCROLLBAR_ARROWRIGHT ); ADDRGP4 $213 ARGP4 ADDRLP4 56 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61676 ADDRLP4 56 INDIRI4 ASGNI4 line 216 ;216: uiInfo.uiDC.Assets.scrollBarThumb = trap_R_RegisterShaderNoMip( ASSET_SCROLL_THUMB ); ADDRGP4 $216 ARGP4 ADDRLP4 60 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61684 ADDRLP4 60 INDIRI4 ASGNI4 line 217 ;217: uiInfo.uiDC.Assets.sliderBar = trap_R_RegisterShaderNoMip( ASSET_SLIDER_BAR ); ADDRGP4 $219 ARGP4 ADDRLP4 64 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61700 ADDRLP4 64 INDIRI4 ASGNI4 line 218 ;218: uiInfo.uiDC.Assets.sliderThumb = trap_R_RegisterShaderNoMip( ASSET_SLIDER_THUMB ); ADDRGP4 $222 ARGP4 ADDRLP4 68 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61704 ADDRLP4 68 INDIRI4 ASGNI4 line 220 ;219: ;220: for( n = 0; n < NUM_CROSSHAIRS; n++ ) { ADDRLP4 0 CNSTI4 0 ASGNI4 LABELV $223 line 221 ;221: uiInfo.uiDC.Assets.crosshairShader[n] = trap_R_RegisterShaderNoMip( va("gfx/2d/crosshair%c", 'a' + n ) ); ADDRGP4 $229 ARGP4 ADDRLP4 0 INDIRI4 CNSTI4 97 ADDI4 ARGI4 ADDRLP4 76 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 76 INDIRP4 ARGP4 ADDRLP4 80 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+228+61800 ADDP4 ADDRLP4 80 INDIRI4 ASGNI4 line 222 ;222: } LABELV $224 line 220 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 10 LTI4 $223 line 224 ;223: ;224: uiInfo.newHighScoreSound = trap_S_RegisterSound("sound/feedback/voc_newhighscore.wav", qfalse); ADDRGP4 $231 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 72 ADDRGP4 trap_S_RegisterSound CALLI4 ASGNI4 ADDRGP4 uiInfo+119484 ADDRLP4 72 INDIRI4 ASGNI4 line 225 ;225:} LABELV $165 endproc AssetCache 84 8 export _UI_DrawSides proc _UI_DrawSides 12 36 line 227 ;226: ;227:void _UI_DrawSides(float x, float y, float w, float h, float size) { line 228 ;228: UI_AdjustFrom640( &x, &y, &w, &h ); ADDRFP4 0 ARGP4 ADDRFP4 4 ARGP4 ADDRFP4 8 ARGP4 ADDRFP4 12 ARGP4 ADDRGP4 UI_AdjustFrom640 CALLV pop line 229 ;229: size *= uiInfo.uiDC.xscale; ADDRFP4 16 ADDRFP4 16 INDIRF4 ADDRGP4 uiInfo+200 INDIRF4 MULF4 ASGNF4 line 230 ;230: trap_R_DrawStretchPic( x, y, size, h, 0, 0, 0, 0, uiInfo.uiDC.whiteShader ); ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 16 INDIRF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRLP4 0 CNSTF4 0 ASGNF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRGP4 uiInfo+73400 INDIRI4 ARGI4 ADDRGP4 trap_R_DrawStretchPic CALLV pop line 231 ;231: trap_R_DrawStretchPic( x + w - size, y, size, h, 0, 0, 0, 0, uiInfo.uiDC.whiteShader ); ADDRLP4 4 ADDRFP4 16 INDIRF4 ASGNF4 ADDRFP4 0 INDIRF4 ADDRFP4 8 INDIRF4 ADDF4 ADDRLP4 4 INDIRF4 SUBF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRLP4 4 INDIRF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRLP4 8 CNSTF4 0 ASGNF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRGP4 uiInfo+73400 INDIRI4 ARGI4 ADDRGP4 trap_R_DrawStretchPic CALLV pop line 232 ;232:} LABELV $232 endproc _UI_DrawSides 12 36 export _UI_DrawTopBottom proc _UI_DrawTopBottom 12 36 line 234 ;233: ;234:void _UI_DrawTopBottom(float x, float y, float w, float h, float size) { line 235 ;235: UI_AdjustFrom640( &x, &y, &w, &h ); ADDRFP4 0 ARGP4 ADDRFP4 4 ARGP4 ADDRFP4 8 ARGP4 ADDRFP4 12 ARGP4 ADDRGP4 UI_AdjustFrom640 CALLV pop line 236 ;236: size *= uiInfo.uiDC.yscale; ADDRFP4 16 ADDRFP4 16 INDIRF4 ADDRGP4 uiInfo+196 INDIRF4 MULF4 ASGNF4 line 237 ;237: trap_R_DrawStretchPic( x, y, w, size, 0, 0, 0, 0, uiInfo.uiDC.whiteShader ); ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 ARGF4 ADDRFP4 16 INDIRF4 ARGF4 ADDRLP4 0 CNSTF4 0 ASGNF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRGP4 uiInfo+73400 INDIRI4 ARGI4 ADDRGP4 trap_R_DrawStretchPic CALLV pop line 238 ;238: trap_R_DrawStretchPic( x, y + h - size, w, size, 0, 0, 0, 0, uiInfo.uiDC.whiteShader ); ADDRFP4 0 INDIRF4 ARGF4 ADDRLP4 4 ADDRFP4 16 INDIRF4 ASGNF4 ADDRFP4 4 INDIRF4 ADDRFP4 12 INDIRF4 ADDF4 ADDRLP4 4 INDIRF4 SUBF4 ARGF4 ADDRFP4 8 INDIRF4 ARGF4 ADDRLP4 4 INDIRF4 ARGF4 ADDRLP4 8 CNSTF4 0 ASGNF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRGP4 uiInfo+73400 INDIRI4 ARGI4 ADDRGP4 trap_R_DrawStretchPic CALLV pop line 239 ;239:} LABELV $236 endproc _UI_DrawTopBottom 12 36 export _UI_DrawRect proc _UI_DrawRect 0 20 line 247 ;240:/* ;241:================ ;242:UI_DrawRect ;243: ;244:Coordinates are 640*480 virtual values ;245:================= ;246:*/ ;247:void _UI_DrawRect( float x, float y, float width, float height, float size, const float *color ) { line 248 ;248: trap_R_SetColor( color ); ADDRFP4 20 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 250 ;249: ;250: _UI_DrawTopBottom(x, y, width, height, size); ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRFP4 16 INDIRF4 ARGF4 ADDRGP4 _UI_DrawTopBottom CALLV pop line 251 ;251: _UI_DrawSides(x, y, width, height, size); ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRFP4 16 INDIRF4 ARGF4 ADDRGP4 _UI_DrawSides CALLV pop line 253 ;252: ;253: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 254 ;254:} LABELV $240 endproc _UI_DrawRect 0 20 export Text_Width proc Text_Width 48 4 line 259 ;255: ;256: ;257: ;258: ;259:int Text_Width(const char *text, float scale, int limit) { line 267 ;260: int count,len; ;261: float out; ;262: glyphInfo_t *glyph; ;263: float useScale; ;264:// TTimo: FIXME: use const unsigned char to avoid getting a warning in linux debug (.so) when using glyph = &font->glyphs[*s]; ;265:// but use const char to build with lcc.. ;266:// const unsigned char *s = text; // bk001206 - unsigned ;267: const char *s = text; ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 line 268 ;268: fontInfo_t *font = &uiInfo.uiDC.Assets.textFont; ADDRLP4 12 ADDRGP4 uiInfo+228+12 ASGNP4 line 269 ;269: if (scale <= ui_smallFont.value) { ADDRFP4 4 INDIRF4 ADDRGP4 ui_smallFont+8 INDIRF4 GTF4 $244 line 270 ;270: font = &uiInfo.uiDC.Assets.smallFont; ADDRLP4 12 ADDRGP4 uiInfo+228+20560 ASGNP4 line 271 ;271: } else if (scale >= ui_bigFont.value) { ADDRGP4 $245 JUMPV LABELV $244 ADDRFP4 4 INDIRF4 ADDRGP4 ui_bigFont+8 INDIRF4 LTF4 $249 line 272 ;272: font = &uiInfo.uiDC.Assets.bigFont; ADDRLP4 12 ADDRGP4 uiInfo+228+41108 ASGNP4 line 273 ;273: } LABELV $249 LABELV $245 line 274 ;274: useScale = scale * font->glyphScale; ADDRLP4 24 ADDRFP4 4 INDIRF4 ADDRLP4 12 INDIRP4 CNSTI4 20480 ADDP4 INDIRF4 MULF4 ASGNF4 line 275 ;275: out = 0; ADDRLP4 20 CNSTF4 0 ASGNF4 line 276 ;276: if (text) { ADDRFP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $254 line 277 ;277: len = strlen(text); ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 8 ADDRLP4 28 INDIRI4 ASGNI4 line 278 ;278: if (limit > 0 && len > limit) { ADDRLP4 32 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 LEI4 $256 ADDRLP4 8 INDIRI4 ADDRLP4 32 INDIRI4 LEI4 $256 line 279 ;279: len = limit; ADDRLP4 8 ADDRFP4 8 INDIRI4 ASGNI4 line 280 ;280: } LABELV $256 line 281 ;281: count = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRGP4 $259 JUMPV LABELV $258 line 282 ;282: while (s && *s && count < len) { line 283 ;283: if ( Q_IsColorString(s) ) { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $261 ADDRLP4 40 CNSTI4 94 ASGNI4 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 ADDRLP4 40 INDIRI4 NEI4 $261 ADDRLP4 44 ADDRLP4 0 INDIRP4 CNSTI4 1 ADDP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 44 INDIRI4 CNSTI4 0 EQI4 $261 ADDRLP4 44 INDIRI4 ADDRLP4 40 INDIRI4 EQI4 $261 line 284 ;284: s += 2; ADDRLP4 0 ADDRLP4 0 INDIRP4 CNSTI4 2 ADDP4 ASGNP4 line 285 ;285: continue; ADDRGP4 $259 JUMPV LABELV $261 line 286 ;286: } else { line 287 ;287: glyph = &font->glyphs[(int)*s]; // TTimo: FIXME: getting nasty warnings without the cast, hopefully this doesn't break the VM build ADDRLP4 16 CNSTI4 80 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 MULI4 ADDRLP4 12 INDIRP4 ADDP4 ASGNP4 line 288 ;288: out += glyph->xSkip; ADDRLP4 20 ADDRLP4 20 INDIRF4 ADDRLP4 16 INDIRP4 CNSTI4 16 ADDP4 INDIRI4 CVIF4 4 ADDF4 ASGNF4 line 289 ;289: s++; ADDRLP4 0 ADDRLP4 0 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 line 290 ;290: count++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 291 ;291: } line 292 ;292: } LABELV $259 line 282 ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $264 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $264 ADDRLP4 4 INDIRI4 ADDRLP4 8 INDIRI4 LTI4 $258 LABELV $264 line 293 ;293: } LABELV $254 line 294 ;294: return out * useScale; ADDRLP4 20 INDIRF4 ADDRLP4 24 INDIRF4 MULF4 CVFI4 4 RETI4 LABELV $241 endproc Text_Width 48 4 export Text_Height proc Text_Height 48 4 line 297 ;295:} ;296: ;297:int Text_Height(const char *text, float scale, int limit) { line 304 ;298: int len, count; ;299: float max; ;300: glyphInfo_t *glyph; ;301: float useScale; ;302:// TTimo: FIXME ;303:// const unsigned char *s = text; // bk001206 - unsigned ;304: const char *s = text; // bk001206 - unsigned ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 line 305 ;305: fontInfo_t *font = &uiInfo.uiDC.Assets.textFont; ADDRLP4 20 ADDRGP4 uiInfo+228+12 ASGNP4 line 306 ;306: if (scale <= ui_smallFont.value) { ADDRFP4 4 INDIRF4 ADDRGP4 ui_smallFont+8 INDIRF4 GTF4 $268 line 307 ;307: font = &uiInfo.uiDC.Assets.smallFont; ADDRLP4 20 ADDRGP4 uiInfo+228+20560 ASGNP4 line 308 ;308: } else if (scale >= ui_bigFont.value) { ADDRGP4 $269 JUMPV LABELV $268 ADDRFP4 4 INDIRF4 ADDRGP4 ui_bigFont+8 INDIRF4 LTF4 $273 line 309 ;309: font = &uiInfo.uiDC.Assets.bigFont; ADDRLP4 20 ADDRGP4 uiInfo+228+41108 ASGNP4 line 310 ;310: } LABELV $273 LABELV $269 line 311 ;311: useScale = scale * font->glyphScale; ADDRLP4 24 ADDRFP4 4 INDIRF4 ADDRLP4 20 INDIRP4 CNSTI4 20480 ADDP4 INDIRF4 MULF4 ASGNF4 line 312 ;312: max = 0; ADDRLP4 16 CNSTF4 0 ASGNF4 line 313 ;313: if (text) { ADDRFP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $278 line 314 ;314: len = strlen(text); ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 8 ADDRLP4 28 INDIRI4 ASGNI4 line 315 ;315: if (limit > 0 && len > limit) { ADDRLP4 32 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 LEI4 $280 ADDRLP4 8 INDIRI4 ADDRLP4 32 INDIRI4 LEI4 $280 line 316 ;316: len = limit; ADDRLP4 8 ADDRFP4 8 INDIRI4 ASGNI4 line 317 ;317: } LABELV $280 line 318 ;318: count = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRGP4 $283 JUMPV LABELV $282 line 319 ;319: while (s && *s && count < len) { line 320 ;320: if ( Q_IsColorString(s) ) { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $285 ADDRLP4 40 CNSTI4 94 ASGNI4 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 ADDRLP4 40 INDIRI4 NEI4 $285 ADDRLP4 44 ADDRLP4 0 INDIRP4 CNSTI4 1 ADDP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 44 INDIRI4 CNSTI4 0 EQI4 $285 ADDRLP4 44 INDIRI4 ADDRLP4 40 INDIRI4 EQI4 $285 line 321 ;321: s += 2; ADDRLP4 0 ADDRLP4 0 INDIRP4 CNSTI4 2 ADDP4 ASGNP4 line 322 ;322: continue; ADDRGP4 $283 JUMPV LABELV $285 line 323 ;323: } else { line 324 ;324: glyph = &font->glyphs[(int)*s]; // TTimo: FIXME: getting nasty warnings without the cast, hopefully this doesn't break the VM build ADDRLP4 12 CNSTI4 80 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 MULI4 ADDRLP4 20 INDIRP4 ADDP4 ASGNP4 line 325 ;325: if (max < glyph->height) { ADDRLP4 16 INDIRF4 ADDRLP4 12 INDIRP4 INDIRI4 CVIF4 4 GEF4 $287 line 326 ;326: max = glyph->height; ADDRLP4 16 ADDRLP4 12 INDIRP4 INDIRI4 CVIF4 4 ASGNF4 line 327 ;327: } LABELV $287 line 328 ;328: s++; ADDRLP4 0 ADDRLP4 0 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 line 329 ;329: count++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 330 ;330: } line 331 ;331: } LABELV $283 line 319 ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $290 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $290 ADDRLP4 4 INDIRI4 ADDRLP4 8 INDIRI4 LTI4 $282 LABELV $290 line 332 ;332: } LABELV $278 line 333 ;333: return max * useScale; ADDRLP4 16 INDIRF4 ADDRLP4 24 INDIRF4 MULF4 CVFI4 4 RETI4 LABELV $265 endproc Text_Height 48 4 export Text_PaintChar proc Text_PaintChar 8 36 line 336 ;334:} ;335: ;336:void Text_PaintChar(float x, float y, float width, float height, float scale, float s, float t, float s2, float t2, qhandle_t hShader) { line 338 ;337: float w, h; ;338: w = width * scale; ADDRLP4 0 ADDRFP4 8 INDIRF4 ADDRFP4 16 INDIRF4 MULF4 ASGNF4 line 339 ;339: h = height * scale; ADDRLP4 4 ADDRFP4 12 INDIRF4 ADDRFP4 16 INDIRF4 MULF4 ASGNF4 line 340 ;340: UI_AdjustFrom640( &x, &y, &w, &h ); ADDRFP4 0 ARGP4 ADDRFP4 4 ARGP4 ADDRLP4 0 ARGP4 ADDRLP4 4 ARGP4 ADDRGP4 UI_AdjustFrom640 CALLV pop line 341 ;341: trap_R_DrawStretchPic( x, y, w, h, s, t, s2, t2, hShader ); ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRLP4 0 INDIRF4 ARGF4 ADDRLP4 4 INDIRF4 ARGF4 ADDRFP4 20 INDIRF4 ARGF4 ADDRFP4 24 INDIRF4 ARGF4 ADDRFP4 28 INDIRF4 ARGF4 ADDRFP4 32 INDIRF4 ARGF4 ADDRFP4 36 INDIRI4 ARGI4 ADDRGP4 trap_R_DrawStretchPic CALLV pop line 342 ;342:} LABELV $291 endproc Text_PaintChar 8 36 export Text_Paint proc Text_Paint 84 40 line 344 ;343: ;344:void Text_Paint(float x, float y, float scale, vec4_t color, const char *text, float adjust, int limit, int style) { line 349 ;345: int len, count; ;346: vec4_t newColor; ;347: glyphInfo_t *glyph; ;348: float useScale; ;349: fontInfo_t *font = &uiInfo.uiDC.Assets.textFont; ADDRLP4 28 ADDRGP4 uiInfo+228+12 ASGNP4 line 350 ;350: if (scale <= ui_smallFont.value) { ADDRFP4 8 INDIRF4 ADDRGP4 ui_smallFont+8 INDIRF4 GTF4 $295 line 351 ;351: font = &uiInfo.uiDC.Assets.smallFont; ADDRLP4 28 ADDRGP4 uiInfo+228+20560 ASGNP4 line 352 ;352: } else if (scale >= ui_bigFont.value) { ADDRGP4 $296 JUMPV LABELV $295 ADDRFP4 8 INDIRF4 ADDRGP4 ui_bigFont+8 INDIRF4 LTF4 $300 line 353 ;353: font = &uiInfo.uiDC.Assets.bigFont; ADDRLP4 28 ADDRGP4 uiInfo+228+41108 ASGNP4 line 354 ;354: } LABELV $300 LABELV $296 line 355 ;355: useScale = scale * font->glyphScale; ADDRLP4 20 ADDRFP4 8 INDIRF4 ADDRLP4 28 INDIRP4 CNSTI4 20480 ADDP4 INDIRF4 MULF4 ASGNF4 line 356 ;356: if (text) { ADDRFP4 16 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $305 line 359 ;357:// TTimo: FIXME ;358:// const unsigned char *s = text; // bk001206 - unsigned ;359: const char *s = text; // bk001206 - unsigned ADDRLP4 36 ADDRFP4 16 INDIRP4 ASGNP4 line 360 ;360: trap_R_SetColor( color ); ADDRFP4 12 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 361 ;361: memcpy(&newColor[0], &color[0], sizeof(vec4_t)); ADDRLP4 4 ARGP4 ADDRFP4 12 INDIRP4 ARGP4 CNSTI4 16 ARGI4 ADDRGP4 memcpy CALLP4 pop line 362 ;362: len = strlen(text); ADDRFP4 16 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 32 ADDRLP4 40 INDIRI4 ASGNI4 line 363 ;363: if (limit > 0 && len > limit) { ADDRLP4 44 ADDRFP4 24 INDIRI4 ASGNI4 ADDRLP4 44 INDIRI4 CNSTI4 0 LEI4 $307 ADDRLP4 32 INDIRI4 ADDRLP4 44 INDIRI4 LEI4 $307 line 364 ;364: len = limit; ADDRLP4 32 ADDRFP4 24 INDIRI4 ASGNI4 line 365 ;365: } LABELV $307 line 366 ;366: count = 0; ADDRLP4 24 CNSTI4 0 ASGNI4 ADDRGP4 $310 JUMPV LABELV $309 line 367 ;367: while (s && *s && count < len) { line 368 ;368: glyph = &font->glyphs[(int)*s]; // TTimo: FIXME: getting nasty warnings without the cast, hopefully this doesn't break the VM build ADDRLP4 0 CNSTI4 80 ADDRLP4 36 INDIRP4 INDIRI1 CVII4 1 MULI4 ADDRLP4 28 INDIRP4 ADDP4 ASGNP4 line 371 ;369: //int yadj = Assets.textFont.glyphs[text[i]].bottom + Assets.textFont.glyphs[text[i]].top; ;370: //float yadj = scale * (Assets.textFont.glyphs[text[i]].imageHeight - Assets.textFont.glyphs[text[i]].height); ;371: if ( Q_IsColorString( s ) ) { ADDRLP4 36 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $312 ADDRLP4 52 CNSTI4 94 ASGNI4 ADDRLP4 36 INDIRP4 INDIRI1 CVII4 1 ADDRLP4 52 INDIRI4 NEI4 $312 ADDRLP4 56 ADDRLP4 36 INDIRP4 CNSTI4 1 ADDP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 56 INDIRI4 CNSTI4 0 EQI4 $312 ADDRLP4 56 INDIRI4 ADDRLP4 52 INDIRI4 EQI4 $312 line 372 ;372: memcpy( newColor, g_color_table[ColorIndex(*(s+1))], sizeof( newColor ) ); ADDRLP4 4 ARGP4 ADDRLP4 36 INDIRP4 CNSTI4 1 ADDP4 INDIRI1 CVII4 1 CNSTI4 48 SUBI4 CNSTI4 7 BANDI4 CNSTI4 4 LSHI4 ADDRGP4 g_color_table ADDP4 ARGP4 CNSTI4 16 ARGI4 ADDRGP4 memcpy CALLP4 pop line 373 ;373: newColor[3] = color[3]; ADDRLP4 4+12 ADDRFP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ASGNF4 line 374 ;374: trap_R_SetColor( newColor ); ADDRLP4 4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 375 ;375: s += 2; ADDRLP4 36 ADDRLP4 36 INDIRP4 CNSTI4 2 ADDP4 ASGNP4 line 376 ;376: continue; ADDRGP4 $310 JUMPV LABELV $312 line 377 ;377: } else { line 378 ;378: float yadj = useScale * glyph->top; ADDRLP4 60 ADDRLP4 20 INDIRF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRI4 CVIF4 4 MULF4 ASGNF4 line 379 ;379: if (style == ITEM_TEXTSTYLE_SHADOWED || style == ITEM_TEXTSTYLE_SHADOWEDMORE) { ADDRLP4 64 ADDRFP4 28 INDIRI4 ASGNI4 ADDRLP4 64 INDIRI4 CNSTI4 3 EQI4 $317 ADDRLP4 64 INDIRI4 CNSTI4 6 NEI4 $315 LABELV $317 line 380 ;380: int ofs = style == ITEM_TEXTSTYLE_SHADOWED ? 1 : 2; ADDRFP4 28 INDIRI4 CNSTI4 3 NEI4 $319 ADDRLP4 72 CNSTI4 1 ASGNI4 ADDRGP4 $320 JUMPV LABELV $319 ADDRLP4 72 CNSTI4 2 ASGNI4 LABELV $320 ADDRLP4 68 ADDRLP4 72 INDIRI4 ASGNI4 line 381 ;381: colorBlack[3] = newColor[3]; ADDRGP4 colorBlack+12 ADDRLP4 4+12 INDIRF4 ASGNF4 line 382 ;382: trap_R_SetColor( colorBlack ); ADDRGP4 colorBlack ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 383 ;383: Text_PaintChar(x + ofs, y - yadj + ofs, ADDRLP4 76 ADDRLP4 68 INDIRI4 CVIF4 4 ASGNF4 ADDRFP4 0 INDIRF4 ADDRLP4 76 INDIRF4 ADDF4 ARGF4 ADDRFP4 4 INDIRF4 ADDRLP4 60 INDIRF4 SUBF4 ADDRLP4 76 INDIRF4 ADDF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 20 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 24 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 20 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 28 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 32 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 36 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 40 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 44 ADDP4 INDIRI4 ARGI4 ADDRGP4 Text_PaintChar CALLV pop line 392 ;384: glyph->imageWidth, ;385: glyph->imageHeight, ;386: useScale, ;387: glyph->s, ;388: glyph->t, ;389: glyph->s2, ;390: glyph->t2, ;391: glyph->glyph); ;392: trap_R_SetColor( newColor ); ADDRLP4 4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 393 ;393: colorBlack[3] = 1.0; ADDRGP4 colorBlack+12 CNSTF4 1065353216 ASGNF4 line 394 ;394: } LABELV $315 line 395 ;395: Text_PaintChar(x, y - yadj, ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ADDRLP4 60 INDIRF4 SUBF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 20 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 24 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 20 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 28 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 32 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 36 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 40 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 44 ADDP4 INDIRI4 ARGI4 ADDRGP4 Text_PaintChar CALLV pop line 405 ;396: glyph->imageWidth, ;397: glyph->imageHeight, ;398: useScale, ;399: glyph->s, ;400: glyph->t, ;401: glyph->s2, ;402: glyph->t2, ;403: glyph->glyph); ;404: ;405: x += (glyph->xSkip * useScale) + adjust; ADDRFP4 0 ADDRFP4 0 INDIRF4 ADDRLP4 0 INDIRP4 CNSTI4 16 ADDP4 INDIRI4 CVIF4 4 ADDRLP4 20 INDIRF4 MULF4 ADDRFP4 20 INDIRF4 ADDF4 ADDF4 ASGNF4 line 406 ;406: s++; ADDRLP4 36 ADDRLP4 36 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 line 407 ;407: count++; ADDRLP4 24 ADDRLP4 24 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 408 ;408: } line 409 ;409: } LABELV $310 line 367 ADDRLP4 36 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $325 ADDRLP4 36 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $325 ADDRLP4 24 INDIRI4 ADDRLP4 32 INDIRI4 LTI4 $309 LABELV $325 line 410 ;410: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 411 ;411: } LABELV $305 line 412 ;412:} LABELV $292 endproc Text_Paint 84 40 export Text_PaintWithCursor proc Text_PaintWithCursor 88 40 ADDRFP4 24 ADDRFP4 24 INDIRI4 CVII1 4 ASGNI1 line 414 ;413: ;414:void Text_PaintWithCursor(float x, float y, float scale, vec4_t color, const char *text, int cursorPos, char cursor, int limit, int style) { line 420 ;415: int len, count; ;416: vec4_t newColor; ;417: glyphInfo_t *glyph, *glyph2; ;418: float yadj; ;419: float useScale; ;420: fontInfo_t *font = &uiInfo.uiDC.Assets.textFont; ADDRLP4 36 ADDRGP4 uiInfo+228+12 ASGNP4 line 421 ;421: if (scale <= ui_smallFont.value) { ADDRFP4 8 INDIRF4 ADDRGP4 ui_smallFont+8 INDIRF4 GTF4 $329 line 422 ;422: font = &uiInfo.uiDC.Assets.smallFont; ADDRLP4 36 ADDRGP4 uiInfo+228+20560 ASGNP4 line 423 ;423: } else if (scale >= ui_bigFont.value) { ADDRGP4 $330 JUMPV LABELV $329 ADDRFP4 8 INDIRF4 ADDRGP4 ui_bigFont+8 INDIRF4 LTF4 $334 line 424 ;424: font = &uiInfo.uiDC.Assets.bigFont; ADDRLP4 36 ADDRGP4 uiInfo+228+41108 ASGNP4 line 425 ;425: } LABELV $334 LABELV $330 line 426 ;426: useScale = scale * font->glyphScale; ADDRLP4 4 ADDRFP4 8 INDIRF4 ADDRLP4 36 INDIRP4 CNSTI4 20480 ADDP4 INDIRF4 MULF4 ASGNF4 line 427 ;427: if (text) { ADDRFP4 16 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $339 line 430 ;428:// TTimo: FIXME ;429:// const unsigned char *s = text; // bk001206 - unsigned ;430: const char *s = text; // bk001206 - unsigned ADDRLP4 44 ADDRFP4 16 INDIRP4 ASGNP4 line 431 ;431: trap_R_SetColor( color ); ADDRFP4 12 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 432 ;432: memcpy(&newColor[0], &color[0], sizeof(vec4_t)); ADDRLP4 12 ARGP4 ADDRFP4 12 INDIRP4 ARGP4 CNSTI4 16 ARGI4 ADDRGP4 memcpy CALLP4 pop line 433 ;433: len = strlen(text); ADDRFP4 16 INDIRP4 ARGP4 ADDRLP4 48 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 40 ADDRLP4 48 INDIRI4 ASGNI4 line 434 ;434: if (limit > 0 && len > limit) { ADDRLP4 52 ADDRFP4 28 INDIRI4 ASGNI4 ADDRLP4 52 INDIRI4 CNSTI4 0 LEI4 $341 ADDRLP4 40 INDIRI4 ADDRLP4 52 INDIRI4 LEI4 $341 line 435 ;435: len = limit; ADDRLP4 40 ADDRFP4 28 INDIRI4 ASGNI4 line 436 ;436: } LABELV $341 line 437 ;437: count = 0; ADDRLP4 28 CNSTI4 0 ASGNI4 line 438 ;438: glyph2 = &font->glyphs[ (int) cursor]; // bk001206 - possible signed char ADDRLP4 8 CNSTI4 80 ADDRFP4 24 INDIRI1 CVII4 1 MULI4 ADDRLP4 36 INDIRP4 ADDP4 ASGNP4 ADDRGP4 $344 JUMPV LABELV $343 line 439 ;439: while (s && *s && count < len) { line 440 ;440: glyph = &font->glyphs[(int)*s]; // TTimo: FIXME: getting nasty warnings without the cast, hopefully this doesn't break the VM build ADDRLP4 0 CNSTI4 80 ADDRLP4 44 INDIRP4 INDIRI1 CVII4 1 MULI4 ADDRLP4 36 INDIRP4 ADDP4 ASGNP4 line 443 ;441: //int yadj = Assets.textFont.glyphs[text[i]].bottom + Assets.textFont.glyphs[text[i]].top; ;442: //float yadj = scale * (Assets.textFont.glyphs[text[i]].imageHeight - Assets.textFont.glyphs[text[i]].height); ;443: if ( Q_IsColorString( s ) ) { ADDRLP4 44 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $346 ADDRLP4 60 CNSTI4 94 ASGNI4 ADDRLP4 44 INDIRP4 INDIRI1 CVII4 1 ADDRLP4 60 INDIRI4 NEI4 $346 ADDRLP4 64 ADDRLP4 44 INDIRP4 CNSTI4 1 ADDP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 64 INDIRI4 CNSTI4 0 EQI4 $346 ADDRLP4 64 INDIRI4 ADDRLP4 60 INDIRI4 EQI4 $346 line 444 ;444: memcpy( newColor, g_color_table[ColorIndex(*(s+1))], sizeof( newColor ) ); ADDRLP4 12 ARGP4 ADDRLP4 44 INDIRP4 CNSTI4 1 ADDP4 INDIRI1 CVII4 1 CNSTI4 48 SUBI4 CNSTI4 7 BANDI4 CNSTI4 4 LSHI4 ADDRGP4 g_color_table ADDP4 ARGP4 CNSTI4 16 ARGI4 ADDRGP4 memcpy CALLP4 pop line 445 ;445: newColor[3] = color[3]; ADDRLP4 12+12 ADDRFP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ASGNF4 line 446 ;446: trap_R_SetColor( newColor ); ADDRLP4 12 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 447 ;447: s += 2; ADDRLP4 44 ADDRLP4 44 INDIRP4 CNSTI4 2 ADDP4 ASGNP4 line 448 ;448: continue; ADDRGP4 $344 JUMPV LABELV $346 line 449 ;449: } else { line 450 ;450: yadj = useScale * glyph->top; ADDRLP4 32 ADDRLP4 4 INDIRF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRI4 CVIF4 4 MULF4 ASGNF4 line 451 ;451: if (style == ITEM_TEXTSTYLE_SHADOWED || style == ITEM_TEXTSTYLE_SHADOWEDMORE) { ADDRLP4 68 ADDRFP4 32 INDIRI4 ASGNI4 ADDRLP4 68 INDIRI4 CNSTI4 3 EQI4 $351 ADDRLP4 68 INDIRI4 CNSTI4 6 NEI4 $349 LABELV $351 line 452 ;452: int ofs = style == ITEM_TEXTSTYLE_SHADOWED ? 1 : 2; ADDRFP4 32 INDIRI4 CNSTI4 3 NEI4 $353 ADDRLP4 76 CNSTI4 1 ASGNI4 ADDRGP4 $354 JUMPV LABELV $353 ADDRLP4 76 CNSTI4 2 ASGNI4 LABELV $354 ADDRLP4 72 ADDRLP4 76 INDIRI4 ASGNI4 line 453 ;453: colorBlack[3] = newColor[3]; ADDRGP4 colorBlack+12 ADDRLP4 12+12 INDIRF4 ASGNF4 line 454 ;454: trap_R_SetColor( colorBlack ); ADDRGP4 colorBlack ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 455 ;455: Text_PaintChar(x + ofs, y - yadj + ofs, ADDRLP4 80 ADDRLP4 72 INDIRI4 CVIF4 4 ASGNF4 ADDRFP4 0 INDIRF4 ADDRLP4 80 INDIRF4 ADDF4 ARGF4 ADDRFP4 4 INDIRF4 ADDRLP4 32 INDIRF4 SUBF4 ADDRLP4 80 INDIRF4 ADDF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 20 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 24 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 28 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 32 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 36 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 40 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 44 ADDP4 INDIRI4 ARGI4 ADDRGP4 Text_PaintChar CALLV pop line 464 ;456: glyph->imageWidth, ;457: glyph->imageHeight, ;458: useScale, ;459: glyph->s, ;460: glyph->t, ;461: glyph->s2, ;462: glyph->t2, ;463: glyph->glyph); ;464: colorBlack[3] = 1.0; ADDRGP4 colorBlack+12 CNSTF4 1065353216 ASGNF4 line 465 ;465: trap_R_SetColor( newColor ); ADDRLP4 12 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 466 ;466: } LABELV $349 line 467 ;467: Text_PaintChar(x, y - yadj, ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ADDRLP4 32 INDIRF4 SUBF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 20 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 24 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 28 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 32 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 36 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 40 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 44 ADDP4 INDIRI4 ARGI4 ADDRGP4 Text_PaintChar CALLV pop line 478 ;468: glyph->imageWidth, ;469: glyph->imageHeight, ;470: useScale, ;471: glyph->s, ;472: glyph->t, ;473: glyph->s2, ;474: glyph->t2, ;475: glyph->glyph); ;476: ;477: // CG_DrawPic(x, y - yadj, scale * uiDC.Assets.textFont.glyphs[text[i]].imageWidth, scale * uiDC.Assets.textFont.glyphs[text[i]].imageHeight, uiDC.Assets.textFont.glyphs[text[i]].glyph); ;478: yadj = useScale * glyph2->top; ADDRLP4 32 ADDRLP4 4 INDIRF4 ADDRLP4 8 INDIRP4 CNSTI4 4 ADDP4 INDIRI4 CVIF4 4 MULF4 ASGNF4 line 479 ;479: if (count == cursorPos && !((uiInfo.uiDC.realTime/BLINK_DIVISOR) & 1)) { ADDRLP4 28 INDIRI4 ADDRFP4 20 INDIRI4 NEI4 $358 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 200 DIVI4 CNSTI4 1 BANDI4 CNSTI4 0 NEI4 $358 line 480 ;480: Text_PaintChar(x, y - yadj, ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ADDRLP4 32 INDIRF4 SUBF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 20 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 24 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 28 ADDP4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 32 ADDP4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 36 ADDP4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 40 ADDP4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 44 ADDP4 INDIRI4 ARGI4 ADDRGP4 Text_PaintChar CALLV pop line 489 ;481: glyph2->imageWidth, ;482: glyph2->imageHeight, ;483: useScale, ;484: glyph2->s, ;485: glyph2->t, ;486: glyph2->s2, ;487: glyph2->t2, ;488: glyph2->glyph); ;489: } LABELV $358 line 491 ;490: ;491: x += (glyph->xSkip * useScale); ADDRFP4 0 ADDRFP4 0 INDIRF4 ADDRLP4 0 INDIRP4 CNSTI4 16 ADDP4 INDIRI4 CVIF4 4 ADDRLP4 4 INDIRF4 MULF4 ADDF4 ASGNF4 line 492 ;492: s++; ADDRLP4 44 ADDRLP4 44 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 line 493 ;493: count++; ADDRLP4 28 ADDRLP4 28 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 494 ;494: } line 495 ;495: } LABELV $344 line 439 ADDRLP4 44 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $362 ADDRLP4 44 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $362 ADDRLP4 28 INDIRI4 ADDRLP4 40 INDIRI4 LTI4 $343 LABELV $362 line 497 ;496: // need to paint cursor at end of text ;497: if (cursorPos == len && !((uiInfo.uiDC.realTime/BLINK_DIVISOR) & 1)) { ADDRFP4 20 INDIRI4 ADDRLP4 40 INDIRI4 NEI4 $363 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 200 DIVI4 CNSTI4 1 BANDI4 CNSTI4 0 NEI4 $363 line 498 ;498: yadj = useScale * glyph2->top; ADDRLP4 32 ADDRLP4 4 INDIRF4 ADDRLP4 8 INDIRP4 CNSTI4 4 ADDP4 INDIRI4 CVIF4 4 MULF4 ASGNF4 line 499 ;499: Text_PaintChar(x, y - yadj, ADDRFP4 0 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ADDRLP4 32 INDIRF4 SUBF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 20 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 24 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 28 ADDP4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 32 ADDP4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 36 ADDP4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 40 ADDP4 INDIRF4 ARGF4 ADDRLP4 8 INDIRP4 CNSTI4 44 ADDP4 INDIRI4 ARGI4 ADDRGP4 Text_PaintChar CALLV pop line 509 ;500: glyph2->imageWidth, ;501: glyph2->imageHeight, ;502: useScale, ;503: glyph2->s, ;504: glyph2->t, ;505: glyph2->s2, ;506: glyph2->t2, ;507: glyph2->glyph); ;508: ;509: } LABELV $363 line 512 ;510: ;511: ;512: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 513 ;513: } LABELV $339 line 514 ;514:} LABELV $326 endproc Text_PaintWithCursor 88 40 proc Text_Paint_Limit 76 40 line 517 ;515: ;516: ;517:static void Text_Paint_Limit(float *maxX, float x, float y, float scale, vec4_t color, const char* text, float adjust, int limit) { line 521 ;518: int len, count; ;519: vec4_t newColor; ;520: glyphInfo_t *glyph; ;521: if (text) { ADDRFP4 20 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $367 line 524 ;522:// TTimo: FIXME ;523:// const unsigned char *s = text; // bk001206 - unsigned ;524: const char *s = text; // bk001206 - unsigned ADDRLP4 28 ADDRFP4 20 INDIRP4 ASGNP4 line 525 ;525: float max = *maxX; ADDRLP4 40 ADDRFP4 0 INDIRP4 INDIRF4 ASGNF4 line 527 ;526: float useScale; ;527: fontInfo_t *font = &uiInfo.uiDC.Assets.textFont; ADDRLP4 36 ADDRGP4 uiInfo+228+12 ASGNP4 line 528 ;528: if (scale <= ui_smallFont.value) { ADDRFP4 12 INDIRF4 ADDRGP4 ui_smallFont+8 INDIRF4 GTF4 $371 line 529 ;529: font = &uiInfo.uiDC.Assets.smallFont; ADDRLP4 36 ADDRGP4 uiInfo+228+20560 ASGNP4 line 530 ;530: } else if (scale > ui_bigFont.value) { ADDRGP4 $372 JUMPV LABELV $371 ADDRFP4 12 INDIRF4 ADDRGP4 ui_bigFont+8 INDIRF4 LEF4 $376 line 531 ;531: font = &uiInfo.uiDC.Assets.bigFont; ADDRLP4 36 ADDRGP4 uiInfo+228+41108 ASGNP4 line 532 ;532: } LABELV $376 LABELV $372 line 533 ;533: useScale = scale * font->glyphScale; ADDRLP4 32 ADDRFP4 12 INDIRF4 ADDRLP4 36 INDIRP4 CNSTI4 20480 ADDP4 INDIRF4 MULF4 ASGNF4 line 534 ;534: trap_R_SetColor( color ); ADDRFP4 16 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 535 ;535: len = strlen(text); ADDRFP4 20 INDIRP4 ARGP4 ADDRLP4 44 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 24 ADDRLP4 44 INDIRI4 ASGNI4 line 536 ;536: if (limit > 0 && len > limit) { ADDRLP4 48 ADDRFP4 28 INDIRI4 ASGNI4 ADDRLP4 48 INDIRI4 CNSTI4 0 LEI4 $381 ADDRLP4 24 INDIRI4 ADDRLP4 48 INDIRI4 LEI4 $381 line 537 ;537: len = limit; ADDRLP4 24 ADDRFP4 28 INDIRI4 ASGNI4 line 538 ;538: } LABELV $381 line 539 ;539: count = 0; ADDRLP4 20 CNSTI4 0 ASGNI4 ADDRGP4 $384 JUMPV LABELV $383 line 540 ;540: while (s && *s && count < len) { line 541 ;541: glyph = &font->glyphs[(int)*s]; // TTimo: FIXME: getting nasty warnings without the cast, hopefully this doesn't break the VM build ADDRLP4 0 CNSTI4 80 ADDRLP4 28 INDIRP4 INDIRI1 CVII4 1 MULI4 ADDRLP4 36 INDIRP4 ADDP4 ASGNP4 line 542 ;542: if ( Q_IsColorString( s ) ) { ADDRLP4 28 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $386 ADDRLP4 56 CNSTI4 94 ASGNI4 ADDRLP4 28 INDIRP4 INDIRI1 CVII4 1 ADDRLP4 56 INDIRI4 NEI4 $386 ADDRLP4 60 ADDRLP4 28 INDIRP4 CNSTI4 1 ADDP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 60 INDIRI4 CNSTI4 0 EQI4 $386 ADDRLP4 60 INDIRI4 ADDRLP4 56 INDIRI4 EQI4 $386 line 543 ;543: memcpy( newColor, g_color_table[ColorIndex(*(s+1))], sizeof( newColor ) ); ADDRLP4 4 ARGP4 ADDRLP4 28 INDIRP4 CNSTI4 1 ADDP4 INDIRI1 CVII4 1 CNSTI4 48 SUBI4 CNSTI4 7 BANDI4 CNSTI4 4 LSHI4 ADDRGP4 g_color_table ADDP4 ARGP4 CNSTI4 16 ARGI4 ADDRGP4 memcpy CALLP4 pop line 544 ;544: newColor[3] = color[3]; ADDRLP4 4+12 ADDRFP4 16 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ASGNF4 line 545 ;545: trap_R_SetColor( newColor ); ADDRLP4 4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 546 ;546: s += 2; ADDRLP4 28 ADDRLP4 28 INDIRP4 CNSTI4 2 ADDP4 ASGNP4 line 547 ;547: continue; ADDRGP4 $384 JUMPV LABELV $386 line 548 ;548: } else { line 549 ;549: float yadj = useScale * glyph->top; ADDRLP4 64 ADDRLP4 32 INDIRF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRI4 CVIF4 4 MULF4 ASGNF4 line 550 ;550: if (Text_Width(s, useScale, 1) + x > max) { ADDRLP4 28 INDIRP4 ARGP4 ADDRLP4 32 INDIRF4 ARGF4 CNSTI4 1 ARGI4 ADDRLP4 68 ADDRGP4 Text_Width CALLI4 ASGNI4 ADDRLP4 68 INDIRI4 CVIF4 4 ADDRFP4 4 INDIRF4 ADDF4 ADDRLP4 40 INDIRF4 LEF4 $389 line 551 ;551: *maxX = 0; ADDRFP4 0 INDIRP4 CNSTF4 0 ASGNF4 line 552 ;552: break; ADDRGP4 $385 JUMPV LABELV $389 line 554 ;553: } ;554: Text_PaintChar(x, y - yadj, ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 ADDRLP4 64 INDIRF4 SUBF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 20 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 24 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 32 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 28 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 32 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 36 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 40 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 44 ADDP4 INDIRI4 ARGI4 ADDRGP4 Text_PaintChar CALLV pop line 563 ;555: glyph->imageWidth, ;556: glyph->imageHeight, ;557: useScale, ;558: glyph->s, ;559: glyph->t, ;560: glyph->s2, ;561: glyph->t2, ;562: glyph->glyph); ;563: x += (glyph->xSkip * useScale) + adjust; ADDRFP4 4 ADDRFP4 4 INDIRF4 ADDRLP4 0 INDIRP4 CNSTI4 16 ADDP4 INDIRI4 CVIF4 4 ADDRLP4 32 INDIRF4 MULF4 ADDRFP4 24 INDIRF4 ADDF4 ADDF4 ASGNF4 line 564 ;564: *maxX = x; ADDRFP4 0 INDIRP4 ADDRFP4 4 INDIRF4 ASGNF4 line 565 ;565: count++; ADDRLP4 20 ADDRLP4 20 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 566 ;566: s++; ADDRLP4 28 ADDRLP4 28 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 line 567 ;567: } line 568 ;568: } LABELV $384 line 540 ADDRLP4 28 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $392 ADDRLP4 28 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $392 ADDRLP4 20 INDIRI4 ADDRLP4 24 INDIRI4 LTI4 $383 LABELV $392 LABELV $385 line 569 ;569: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 570 ;570: } LABELV $367 line 572 ;571: ;572:} LABELV $366 endproc Text_Paint_Limit 76 40 export UI_ShowPostGame proc UI_ShowPostGame 0 8 line 575 ;573: ;574: ;575:void UI_ShowPostGame(qboolean newHigh) { line 576 ;576: trap_Cvar_Set ("cg_cameraOrbit", "0"); ADDRGP4 $394 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 577 ;577: trap_Cvar_Set("cg_thirdPerson", "0"); ADDRGP4 $396 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 578 ;578: trap_Cvar_Set( "sv_killserver", "1" ); ADDRGP4 $397 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 579 ;579: uiInfo.soundHighScore = newHigh; ADDRGP4 uiInfo+73436 ADDRFP4 0 INDIRI4 ASGNI4 line 580 ;580: _UI_SetActiveMenu(UIMENU_POSTGAME); CNSTI4 6 ARGI4 ADDRGP4 _UI_SetActiveMenu CALLV pop line 581 ;581:} LABELV $393 endproc UI_ShowPostGame 0 8 export UI_DrawCenteredPic proc UI_DrawCenteredPic 8 20 line 588 ;582:/* ;583:================= ;584:_UI_Refresh ;585:================= ;586:*/ ;587: ;588:void UI_DrawCenteredPic(qhandle_t image, int w, int h) { line 590 ;589: int x, y; ;590: x = (SCREEN_WIDTH - w) / 2; ADDRLP4 0 CNSTI4 640 ADDRFP4 4 INDIRI4 SUBI4 CNSTI4 2 DIVI4 ASGNI4 line 591 ;591: y = (SCREEN_HEIGHT - h) / 2; ADDRLP4 4 CNSTI4 480 ADDRFP4 8 INDIRI4 SUBI4 CNSTI4 2 DIVI4 ASGNI4 line 592 ;592: UI_DrawHandlePic(x, y, w, h, image); ADDRLP4 0 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 4 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 4 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 593 ;593:} LABELV $400 endproc UI_DrawCenteredPic 8 20 data export frameCount align 4 LABELV frameCount byte 4 0 bss align 4 LABELV $402 skip 4 align 4 LABELV $403 skip 16 export _UI_Refresh code proc _UI_Refresh 20 20 line 600 ;594: ;595:int frameCount = 0; ;596:int startTime; ;597: ;598:#define UI_FPS_FRAMES 4 ;599:void _UI_Refresh( int realtime ) ;600:{ line 608 ;601: static int index; ;602: static int previousTimes[UI_FPS_FRAMES]; ;603: ;604: //if ( !( trap_Key_GetCatcher() & KEYCATCH_UI ) ) { ;605: // return; ;606: //} ;607: ;608: uiInfo.uiDC.frameTime = realtime - uiInfo.uiDC.realTime; ADDRGP4 uiInfo+212 ADDRFP4 0 INDIRI4 ADDRGP4 uiInfo+208 INDIRI4 SUBI4 ASGNI4 line 609 ;609: uiInfo.uiDC.realTime = realtime; ADDRGP4 uiInfo+208 ADDRFP4 0 INDIRI4 ASGNI4 line 611 ;610: ;611: previousTimes[index % UI_FPS_FRAMES] = uiInfo.uiDC.frameTime; ADDRGP4 $402 INDIRI4 CNSTI4 4 MODI4 CNSTI4 2 LSHI4 ADDRGP4 $403 ADDP4 ADDRGP4 uiInfo+212 INDIRI4 ASGNI4 line 612 ;612: index++; ADDRLP4 0 ADDRGP4 $402 ASGNP4 ADDRLP4 0 INDIRP4 ADDRLP4 0 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 613 ;613: if ( index > UI_FPS_FRAMES ) { ADDRGP4 $402 INDIRI4 CNSTI4 4 LEI4 $408 line 616 ;614: int i, total; ;615: // average multiple frames together to smooth changes out a bit ;616: total = 0; ADDRLP4 8 CNSTI4 0 ASGNI4 line 617 ;617: for ( i = 0 ; i < UI_FPS_FRAMES ; i++ ) { ADDRLP4 4 CNSTI4 0 ASGNI4 LABELV $410 line 618 ;618: total += previousTimes[i]; ADDRLP4 8 ADDRLP4 8 INDIRI4 ADDRLP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $403 ADDP4 INDIRI4 ADDI4 ASGNI4 line 619 ;619: } LABELV $411 line 617 ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 4 LTI4 $410 line 620 ;620: if ( !total ) { ADDRLP4 8 INDIRI4 CNSTI4 0 NEI4 $414 line 621 ;621: total = 1; ADDRLP4 8 CNSTI4 1 ASGNI4 line 622 ;622: } LABELV $414 line 623 ;623: uiInfo.uiDC.FPS = 1000 * UI_FPS_FRAMES / total; ADDRGP4 uiInfo+73412 CNSTI4 4000 ADDRLP4 8 INDIRI4 DIVI4 CVIF4 4 ASGNF4 line 624 ;624: } LABELV $408 line 628 ;625: ;626: ;627: ;628: UI_UpdateCvars(); ADDRGP4 UI_UpdateCvars CALLV pop line 630 ;629: ;630: if (Menu_Count() > 0) { ADDRLP4 4 ADDRGP4 Menu_Count CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LEI4 $417 line 632 ;631: // paint all the menus ;632: Menu_PaintAll(); ADDRGP4 Menu_PaintAll CALLV pop line 634 ;633: // refresh server browser list ;634: UI_DoServerRefresh(); ADDRGP4 UI_DoServerRefresh CALLV pop line 636 ;635: // refresh server status ;636: UI_BuildServerStatus(qfalse); CNSTI4 0 ARGI4 ADDRGP4 UI_BuildServerStatus CALLV pop line 638 ;637: // refresh find player list ;638: UI_BuildFindPlayerList(qfalse); CNSTI4 0 ARGI4 ADDRGP4 UI_BuildFindPlayerList CALLV pop line 639 ;639: } LABELV $417 line 642 ;640: ;641: // draw cursor ;642: UI_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 UI_SetColor CALLV pop line 643 ;643: if (Menu_Count() > 0) { ADDRLP4 8 ADDRGP4 Menu_Count CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 CNSTI4 0 LEI4 $419 line 644 ;644: UI_DrawHandlePic( uiInfo.uiDC.cursorx-16, uiInfo.uiDC.cursory-16, 32, 32, uiInfo.uiDC.Assets.cursor); ADDRLP4 12 CNSTI4 16 ASGNI4 ADDRGP4 uiInfo+216 INDIRI4 ADDRLP4 12 INDIRI4 SUBI4 CVIF4 4 ARGF4 ADDRGP4 uiInfo+220 INDIRI4 ADDRLP4 12 INDIRI4 SUBI4 CVIF4 4 ARGF4 ADDRLP4 16 CNSTF4 1107296256 ASGNF4 ADDRLP4 16 INDIRF4 ARGF4 ADDRLP4 16 INDIRF4 ARGF4 ADDRGP4 uiInfo+228+61656 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 645 ;645: } LABELV $419 line 648 ;646: ;647:#ifndef NDEBUG ;648: if (uiInfo.uiDC.debug) ADDRGP4 uiInfo+224 INDIRI4 CNSTI4 0 EQI4 $425 line 649 ;649: { line 653 ;650: // cursor coordinates ;651: //FIXME ;652: //UI_DrawString( 0, 0, va("(%d,%d)",uis.cursorx,uis.cursory), UI_LEFT|UI_SMALLFONT, colorRed ); ;653: } LABELV $425 line 656 ;654:#endif ;655: ;656:} LABELV $401 endproc _UI_Refresh 20 20 export _UI_Shutdown proc _UI_Shutdown 0 0 line 663 ;657: ;658:/* ;659:================= ;660:_UI_Shutdown ;661:================= ;662:*/ ;663:void _UI_Shutdown( void ) { line 664 ;664: trap_LAN_SaveCachedServers(); ADDRGP4 trap_LAN_SaveCachedServers CALLV pop line 665 ;665:} LABELV $428 endproc _UI_Shutdown 0 0 data export defaultMenu align 4 LABELV defaultMenu byte 4 0 bss align 1 LABELV $430 skip 32768 export GetMenuBuffer code proc GetMenuBuffer 16 16 line 669 ;666: ;667:char *defaultMenu = NULL; ;668: ;669:char *GetMenuBuffer(const char *filename) { line 674 ;670: int len; ;671: fileHandle_t f; ;672: static char buf[MAX_MENUFILE]; ;673: ;674: len = trap_FS_FOpenFile( filename, &f, FS_READ ); ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 4 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 8 ADDRGP4 trap_FS_FOpenFile CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 675 ;675: if ( !f ) { ADDRLP4 4 INDIRI4 CNSTI4 0 NEI4 $431 line 676 ;676: trap_Print( va( S_COLOR_RED "menu file not found: %s, using default\n", filename ) ); ADDRGP4 $433 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Print CALLV pop line 677 ;677: return defaultMenu; ADDRGP4 defaultMenu INDIRP4 RETP4 ADDRGP4 $429 JUMPV LABELV $431 line 679 ;678: } ;679: if ( len >= MAX_MENUFILE ) { ADDRLP4 0 INDIRI4 CNSTI4 32768 LTI4 $434 line 680 ;680: trap_Print( va( S_COLOR_RED "menu file too large: %s is %i, max allowed is %i", filename, len, MAX_MENUFILE ) ); ADDRGP4 $436 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 0 INDIRI4 ARGI4 CNSTI4 32768 ARGI4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Print CALLV pop line 681 ;681: trap_FS_FCloseFile( f ); ADDRLP4 4 INDIRI4 ARGI4 ADDRGP4 trap_FS_FCloseFile CALLV pop line 682 ;682: return defaultMenu; ADDRGP4 defaultMenu INDIRP4 RETP4 ADDRGP4 $429 JUMPV LABELV $434 line 685 ;683: } ;684: ;685: trap_FS_Read( buf, len, f ); ADDRGP4 $430 ARGP4 ADDRLP4 0 INDIRI4 ARGI4 ADDRLP4 4 INDIRI4 ARGI4 ADDRGP4 trap_FS_Read CALLV pop line 686 ;686: buf[len] = 0; ADDRLP4 0 INDIRI4 ADDRGP4 $430 ADDP4 CNSTI1 0 ASGNI1 line 687 ;687: trap_FS_FCloseFile( f ); ADDRLP4 4 INDIRI4 ARGI4 ADDRGP4 trap_FS_FCloseFile CALLV pop line 689 ;688: //COM_Compress(buf); ;689: return buf; ADDRGP4 $430 RETP4 LABELV $429 endproc GetMenuBuffer 16 16 export Asset_Parse proc Asset_Parse 1124 12 line 693 ;690: ;691:} ;692: ;693:qboolean Asset_Parse(int handle) { line 697 ;694: pc_token_t token; ;695: const char *tempStr; ;696: ;697: if (!trap_PC_ReadToken(handle, &token)) ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRLP4 1044 ADDRGP4 trap_PC_ReadToken CALLI4 ASGNI4 ADDRLP4 1044 INDIRI4 CNSTI4 0 NEI4 $438 line 698 ;698: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $438 line 699 ;699: if (Q_stricmp(token.string, "{") != 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $443 ARGP4 ADDRLP4 1048 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1048 INDIRI4 CNSTI4 0 EQI4 $445 line 700 ;700: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $444 line 703 ;701: } ;702: ;703: while ( 1 ) { line 705 ;704: ;705: memset(&token, 0, sizeof(pc_token_t)); ADDRLP4 0 ARGP4 CNSTI4 0 ARGI4 CNSTI4 1040 ARGI4 ADDRGP4 memset CALLP4 pop line 707 ;706: ;707: if (!trap_PC_ReadToken(handle, &token)) ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRLP4 1052 ADDRGP4 trap_PC_ReadToken CALLI4 ASGNI4 ADDRLP4 1052 INDIRI4 CNSTI4 0 NEI4 $447 line 708 ;708: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $447 line 710 ;709: ;710: if (Q_stricmp(token.string, "}") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $452 ARGP4 ADDRLP4 1056 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1056 INDIRI4 CNSTI4 0 NEI4 $449 line 711 ;711: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $437 JUMPV LABELV $449 line 715 ;712: } ;713: ;714: // font ;715: if (Q_stricmp(token.string, "font") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $456 ARGP4 ADDRLP4 1060 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1060 INDIRI4 CNSTI4 0 NEI4 $453 line 717 ;716: int pointSize; ;717: if (!PC_String_Parse(handle, &tempStr) || !PC_Int_Parse(handle,&pointSize)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1040 ARGP4 ADDRLP4 1068 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1068 INDIRI4 CNSTI4 0 EQI4 $459 ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1064 ARGP4 ADDRLP4 1072 ADDRGP4 PC_Int_Parse CALLI4 ASGNI4 ADDRLP4 1072 INDIRI4 CNSTI4 0 NEI4 $457 LABELV $459 line 718 ;718: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $457 line 720 ;719: } ;720: trap_R_RegisterFont(tempStr, pointSize, &uiInfo.uiDC.Assets.textFont); ADDRLP4 1040 INDIRP4 ARGP4 ADDRLP4 1064 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+12 ARGP4 ADDRGP4 trap_R_RegisterFont CALLV pop line 721 ;721: uiInfo.uiDC.Assets.fontRegistered = qtrue; ADDRGP4 uiInfo+228+61764 CNSTI4 1 ASGNI4 line 722 ;722: continue; ADDRGP4 $445 JUMPV LABELV $453 line 725 ;723: } ;724: ;725: if (Q_stricmp(token.string, "smallFont") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $467 ARGP4 ADDRLP4 1064 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1064 INDIRI4 CNSTI4 0 NEI4 $464 line 727 ;726: int pointSize; ;727: if (!PC_String_Parse(handle, &tempStr) || !PC_Int_Parse(handle,&pointSize)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1040 ARGP4 ADDRLP4 1072 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1072 INDIRI4 CNSTI4 0 EQI4 $470 ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1068 ARGP4 ADDRLP4 1076 ADDRGP4 PC_Int_Parse CALLI4 ASGNI4 ADDRLP4 1076 INDIRI4 CNSTI4 0 NEI4 $468 LABELV $470 line 728 ;728: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $468 line 730 ;729: } ;730: trap_R_RegisterFont(tempStr, pointSize, &uiInfo.uiDC.Assets.smallFont); ADDRLP4 1040 INDIRP4 ARGP4 ADDRLP4 1068 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+20560 ARGP4 ADDRGP4 trap_R_RegisterFont CALLV pop line 731 ;731: continue; ADDRGP4 $445 JUMPV LABELV $464 line 734 ;732: } ;733: ;734: if (Q_stricmp(token.string, "bigFont") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $476 ARGP4 ADDRLP4 1068 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1068 INDIRI4 CNSTI4 0 NEI4 $473 line 736 ;735: int pointSize; ;736: if (!PC_String_Parse(handle, &tempStr) || !PC_Int_Parse(handle,&pointSize)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1040 ARGP4 ADDRLP4 1076 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1076 INDIRI4 CNSTI4 0 EQI4 $479 ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1072 ARGP4 ADDRLP4 1080 ADDRGP4 PC_Int_Parse CALLI4 ASGNI4 ADDRLP4 1080 INDIRI4 CNSTI4 0 NEI4 $477 LABELV $479 line 737 ;737: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $477 line 739 ;738: } ;739: trap_R_RegisterFont(tempStr, pointSize, &uiInfo.uiDC.Assets.bigFont); ADDRLP4 1040 INDIRP4 ARGP4 ADDRLP4 1072 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+41108 ARGP4 ADDRGP4 trap_R_RegisterFont CALLV pop line 740 ;740: continue; ADDRGP4 $445 JUMPV LABELV $473 line 745 ;741: } ;742: ;743: ;744: // gradientbar ;745: if (Q_stricmp(token.string, "gradientbar") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $485 ARGP4 ADDRLP4 1072 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1072 INDIRI4 CNSTI4 0 NEI4 $482 line 746 ;746: if (!PC_String_Parse(handle, &tempStr)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1040 ARGP4 ADDRLP4 1076 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1076 INDIRI4 CNSTI4 0 NEI4 $486 line 747 ;747: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $486 line 749 ;748: } ;749: uiInfo.uiDC.Assets.gradientBar = trap_R_RegisterShaderNoMip(tempStr); ADDRLP4 1040 INDIRP4 ARGP4 ADDRLP4 1080 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61660 ADDRLP4 1080 INDIRI4 ASGNI4 line 750 ;750: continue; ADDRGP4 $445 JUMPV LABELV $482 line 754 ;751: } ;752: ;753: // enterMenuSound ;754: if (Q_stricmp(token.string, "menuEnterSound") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $493 ARGP4 ADDRLP4 1076 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1076 INDIRI4 CNSTI4 0 NEI4 $490 line 755 ;755: if (!PC_String_Parse(handle, &tempStr)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1040 ARGP4 ADDRLP4 1080 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1080 INDIRI4 CNSTI4 0 NEI4 $494 line 756 ;756: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $494 line 758 ;757: } ;758: uiInfo.uiDC.Assets.menuEnterSound = trap_S_RegisterSound( tempStr, qfalse ); ADDRLP4 1040 INDIRP4 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 1084 ADDRGP4 trap_S_RegisterSound CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61708 ADDRLP4 1084 INDIRI4 ASGNI4 line 759 ;759: continue; ADDRGP4 $445 JUMPV LABELV $490 line 763 ;760: } ;761: ;762: // exitMenuSound ;763: if (Q_stricmp(token.string, "menuExitSound") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $501 ARGP4 ADDRLP4 1080 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1080 INDIRI4 CNSTI4 0 NEI4 $498 line 764 ;764: if (!PC_String_Parse(handle, &tempStr)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1040 ARGP4 ADDRLP4 1084 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1084 INDIRI4 CNSTI4 0 NEI4 $502 line 765 ;765: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $502 line 767 ;766: } ;767: uiInfo.uiDC.Assets.menuExitSound = trap_S_RegisterSound( tempStr, qfalse ); ADDRLP4 1040 INDIRP4 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 1088 ADDRGP4 trap_S_RegisterSound CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61712 ADDRLP4 1088 INDIRI4 ASGNI4 line 768 ;768: continue; ADDRGP4 $445 JUMPV LABELV $498 line 772 ;769: } ;770: ;771: // itemFocusSound ;772: if (Q_stricmp(token.string, "itemFocusSound") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $509 ARGP4 ADDRLP4 1084 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1084 INDIRI4 CNSTI4 0 NEI4 $506 line 773 ;773: if (!PC_String_Parse(handle, &tempStr)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1040 ARGP4 ADDRLP4 1088 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1088 INDIRI4 CNSTI4 0 NEI4 $510 line 774 ;774: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $510 line 776 ;775: } ;776: uiInfo.uiDC.Assets.itemFocusSound = trap_S_RegisterSound( tempStr, qfalse ); ADDRLP4 1040 INDIRP4 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 1092 ADDRGP4 trap_S_RegisterSound CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61720 ADDRLP4 1092 INDIRI4 ASGNI4 line 777 ;777: continue; ADDRGP4 $445 JUMPV LABELV $506 line 781 ;778: } ;779: ;780: // menuBuzzSound ;781: if (Q_stricmp(token.string, "menuBuzzSound") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $517 ARGP4 ADDRLP4 1088 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1088 INDIRI4 CNSTI4 0 NEI4 $514 line 782 ;782: if (!PC_String_Parse(handle, &tempStr)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 1040 ARGP4 ADDRLP4 1092 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1092 INDIRI4 CNSTI4 0 NEI4 $518 line 783 ;783: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $518 line 785 ;784: } ;785: uiInfo.uiDC.Assets.menuBuzzSound = trap_S_RegisterSound( tempStr, qfalse ); ADDRLP4 1040 INDIRP4 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 1096 ADDRGP4 trap_S_RegisterSound CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61716 ADDRLP4 1096 INDIRI4 ASGNI4 line 786 ;786: continue; ADDRGP4 $445 JUMPV LABELV $514 line 789 ;787: } ;788: ;789: if (Q_stricmp(token.string, "cursor") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $525 ARGP4 ADDRLP4 1092 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1092 INDIRI4 CNSTI4 0 NEI4 $522 line 790 ;790: if (!PC_String_Parse(handle, &uiInfo.uiDC.Assets.cursorStr)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+4 ARGP4 ADDRLP4 1096 ADDRGP4 PC_String_Parse CALLI4 ASGNI4 ADDRLP4 1096 INDIRI4 CNSTI4 0 NEI4 $526 line 791 ;791: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $526 line 793 ;792: } ;793: uiInfo.uiDC.Assets.cursor = trap_R_RegisterShaderNoMip( uiInfo.uiDC.Assets.cursorStr); ADDRGP4 uiInfo+228+4 INDIRP4 ARGP4 ADDRLP4 1100 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+228+61656 ADDRLP4 1100 INDIRI4 ASGNI4 line 794 ;794: continue; ADDRGP4 $445 JUMPV LABELV $522 line 797 ;795: } ;796: ;797: if (Q_stricmp(token.string, "fadeClamp") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $537 ARGP4 ADDRLP4 1096 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1096 INDIRI4 CNSTI4 0 NEI4 $534 line 798 ;798: if (!PC_Float_Parse(handle, &uiInfo.uiDC.Assets.fadeClamp)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+61724 ARGP4 ADDRLP4 1100 ADDRGP4 PC_Float_Parse CALLI4 ASGNI4 ADDRLP4 1100 INDIRI4 CNSTI4 0 NEI4 $445 line 799 ;799: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV line 801 ;800: } ;801: continue; LABELV $534 line 804 ;802: } ;803: ;804: if (Q_stricmp(token.string, "fadeCycle") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $545 ARGP4 ADDRLP4 1100 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1100 INDIRI4 CNSTI4 0 NEI4 $542 line 805 ;805: if (!PC_Int_Parse(handle, &uiInfo.uiDC.Assets.fadeCycle)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+61728 ARGP4 ADDRLP4 1104 ADDRGP4 PC_Int_Parse CALLI4 ASGNI4 ADDRLP4 1104 INDIRI4 CNSTI4 0 NEI4 $445 line 806 ;806: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV line 808 ;807: } ;808: continue; LABELV $542 line 811 ;809: } ;810: ;811: if (Q_stricmp(token.string, "fadeAmount") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $553 ARGP4 ADDRLP4 1104 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1104 INDIRI4 CNSTI4 0 NEI4 $550 line 812 ;812: if (!PC_Float_Parse(handle, &uiInfo.uiDC.Assets.fadeAmount)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+61732 ARGP4 ADDRLP4 1108 ADDRGP4 PC_Float_Parse CALLI4 ASGNI4 ADDRLP4 1108 INDIRI4 CNSTI4 0 NEI4 $445 line 813 ;813: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV line 815 ;814: } ;815: continue; LABELV $550 line 818 ;816: } ;817: ;818: if (Q_stricmp(token.string, "shadowX") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $561 ARGP4 ADDRLP4 1108 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1108 INDIRI4 CNSTI4 0 NEI4 $558 line 819 ;819: if (!PC_Float_Parse(handle, &uiInfo.uiDC.Assets.shadowX)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+61736 ARGP4 ADDRLP4 1112 ADDRGP4 PC_Float_Parse CALLI4 ASGNI4 ADDRLP4 1112 INDIRI4 CNSTI4 0 NEI4 $445 line 820 ;820: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV line 822 ;821: } ;822: continue; LABELV $558 line 825 ;823: } ;824: ;825: if (Q_stricmp(token.string, "shadowY") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $569 ARGP4 ADDRLP4 1112 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1112 INDIRI4 CNSTI4 0 NEI4 $566 line 826 ;826: if (!PC_Float_Parse(handle, &uiInfo.uiDC.Assets.shadowY)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+61740 ARGP4 ADDRLP4 1116 ADDRGP4 PC_Float_Parse CALLI4 ASGNI4 ADDRLP4 1116 INDIRI4 CNSTI4 0 NEI4 $445 line 827 ;827: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV line 829 ;828: } ;829: continue; LABELV $566 line 832 ;830: } ;831: ;832: if (Q_stricmp(token.string, "shadowColor") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $577 ARGP4 ADDRLP4 1116 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1116 INDIRI4 CNSTI4 0 NEI4 $574 line 833 ;833: if (!PC_Color_Parse(handle, &uiInfo.uiDC.Assets.shadowColor)) { ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 uiInfo+228+61744 ARGP4 ADDRLP4 1120 ADDRGP4 PC_Color_Parse CALLI4 ASGNI4 ADDRLP4 1120 INDIRI4 CNSTI4 0 NEI4 $578 line 834 ;834: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $437 JUMPV LABELV $578 line 836 ;835: } ;836: uiInfo.uiDC.Assets.shadowFadeClamp = uiInfo.uiDC.Assets.shadowColor[3]; ADDRGP4 uiInfo+228+61760 ADDRGP4 uiInfo+228+61744+12 INDIRF4 ASGNF4 line 837 ;837: continue; LABELV $574 line 840 ;838: } ;839: ;840: } LABELV $445 line 703 ADDRGP4 $444 JUMPV line 841 ;841: return qfalse; CNSTI4 0 RETI4 LABELV $437 endproc Asset_Parse 1124 12 export Font_Report proc Font_Report 8 12 line 844 ;842:} ;843: ;844:void Font_Report() { line 846 ;845: int i; ;846: Com_Printf("Font Info\n"); ADDRGP4 $588 ARGP4 ADDRGP4 Com_Printf CALLV pop line 847 ;847: Com_Printf("=========\n"); ADDRGP4 $589 ARGP4 ADDRGP4 Com_Printf CALLV pop line 848 ;848: for ( i = 32; i < 96; i++) { ADDRLP4 0 CNSTI4 32 ASGNI4 LABELV $590 line 849 ;849: Com_Printf("Glyph handle %i: %i\n", i, uiInfo.uiDC.Assets.textFont.glyphs[i].glyph); ADDRGP4 $594 ARGP4 ADDRLP4 0 INDIRI4 ARGI4 CNSTI4 80 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+228+12+44 ADDP4 INDIRI4 ARGI4 ADDRGP4 Com_Printf CALLV pop line 850 ;850: } LABELV $591 line 848 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 96 LTI4 $590 line 851 ;851:} LABELV $587 endproc Font_Report 8 12 export UI_Report proc UI_Report 0 0 line 853 ;852: ;853:void UI_Report() { line 854 ;854: String_Report(); ADDRGP4 String_Report CALLV pop line 857 ;855: //Font_Report(); ;856: ;857:} LABELV $598 endproc UI_Report 0 0 export UI_ParseMenu proc UI_ParseMenu 1060 12 line 859 ;858: ;859:void UI_ParseMenu(const char *menuFile) { line 863 ;860: int handle; ;861: pc_token_t token; ;862: ;863: Com_Printf("Parsing menu file:%s\n", menuFile); ADDRGP4 $600 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 Com_Printf CALLV pop line 865 ;864: ;865: handle = trap_PC_LoadSource(menuFile); ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1044 ADDRGP4 trap_PC_LoadSource CALLI4 ASGNI4 ADDRLP4 1040 ADDRLP4 1044 INDIRI4 ASGNI4 line 866 ;866: if (!handle) { ADDRLP4 1040 INDIRI4 CNSTI4 0 NEI4 $604 line 867 ;867: return; ADDRGP4 $599 JUMPV LABELV $603 line 870 ;868: } ;869: ;870: while ( 1 ) { line 871 ;871: memset(&token, 0, sizeof(pc_token_t)); ADDRLP4 0 ARGP4 CNSTI4 0 ARGI4 CNSTI4 1040 ARGI4 ADDRGP4 memset CALLP4 pop line 872 ;872: if (!trap_PC_ReadToken( handle, &token )) { ADDRLP4 1040 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRLP4 1048 ADDRGP4 trap_PC_ReadToken CALLI4 ASGNI4 ADDRLP4 1048 INDIRI4 CNSTI4 0 NEI4 $606 line 873 ;873: break; ADDRGP4 $605 JUMPV LABELV $606 line 886 ;874: } ;875: ;876: //if ( Q_stricmp( token, "{" ) ) { ;877: // Com_Printf( "Missing { in menu file\n" ); ;878: // break; ;879: //} ;880: ;881: //if ( menuCount == MAX_MENUS ) { ;882: // Com_Printf( "Too many menus!\n" ); ;883: // break; ;884: //} ;885: ;886: if ( token.string[0] == '}' ) { ADDRLP4 0+16 INDIRI1 CVII4 1 CNSTI4 125 NEI4 $608 line 887 ;887: break; ADDRGP4 $605 JUMPV LABELV $608 line 890 ;888: } ;889: ;890: if (Q_stricmp(token.string, "assetGlobalDef") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $614 ARGP4 ADDRLP4 1052 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1052 INDIRI4 CNSTI4 0 NEI4 $611 line 891 ;891: if (Asset_Parse(handle)) { ADDRLP4 1040 INDIRI4 ARGI4 ADDRLP4 1056 ADDRGP4 Asset_Parse CALLI4 ASGNI4 ADDRLP4 1056 INDIRI4 CNSTI4 0 EQI4 $605 line 892 ;892: continue; ADDRGP4 $604 JUMPV line 893 ;893: } else { line 894 ;894: break; LABELV $611 line 898 ;895: } ;896: } ;897: ;898: if (Q_stricmp(token.string, "menudef") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $620 ARGP4 ADDRLP4 1056 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1056 INDIRI4 CNSTI4 0 NEI4 $617 line 900 ;899: // start a new menu ;900: Menu_New(handle); ADDRLP4 1040 INDIRI4 ARGI4 ADDRGP4 Menu_New CALLV pop line 901 ;901: } LABELV $617 line 902 ;902: } LABELV $604 line 870 ADDRGP4 $603 JUMPV LABELV $605 line 903 ;903: trap_PC_FreeSource(handle); ADDRLP4 1040 INDIRI4 ARGI4 ADDRGP4 trap_PC_FreeSource CALLI4 pop line 904 ;904:} LABELV $599 endproc UI_ParseMenu 1060 12 export Load_Menu proc Load_Menu 1048 8 line 906 ;905: ;906:qboolean Load_Menu(int handle) { line 909 ;907: pc_token_t token; ;908: ;909: if (!trap_PC_ReadToken(handle, &token)) ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRLP4 1040 ADDRGP4 trap_PC_ReadToken CALLI4 ASGNI4 ADDRLP4 1040 INDIRI4 CNSTI4 0 NEI4 $622 line 910 ;910: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $621 JUMPV LABELV $622 line 911 ;911: if (token.string[0] != '{') { ADDRLP4 0+16 INDIRI1 CVII4 1 CNSTI4 123 EQI4 $628 line 912 ;912: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $621 JUMPV LABELV $627 line 915 ;913: } ;914: ;915: while ( 1 ) { line 917 ;916: ;917: if (!trap_PC_ReadToken(handle, &token)) ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRLP4 1044 ADDRGP4 trap_PC_ReadToken CALLI4 ASGNI4 ADDRLP4 1044 INDIRI4 CNSTI4 0 NEI4 $630 line 918 ;918: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $621 JUMPV LABELV $630 line 920 ;919: ;920: if ( token.string[0] == 0 ) { ADDRLP4 0+16 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $632 line 921 ;921: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $621 JUMPV LABELV $632 line 924 ;922: } ;923: ;924: if ( token.string[0] == '}' ) { ADDRLP4 0+16 INDIRI1 CVII4 1 CNSTI4 125 NEI4 $635 line 925 ;925: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $621 JUMPV LABELV $635 line 928 ;926: } ;927: ;928: UI_ParseMenu(token.string); ADDRLP4 0+16 ARGP4 ADDRGP4 UI_ParseMenu CALLV pop line 929 ;929: } LABELV $628 line 915 ADDRGP4 $627 JUMPV line 930 ;930: return qfalse; CNSTI4 0 RETI4 LABELV $621 endproc Load_Menu 1048 8 export UI_LoadMenus proc UI_LoadMenus 1068 8 line 933 ;931:} ;932: ;933:void UI_LoadMenus(const char *menuFile, qboolean reset) { line 938 ;934: pc_token_t token; ;935: int handle; ;936: int start; ;937: ;938: start = trap_Milliseconds(); ADDRLP4 1048 ADDRGP4 trap_Milliseconds CALLI4 ASGNI4 ADDRLP4 1044 ADDRLP4 1048 INDIRI4 ASGNI4 line 940 ;939: ;940: handle = trap_PC_LoadSource( menuFile ); ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1052 ADDRGP4 trap_PC_LoadSource CALLI4 ASGNI4 ADDRLP4 1040 ADDRLP4 1052 INDIRI4 ASGNI4 line 941 ;941: if (!handle) { ADDRLP4 1040 INDIRI4 CNSTI4 0 NEI4 $640 line 942 ;942: trap_Error( va( S_COLOR_YELLOW "menu file not found: %s, using default\n", menuFile ) ); ADDRGP4 $642 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1056 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 1056 INDIRP4 ARGP4 ADDRGP4 trap_Error CALLV pop line 943 ;943: handle = trap_PC_LoadSource( "ui/menus.txt" ); ADDRGP4 $643 ARGP4 ADDRLP4 1060 ADDRGP4 trap_PC_LoadSource CALLI4 ASGNI4 ADDRLP4 1040 ADDRLP4 1060 INDIRI4 ASGNI4 line 944 ;944: if (!handle) { ADDRLP4 1040 INDIRI4 CNSTI4 0 NEI4 $644 line 945 ;945: trap_Error( va( S_COLOR_RED "default menu file not found: ui/menus.txt, unable to continue!\n", menuFile ) ); ADDRGP4 $646 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1064 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 1064 INDIRP4 ARGP4 ADDRGP4 trap_Error CALLV pop line 946 ;946: } LABELV $644 line 947 ;947: } LABELV $640 line 949 ;948: ;949: ui_new.integer = 1; ADDRGP4 ui_new+12 CNSTI4 1 ASGNI4 line 951 ;950: ;951: if (reset) { ADDRFP4 4 INDIRI4 CNSTI4 0 EQI4 $651 line 952 ;952: Menu_Reset(); ADDRGP4 Menu_Reset CALLV pop line 953 ;953: } ADDRGP4 $651 JUMPV LABELV $650 line 955 ;954: ;955: while ( 1 ) { line 956 ;956: if (!trap_PC_ReadToken(handle, &token)) ADDRLP4 1040 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRLP4 1056 ADDRGP4 trap_PC_ReadToken CALLI4 ASGNI4 ADDRLP4 1056 INDIRI4 CNSTI4 0 NEI4 $653 line 957 ;957: break; ADDRGP4 $652 JUMPV LABELV $653 line 958 ;958: if( token.string[0] == 0 || token.string[0] == '}') { ADDRLP4 0+16 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $659 ADDRLP4 0+16 INDIRI1 CVII4 1 CNSTI4 125 NEI4 $655 LABELV $659 line 959 ;959: break; ADDRGP4 $652 JUMPV LABELV $655 line 962 ;960: } ;961: ;962: if ( token.string[0] == '}' ) { ADDRLP4 0+16 INDIRI1 CVII4 1 CNSTI4 125 NEI4 $660 line 963 ;963: break; ADDRGP4 $652 JUMPV LABELV $660 line 966 ;964: } ;965: ;966: if (Q_stricmp(token.string, "loadmenu") == 0) { ADDRLP4 0+16 ARGP4 ADDRGP4 $666 ARGP4 ADDRLP4 1060 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1060 INDIRI4 CNSTI4 0 NEI4 $663 line 967 ;967: if (Load_Menu(handle)) { ADDRLP4 1040 INDIRI4 ARGI4 ADDRLP4 1064 ADDRGP4 Load_Menu CALLI4 ASGNI4 ADDRLP4 1064 INDIRI4 CNSTI4 0 EQI4 $652 line 968 ;968: continue; line 969 ;969: } else { line 970 ;970: break; LABELV $663 line 973 ;971: } ;972: } ;973: } LABELV $651 line 955 ADDRGP4 $650 JUMPV LABELV $652 line 975 ;974: ;975: Com_Printf("UI menu load time = %d milli seconds\n", trap_Milliseconds() - start); ADDRLP4 1056 ADDRGP4 trap_Milliseconds CALLI4 ASGNI4 ADDRGP4 $669 ARGP4 ADDRLP4 1056 INDIRI4 ADDRLP4 1044 INDIRI4 SUBI4 ARGI4 ADDRGP4 Com_Printf CALLV pop line 977 ;976: ;977: trap_PC_FreeSource( handle ); ADDRLP4 1040 INDIRI4 ARGI4 ADDRGP4 trap_PC_FreeSource CALLI4 pop line 978 ;978:} LABELV $639 endproc UI_LoadMenus 1068 8 export UI_Load proc UI_Load 1052 8 line 980 ;979: ;980:void UI_Load() { line 982 ;981: char lastName[1024]; ;982: menuDef_t *menu = Menu_GetFocused(); ADDRLP4 1032 ADDRGP4 Menu_GetFocused CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 1032 INDIRP4 ASGNP4 line 983 ;983: char *menuSet = UI_Cvar_VariableString("ui_menuFiles"); ADDRGP4 $671 ARGP4 ADDRLP4 1036 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 1036 INDIRP4 ASGNP4 line 984 ;984: if (menu && menu->window.name) { ADDRLP4 1044 CNSTU4 0 ASGNU4 ADDRLP4 4 INDIRP4 CVPU4 4 ADDRLP4 1044 INDIRU4 EQU4 $672 ADDRLP4 4 INDIRP4 CNSTI4 32 ADDP4 INDIRP4 CVPU4 4 ADDRLP4 1044 INDIRU4 EQU4 $672 line 985 ;985: strcpy(lastName, menu->window.name); ADDRLP4 8 ARGP4 ADDRLP4 4 INDIRP4 CNSTI4 32 ADDP4 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 986 ;986: } LABELV $672 line 987 ;987: if (menuSet == NULL || menuSet[0] == '\0') { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $676 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $674 LABELV $676 line 988 ;988: menuSet = "ui/menus.txt"; ADDRLP4 0 ADDRGP4 $643 ASGNP4 line 989 ;989: } LABELV $674 line 991 ;990: ;991: String_Init(); ADDRGP4 String_Init CALLV pop line 996 ;992: ;993:#ifdef PRE_RELEASE_TADEMO ;994: UI_ParseGameInfo("demogameinfo.txt"); ;995:#else ;996: UI_ParseGameInfo("gameinfo.txt"); ADDRGP4 $677 ARGP4 ADDRGP4 UI_ParseGameInfo CALLV pop line 997 ;997: UI_LoadArenas(); ADDRGP4 UI_LoadArenas CALLV pop line 1000 ;998:#endif ;999: ;1000: UI_LoadMenus(menuSet, qtrue); ADDRLP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRGP4 UI_LoadMenus CALLV pop line 1001 ;1001: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 1002 ;1002: Menus_ActivateByName(lastName); ADDRLP4 8 ARGP4 ADDRGP4 Menus_ActivateByName CALLP4 pop line 1004 ;1003: ;1004:} LABELV $670 endproc UI_Load 1052 8 data align 4 LABELV handicapValues address $678 address $679 address $680 address $681 address $682 address $683 address $684 address $685 address $686 address $687 address $688 address $689 address $690 address $691 address $692 address $693 address $694 address $695 address $696 address $697 byte 4 0 align 4 LABELV numHandicaps byte 4 21 code proc UI_DrawHandicap 20 32 line 1011 ;1005: ;1006:static const char *handicapValues[] = {"None","95","90","85","80","75","70","65","60","55","50","45","40","35","30","25","20","15","10","5",NULL}; ;1007:#ifndef MISSIONPACK // bk001206 ;1008:static int numHandicaps = sizeof(handicapValues) / sizeof(const char*); ;1009:#endif ;1010: ;1011:static void UI_DrawHandicap(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1014 ;1012: int i, h; ;1013: ;1014: h = Com_Clamp( 5, 100, trap_Cvar_VariableValue("handicap") ); ADDRGP4 $699 ARGP4 ADDRLP4 8 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 CNSTF4 1084227584 ARGF4 CNSTF4 1120403456 ARGF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRLP4 12 ADDRGP4 Com_Clamp CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 12 INDIRF4 CVFI4 4 ASGNI4 line 1015 ;1015: i = 20 - h / 5; ADDRLP4 0 CNSTI4 20 ADDRLP4 4 INDIRI4 CNSTI4 5 DIVI4 SUBI4 ASGNI4 line 1017 ;1016: ;1017: Text_Paint(rect->x, rect->y, scale, color, handicapValues[i], 0, 0, textStyle); ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 handicapValues ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1018 ;1018:} LABELV $698 endproc UI_DrawHandicap 20 32 proc UI_DrawClanName 8 32 line 1020 ;1019: ;1020:static void UI_DrawClanName(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1021 ;1021: Text_Paint(rect->x, rect->y, scale, color, UI_Cvar_VariableString("ui_teamName"), 0, 0, textStyle); ADDRGP4 $701 ARGP4 ADDRLP4 0 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1022 ;1022:} LABELV $700 endproc UI_DrawClanName 8 32 proc UI_SetCapFragLimits 16 8 line 1025 ;1023: ;1024: ;1025:static void UI_SetCapFragLimits(qboolean uiVars) { line 1026 ;1026: int cap = 5; ADDRLP4 0 CNSTI4 5 ASGNI4 line 1027 ;1027: int frag = 10; ADDRLP4 4 CNSTI4 10 ASGNI4 line 1028 ;1028: if (uiInfo.gameTypes[ui_gameType.integer].gtEnum == GT_OBELISK) { ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 CNSTI4 6 NEI4 $703 line 1029 ;1029: cap = 4; ADDRLP4 0 CNSTI4 4 ASGNI4 line 1030 ;1030: } else if (uiInfo.gameTypes[ui_gameType.integer].gtEnum == GT_HARVESTER) { ADDRGP4 $704 JUMPV LABELV $703 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 CNSTI4 7 NEI4 $708 line 1031 ;1031: cap = 15; ADDRLP4 0 CNSTI4 15 ASGNI4 line 1032 ;1032: } LABELV $708 LABELV $704 line 1033 ;1033: if (uiVars) { ADDRFP4 0 INDIRI4 CNSTI4 0 EQI4 $713 line 1034 ;1034: trap_Cvar_Set("ui_captureLimit", va("%d", cap)); ADDRGP4 $716 ARGP4 ADDRLP4 0 INDIRI4 ARGI4 ADDRLP4 8 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $715 ARGP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1035 ;1035: trap_Cvar_Set("ui_fragLimit", va("%d", frag)); ADDRGP4 $716 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $717 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1036 ;1036: } else { ADDRGP4 $714 JUMPV LABELV $713 line 1037 ;1037: trap_Cvar_Set("capturelimit", va("%d", cap)); ADDRGP4 $716 ARGP4 ADDRLP4 0 INDIRI4 ARGI4 ADDRLP4 8 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $718 ARGP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1038 ;1038: trap_Cvar_Set("fraglimit", va("%d", frag)); ADDRGP4 $716 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $719 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1039 ;1039: } LABELV $714 line 1040 ;1040:} LABELV $702 endproc UI_SetCapFragLimits 16 8 proc UI_DrawGameType 4 32 line 1042 ;1041:// ui_gameType assumes gametype 0 is -1 ALL and will not show ;1042:static void UI_DrawGameType(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1043 ;1043: Text_Paint(rect->x, rect->y, scale, color, uiInfo.gameTypes[ui_gameType.integer].gameType, 0, 0, textStyle); ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 INDIRP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580 ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1044 ;1044:} LABELV $720 endproc UI_DrawGameType 4 32 proc UI_DrawNetGameType 4 32 line 1046 ;1045: ;1046:static void UI_DrawNetGameType(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1047 ;1047: if (ui_netGameType.integer < 0 || ui_netGameType.integer > uiInfo.numGameTypes) { ADDRGP4 ui_netGameType+12 INDIRI4 CNSTI4 0 LTI4 $729 ADDRGP4 ui_netGameType+12 INDIRI4 ADDRGP4 uiInfo+78576 INDIRI4 LEI4 $724 LABELV $729 line 1048 ;1048: trap_Cvar_Set("ui_netGameType", "0"); ADDRGP4 $730 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1049 ;1049: trap_Cvar_Set("ui_actualNetGameType", "0"); ADDRGP4 $731 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1050 ;1050: } LABELV $724 line 1051 ;1051: Text_Paint(rect->x, rect->y, scale, color, uiInfo.gameTypes[ui_netGameType.integer].gameType , 0, 0, textStyle); ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 INDIRP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 ui_netGameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580 ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1052 ;1052:} LABELV $723 endproc UI_DrawNetGameType 4 32 proc UI_DrawJoinGameType 4 32 line 1054 ;1053: ;1054:static void UI_DrawJoinGameType(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1055 ;1055: if (ui_joinGameType.integer < 0 || ui_joinGameType.integer > uiInfo.numJoinGameTypes) { ADDRGP4 ui_joinGameType+12 INDIRI4 CNSTI4 0 LTI4 $740 ADDRGP4 ui_joinGameType+12 INDIRI4 ADDRGP4 uiInfo+78708 INDIRI4 LEI4 $735 LABELV $740 line 1056 ;1056: trap_Cvar_Set("ui_joinGameType", "0"); ADDRGP4 $741 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1057 ;1057: } LABELV $735 line 1058 ;1058: Text_Paint(rect->x, rect->y, scale, color, uiInfo.joinGameTypes[ui_joinGameType.integer].gameType , 0, 0, textStyle); ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 INDIRP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 ui_joinGameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78712 ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1059 ;1059:} LABELV $734 endproc UI_DrawJoinGameType 4 32 proc UI_TeamIndexFromName 12 8 line 1063 ;1060: ;1061: ;1062: ;1063:static int UI_TeamIndexFromName(const char *name) { line 1066 ;1064: int i; ;1065: ;1066: if (name && *name) { ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $745 ADDRLP4 4 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $745 line 1067 ;1067: for (i = 0; i < uiInfo.teamCount; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $750 JUMPV LABELV $747 line 1068 ;1068: if (Q_stricmp(name, uiInfo.teamList[i].teamName) == 0) { ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 CNSTI4 0 NEI4 $752 line 1069 ;1069: return i; ADDRLP4 0 INDIRI4 RETI4 ADDRGP4 $744 JUMPV LABELV $752 line 1071 ;1070: } ;1071: } LABELV $748 line 1067 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $750 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 LTI4 $747 line 1072 ;1072: } LABELV $745 line 1074 ;1073: ;1074: return 0; CNSTI4 0 RETI4 LABELV $744 endproc UI_TeamIndexFromName 12 8 proc UI_DrawClanLogo 48 20 line 1078 ;1075: ;1076:} ;1077: ;1078:static void UI_DrawClanLogo(rectDef_t *rect, float scale, vec4_t color) { line 1080 ;1079: int i; ;1080: i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1081 ;1081: if (i >= 0 && i < uiInfo.teamCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $756 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 GEI4 $756 line 1082 ;1082: trap_R_SetColor( color ); ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1084 ;1083: ;1084: if (uiInfo.teamList[i].teamIcon == -1) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $759 line 1085 ;1085: uiInfo.teamList[i].teamIcon = trap_R_RegisterShaderNoMip(uiInfo.teamList[i].imageName); ADDRLP4 16 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 16 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 20 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 16 INDIRI4 ADDRGP4 uiInfo+75760+28 ADDP4 ADDRLP4 20 INDIRI4 ASGNI4 line 1086 ;1086: uiInfo.teamList[i].teamIcon_Metal = trap_R_RegisterShaderNoMip(va("%s_metal",uiInfo.teamList[i].imageName)); ADDRGP4 $769 ARGP4 ADDRLP4 24 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 24 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 28 INDIRP4 ARGP4 ADDRLP4 32 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 ADDRGP4 uiInfo+75760+32 ADDP4 ADDRLP4 32 INDIRI4 ASGNI4 line 1087 ;1087: uiInfo.teamList[i].teamIcon_Name = trap_R_RegisterShaderNoMip(va("%s_name", uiInfo.teamList[i].imageName)); ADDRGP4 $774 ARGP4 ADDRLP4 36 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 36 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 40 INDIRP4 ARGP4 ADDRLP4 44 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 ADDRGP4 uiInfo+75760+36 ADDP4 ADDRLP4 44 INDIRI4 ASGNI4 line 1088 ;1088: } LABELV $759 line 1090 ;1089: ;1090: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon); ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1091 ;1091: trap_R_SetColor(NULL); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1092 ;1092: } LABELV $756 line 1093 ;1093:} LABELV $755 endproc UI_DrawClanLogo 48 20 proc UI_DrawClanCinematic 32 24 line 1095 ;1094: ;1095:static void UI_DrawClanCinematic(rectDef_t *rect, float scale, vec4_t color) { line 1097 ;1096: int i; ;1097: i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1098 ;1098: if (i >= 0 && i < uiInfo.teamCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $780 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 GEI4 $780 line 1100 ;1099: ;1100: if (uiInfo.teamList[i].cinematic >= -2) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 CNSTI4 -2 LTI4 $783 line 1101 ;1101: if (uiInfo.teamList[i].cinematic == -1) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $787 line 1102 ;1102: uiInfo.teamList[i].cinematic = trap_CIN_PlayCinematic(va("%s.roq", uiInfo.teamList[i].imageName), 0, 0, 0, 0, (CIN_loop | CIN_silent) ); ADDRGP4 $793 ARGP4 ADDRLP4 16 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 16 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 20 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 20 INDIRP4 ARGP4 ADDRLP4 24 CNSTI4 0 ASGNI4 ADDRLP4 24 INDIRI4 ARGI4 ADDRLP4 24 INDIRI4 ARGI4 ADDRLP4 24 INDIRI4 ARGI4 ADDRLP4 24 INDIRI4 ARGI4 CNSTI4 10 ARGI4 ADDRLP4 28 ADDRGP4 trap_CIN_PlayCinematic CALLI4 ASGNI4 ADDRLP4 16 INDIRI4 ADDRGP4 uiInfo+75760+40 ADDP4 ADDRLP4 28 INDIRI4 ASGNI4 line 1103 ;1103: } LABELV $787 line 1104 ;1104: if (uiInfo.teamList[i].cinematic >= 0) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 CNSTI4 0 LTI4 $796 line 1105 ;1105: trap_CIN_RunCinematic(uiInfo.teamList[i].cinematic); CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_CIN_RunCinematic CALLI4 pop line 1106 ;1106: trap_CIN_SetExtents(uiInfo.teamList[i].cinematic, rect->x, rect->y, rect->w, rect->h); CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 ARGI4 ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 16 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 16 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRGP4 trap_CIN_SetExtents CALLV pop line 1107 ;1107: trap_CIN_DrawCinematic(uiInfo.teamList[i].cinematic); CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_CIN_DrawCinematic CALLV pop line 1108 ;1108: } else { ADDRGP4 $784 JUMPV LABELV $796 line 1109 ;1109: trap_R_SetColor( color ); ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1110 ;1110: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon_Metal); ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+32 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1111 ;1111: trap_R_SetColor(NULL); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1112 ;1112: uiInfo.teamList[i].cinematic = -2; CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 CNSTI4 -2 ASGNI4 line 1113 ;1113: } line 1114 ;1114: } else { ADDRGP4 $784 JUMPV LABELV $783 line 1115 ;1115: trap_R_SetColor( color ); ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1116 ;1116: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon); ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1117 ;1117: trap_R_SetColor(NULL); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1118 ;1118: } LABELV $784 line 1119 ;1119: } LABELV $780 line 1121 ;1120: ;1121:} LABELV $779 endproc UI_DrawClanCinematic 32 24 proc UI_DrawPreviewCinematic 16 24 line 1123 ;1122: ;1123:static void UI_DrawPreviewCinematic(rectDef_t *rect, float scale, vec4_t color) { line 1124 ;1124: if (uiInfo.previewMovie > -2) { ADDRGP4 uiInfo+99260 INDIRI4 CNSTI4 -2 LEI4 $813 line 1125 ;1125: uiInfo.previewMovie = trap_CIN_PlayCinematic(va("%s.roq", uiInfo.movieList[uiInfo.movieIndex]), 0, 0, 0, 0, (CIN_loop | CIN_silent) ); ADDRGP4 $793 ARGP4 ADDRGP4 uiInfo+99256 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+98228 ADDP4 INDIRP4 ARGP4 ADDRLP4 0 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 4 INDIRI4 ARGI4 CNSTI4 10 ARGI4 ADDRLP4 8 ADDRGP4 trap_CIN_PlayCinematic CALLI4 ASGNI4 ADDRGP4 uiInfo+99260 ADDRLP4 8 INDIRI4 ASGNI4 line 1126 ;1126: if (uiInfo.previewMovie >= 0) { ADDRGP4 uiInfo+99260 INDIRI4 CNSTI4 0 LTI4 $819 line 1127 ;1127: trap_CIN_RunCinematic(uiInfo.previewMovie); ADDRGP4 uiInfo+99260 INDIRI4 ARGI4 ADDRGP4 trap_CIN_RunCinematic CALLI4 pop line 1128 ;1128: trap_CIN_SetExtents(uiInfo.previewMovie, rect->x, rect->y, rect->w, rect->h); ADDRGP4 uiInfo+99260 INDIRI4 ARGI4 ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRGP4 trap_CIN_SetExtents CALLV pop line 1129 ;1129: trap_CIN_DrawCinematic(uiInfo.previewMovie); ADDRGP4 uiInfo+99260 INDIRI4 ARGI4 ADDRGP4 trap_CIN_DrawCinematic CALLV pop line 1130 ;1130: } else { ADDRGP4 $820 JUMPV LABELV $819 line 1131 ;1131: uiInfo.previewMovie = -2; ADDRGP4 uiInfo+99260 CNSTI4 -2 ASGNI4 line 1132 ;1132: } LABELV $820 line 1133 ;1133: } LABELV $813 line 1135 ;1134: ;1135:} LABELV $812 endproc UI_DrawPreviewCinematic 16 24 proc UI_DrawSkill 16 32 line 1139 ;1136: ;1137: ;1138: ;1139:static void UI_DrawSkill(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1141 ;1140: int i; ;1141: i = trap_Cvar_VariableValue( "g_spSkill" ); ADDRGP4 $827 ARGP4 ADDRLP4 4 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 4 INDIRF4 CVFI4 4 ASGNI4 line 1142 ;1142: if (i < 1 || i > numSkillLevels) { ADDRLP4 0 INDIRI4 CNSTI4 1 LTI4 $830 ADDRLP4 0 INDIRI4 ADDRGP4 numSkillLevels INDIRI4 LEI4 $828 LABELV $830 line 1143 ;1143: i = 1; ADDRLP4 0 CNSTI4 1 ASGNI4 line 1144 ;1144: } LABELV $828 line 1145 ;1145: Text_Paint(rect->x, rect->y, scale, color, skillLevels[i-1],0, 0, textStyle); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 skillLevels-4 ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1146 ;1146:} LABELV $826 endproc UI_DrawSkill 16 32 proc UI_DrawTeamName 32 32 line 1149 ;1147: ;1148: ;1149:static void UI_DrawTeamName(rectDef_t *rect, float scale, vec4_t color, qboolean blue, int textStyle) { line 1151 ;1150: int i; ;1151: i = UI_TeamIndexFromName(UI_Cvar_VariableString((blue) ? "ui_blueTeam" : "ui_redTeam")); ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $836 ADDRLP4 4 ADDRGP4 $833 ASGNP4 ADDRGP4 $837 JUMPV LABELV $836 ADDRLP4 4 ADDRGP4 $834 ASGNP4 LABELV $837 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 12 INDIRI4 ASGNI4 line 1152 ;1152: if (i >= 0 && i < uiInfo.teamCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $838 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 GEI4 $838 line 1153 ;1153: Text_Paint(rect->x, rect->y, scale, color, va("%s: %s", (blue) ? "Blue" : "Red", uiInfo.teamList[i].teamName),0, 0, textStyle); ADDRGP4 $841 ARGP4 ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $846 ADDRLP4 20 ADDRGP4 $842 ASGNP4 ADDRGP4 $847 JUMPV LABELV $846 ADDRLP4 20 ADDRGP4 $843 ASGNP4 LABELV $847 ADDRLP4 20 INDIRP4 ARGP4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 28 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 28 INDIRP4 INDIRF4 ARGF4 ADDRLP4 28 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 24 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 16 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1154 ;1154: } LABELV $838 line 1155 ;1155:} LABELV $832 endproc UI_DrawTeamName 32 32 proc UI_DrawTeamMember 28 32 line 1157 ;1156: ;1157:static void UI_DrawTeamMember(rectDef_t *rect, float scale, vec4_t color, qboolean blue, int num, int textStyle) { line 1161 ;1158: // 0 - None ;1159: // 1 - Human ;1160: // 2..NumCharacters - Bot ;1161: int value = trap_Cvar_VariableValue(va(blue ? "ui_blueteam%i" : "ui_redteam%i", num)); ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $852 ADDRLP4 8 ADDRGP4 $849 ASGNP4 ADDRGP4 $853 JUMPV LABELV $852 ADDRLP4 8 ADDRGP4 $850 ASGNP4 LABELV $853 ADDRLP4 8 INDIRP4 ARGP4 ADDRFP4 16 INDIRI4 ARGI4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 16 INDIRF4 CVFI4 4 ASGNI4 line 1163 ;1162: const char *text; ;1163: if (value <= 0) { ADDRLP4 0 INDIRI4 CNSTI4 0 GTI4 $854 line 1164 ;1164: text = "Closed"; ADDRLP4 4 ADDRGP4 $856 ASGNP4 line 1165 ;1165: } else if (value == 1) { ADDRGP4 $855 JUMPV LABELV $854 ADDRLP4 0 INDIRI4 CNSTI4 1 NEI4 $857 line 1166 ;1166: text = "Human"; ADDRLP4 4 ADDRGP4 $859 ASGNP4 line 1167 ;1167: } else { ADDRGP4 $858 JUMPV LABELV $857 line 1168 ;1168: value -= 2; ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 2 SUBI4 ASGNI4 line 1170 ;1169: ;1170: if (ui_actualNetGameType.integer >= GT_TEAM) { ADDRGP4 ui_actualNetGameType+12 INDIRI4 CNSTI4 3 LTI4 $860 line 1171 ;1171: if (value >= uiInfo.characterCount) { ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 LTI4 $863 line 1172 ;1172: value = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1173 ;1173: } LABELV $863 line 1174 ;1174: text = uiInfo.characterList[value].name; ADDRLP4 4 CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 ASGNP4 line 1175 ;1175: } else { ADDRGP4 $861 JUMPV LABELV $860 line 1176 ;1176: if (value >= UI_GetNumBots()) { ADDRLP4 20 ADDRGP4 UI_GetNumBots CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 ADDRLP4 20 INDIRI4 LTI4 $867 line 1177 ;1177: value = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1178 ;1178: } LABELV $867 line 1179 ;1179: text = UI_GetBotNameByNumber(value); ADDRLP4 0 INDIRI4 ARGI4 ADDRLP4 24 ADDRGP4 UI_GetBotNameByNumber CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 24 INDIRP4 ASGNP4 line 1180 ;1180: } LABELV $861 line 1181 ;1181: } LABELV $858 LABELV $855 line 1182 ;1182: Text_Paint(rect->x, rect->y, scale, color, text, 0, 0, textStyle); ADDRLP4 20 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 20 INDIRP4 INDIRF4 ARGF4 ADDRLP4 20 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 20 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1183 ;1183:} LABELV $848 endproc UI_DrawTeamMember 28 32 proc UI_DrawEffects 16 20 line 1185 ;1184: ;1185:static void UI_DrawEffects(rectDef_t *rect, float scale, vec4_t color) { line 1186 ;1186: UI_DrawHandlePic( rect->x, rect->y - 14, 128, 8, uiInfo.uiDC.Assets.fxBasePic ); ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 INDIRP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 CNSTF4 1096810496 SUBF4 ARGF4 CNSTF4 1124073472 ARGF4 CNSTF4 1090519040 ARGF4 ADDRGP4 uiInfo+228+61768 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1187 ;1187: UI_DrawHandlePic( rect->x + uiInfo.effectsColor * 16 + 8, rect->y - 16, 16, 12, uiInfo.uiDC.Assets.fxPic[uiInfo.effectsColor] ); ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 8 CNSTI4 4 ASGNI4 ADDRLP4 4 INDIRP4 INDIRF4 ADDRGP4 uiInfo+136904 INDIRI4 ADDRLP4 8 INDIRI4 LSHI4 CVIF4 4 ADDF4 CNSTF4 1090519040 ADDF4 ARGF4 ADDRLP4 12 CNSTF4 1098907648 ASGNF4 ADDRLP4 4 INDIRP4 ADDRLP4 8 INDIRI4 ADDP4 INDIRF4 ADDRLP4 12 INDIRF4 SUBF4 ARGF4 ADDRLP4 12 INDIRF4 ARGF4 CNSTF4 1094713344 ARGF4 ADDRGP4 uiInfo+136904 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+228+61772 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1188 ;1188:} LABELV $869 endproc UI_DrawEffects 16 20 proc UI_DrawMapPreview 20 20 line 1190 ;1189: ;1190:static void UI_DrawMapPreview(rectDef_t *rect, float scale, vec4_t color, qboolean net) { line 1191 ;1191: int map = (net) ? ui_currentNetMap.integer : ui_currentMap.integer; ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $880 ADDRLP4 4 ADDRGP4 ui_currentNetMap+12 INDIRI4 ASGNI4 ADDRGP4 $881 JUMPV LABELV $880 ADDRLP4 4 ADDRGP4 ui_currentMap+12 INDIRI4 ASGNI4 LABELV $881 ADDRLP4 0 ADDRLP4 4 INDIRI4 ASGNI4 line 1192 ;1192: if (map < 0 || map > uiInfo.mapCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $885 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LEI4 $882 LABELV $885 line 1193 ;1193: if (net) { ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $886 line 1194 ;1194: ui_currentNetMap.integer = 0; ADDRGP4 ui_currentNetMap+12 CNSTI4 0 ASGNI4 line 1195 ;1195: trap_Cvar_Set("ui_currentNetMap", "0"); ADDRGP4 $889 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1196 ;1196: } else { ADDRGP4 $887 JUMPV LABELV $886 line 1197 ;1197: ui_currentMap.integer = 0; ADDRGP4 ui_currentMap+12 CNSTI4 0 ASGNI4 line 1198 ;1198: trap_Cvar_Set("ui_currentMap", "0"); ADDRGP4 $891 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1199 ;1199: } LABELV $887 line 1200 ;1200: map = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1201 ;1201: } LABELV $882 line 1203 ;1202: ;1203: if (uiInfo.mapList[map].levelShot == -1) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+92 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $892 line 1204 ;1204: uiInfo.mapList[map].levelShot = trap_R_RegisterShaderNoMip(uiInfo.mapList[map].imageName); ADDRLP4 12 CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+83228+8 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+83228+92 ADDP4 ADDRLP4 16 INDIRI4 ASGNI4 line 1205 ;1205: } LABELV $892 line 1207 ;1206: ;1207: if (uiInfo.mapList[map].levelShot > 0) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+92 ADDP4 INDIRI4 CNSTI4 0 LEI4 $900 line 1208 ;1208: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.mapList[map].levelShot); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+92 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1209 ;1209: } else { ADDRGP4 $901 JUMPV LABELV $900 line 1210 ;1210: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, trap_R_RegisterShaderNoMip("menu/art/unknownmap")); ADDRGP4 $906 ARGP4 ADDRLP4 12 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1211 ;1211: } LABELV $901 line 1212 ;1212:} LABELV $876 endproc UI_DrawMapPreview 20 20 proc UI_DrawMapTimeToBeat 20 32 line 1215 ;1213: ;1214: ;1215:static void UI_DrawMapTimeToBeat(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1217 ;1216: int minutes, seconds, time; ;1217: if (ui_currentMap.integer < 0 || ui_currentMap.integer > uiInfo.mapCount) { ADDRGP4 ui_currentMap+12 INDIRI4 CNSTI4 0 LTI4 $913 ADDRGP4 ui_currentMap+12 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LEI4 $908 LABELV $913 line 1218 ;1218: ui_currentMap.integer = 0; ADDRGP4 ui_currentMap+12 CNSTI4 0 ASGNI4 line 1219 ;1219: trap_Cvar_Set("ui_currentMap", "0"); ADDRGP4 $891 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1220 ;1220: } LABELV $908 line 1222 ;1221: ;1222: time = uiInfo.mapList[ui_currentMap.integer].timeToBeat[uiInfo.gameTypes[ui_gameType.integer].gtEnum]; ADDRLP4 0 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+28 ADDP4 ADDP4 INDIRI4 ASGNI4 line 1224 ;1223: ;1224: minutes = time / 60; ADDRLP4 4 ADDRLP4 0 INDIRI4 CNSTI4 60 DIVI4 ASGNI4 line 1225 ;1225: seconds = time % 60; ADDRLP4 8 ADDRLP4 0 INDIRI4 CNSTI4 60 MODI4 ASGNI4 line 1227 ;1226: ;1227: Text_Paint(rect->x, rect->y, scale, color, va("%02i:%02i", minutes, seconds), 0, 0, textStyle); ADDRGP4 $921 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 8 INDIRI4 ARGI4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1228 ;1228:} LABELV $907 endproc UI_DrawMapTimeToBeat 20 32 proc UI_DrawMapCinematic 28 24 line 1232 ;1229: ;1230: ;1231: ;1232:static void UI_DrawMapCinematic(rectDef_t *rect, float scale, vec4_t color, qboolean net) { line 1234 ;1233: ;1234: int map = (net) ? ui_currentNetMap.integer : ui_currentMap.integer; ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $926 ADDRLP4 4 ADDRGP4 ui_currentNetMap+12 INDIRI4 ASGNI4 ADDRGP4 $927 JUMPV LABELV $926 ADDRLP4 4 ADDRGP4 ui_currentMap+12 INDIRI4 ASGNI4 LABELV $927 ADDRLP4 0 ADDRLP4 4 INDIRI4 ASGNI4 line 1235 ;1235: if (map < 0 || map > uiInfo.mapCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $931 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LEI4 $928 LABELV $931 line 1236 ;1236: if (net) { ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $932 line 1237 ;1237: ui_currentNetMap.integer = 0; ADDRGP4 ui_currentNetMap+12 CNSTI4 0 ASGNI4 line 1238 ;1238: trap_Cvar_Set("ui_currentNetMap", "0"); ADDRGP4 $889 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1239 ;1239: } else { ADDRGP4 $933 JUMPV LABELV $932 line 1240 ;1240: ui_currentMap.integer = 0; ADDRGP4 ui_currentMap+12 CNSTI4 0 ASGNI4 line 1241 ;1241: trap_Cvar_Set("ui_currentMap", "0"); ADDRGP4 $891 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1242 ;1242: } LABELV $933 line 1243 ;1243: map = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1244 ;1244: } LABELV $928 line 1246 ;1245: ;1246: if (uiInfo.mapList[map].cinematic >= -1) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 CNSTI4 -1 LTI4 $936 line 1247 ;1247: if (uiInfo.mapList[map].cinematic == -1) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $940 line 1248 ;1248: uiInfo.mapList[map].cinematic = trap_CIN_PlayCinematic(va("%s.roq", uiInfo.mapList[map].mapLoadName), 0, 0, 0, 0, (CIN_loop | CIN_silent) ); ADDRGP4 $793 ARGP4 ADDRLP4 12 CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 16 INDIRP4 ARGP4 ADDRLP4 20 CNSTI4 0 ASGNI4 ADDRLP4 20 INDIRI4 ARGI4 ADDRLP4 20 INDIRI4 ARGI4 ADDRLP4 20 INDIRI4 ARGI4 ADDRLP4 20 INDIRI4 ARGI4 CNSTI4 10 ARGI4 ADDRLP4 24 ADDRGP4 trap_CIN_PlayCinematic CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+83228+24 ADDP4 ADDRLP4 24 INDIRI4 ASGNI4 line 1249 ;1249: } LABELV $940 line 1250 ;1250: if (uiInfo.mapList[map].cinematic >= 0) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 CNSTI4 0 LTI4 $948 line 1251 ;1251: trap_CIN_RunCinematic(uiInfo.mapList[map].cinematic); CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_CIN_RunCinematic CALLI4 pop line 1252 ;1252: trap_CIN_SetExtents(uiInfo.mapList[map].cinematic, rect->x, rect->y, rect->w, rect->h); CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 ARGI4 ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRGP4 trap_CIN_SetExtents CALLV pop line 1253 ;1253: trap_CIN_DrawCinematic(uiInfo.mapList[map].cinematic); CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_CIN_DrawCinematic CALLV pop line 1254 ;1254: } else { ADDRGP4 $937 JUMPV LABELV $948 line 1255 ;1255: uiInfo.mapList[map].cinematic = -2; CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 CNSTI4 -2 ASGNI4 line 1256 ;1256: } line 1257 ;1257: } else { ADDRGP4 $937 JUMPV LABELV $936 line 1258 ;1258: UI_DrawMapPreview(rect, scale, color, net); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 UI_DrawMapPreview CALLV pop line 1259 ;1259: } LABELV $937 line 1260 ;1260:} LABELV $922 endproc UI_DrawMapCinematic 28 24 data align 4 LABELV updateModel byte 4 1 align 4 LABELV q3Model byte 4 0 bss align 4 LABELV $961 skip 1276 code proc UI_DrawPlayerModel 616 28 line 1267 ;1261: ;1262: ;1263: ;1264:static qboolean updateModel = qtrue; ;1265:static qboolean q3Model = qfalse; ;1266: ;1267:static void UI_DrawPlayerModel(rectDef_t *rect) { line 1275 ;1268: static playerInfo_t info; ;1269: char model[MAX_QPATH]; ;1270: char team[256]; ;1271: char head[256]; ;1272: vec3_t viewangles; ;1273: vec3_t moveangles; ;1274: ;1275: if (trap_Cvar_VariableValue("ui_Q3Model")) { ADDRGP4 $964 ARGP4 ADDRLP4 600 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 600 INDIRF4 CNSTF4 0 EQF4 $962 line 1276 ;1276: strcpy(model, UI_Cvar_VariableString("model")); ADDRGP4 $965 ARGP4 ADDRLP4 604 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 12 ARGP4 ADDRLP4 604 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 1277 ;1277: strcpy(head, UI_Cvar_VariableString("headmodel")); ADDRGP4 $966 ARGP4 ADDRLP4 608 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 332 ARGP4 ADDRLP4 608 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 1278 ;1278: if (!q3Model) { ADDRGP4 q3Model INDIRI4 CNSTI4 0 NEI4 $967 line 1279 ;1279: q3Model = qtrue; ADDRGP4 q3Model CNSTI4 1 ASGNI4 line 1280 ;1280: updateModel = qtrue; ADDRGP4 updateModel CNSTI4 1 ASGNI4 line 1281 ;1281: } LABELV $967 line 1282 ;1282: team[0] = '\0'; ADDRLP4 76 CNSTI1 0 ASGNI1 line 1283 ;1283: } else { ADDRGP4 $963 JUMPV LABELV $962 line 1285 ;1284: ;1285: strcpy(team, UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 604 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 76 ARGP4 ADDRLP4 604 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 1286 ;1286: strcpy(model, UI_Cvar_VariableString("team_model")); ADDRGP4 $969 ARGP4 ADDRLP4 608 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 12 ARGP4 ADDRLP4 608 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 1287 ;1287: strcpy(head, UI_Cvar_VariableString("team_headmodel")); ADDRGP4 $970 ARGP4 ADDRLP4 612 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 332 ARGP4 ADDRLP4 612 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 1288 ;1288: if (q3Model) { ADDRGP4 q3Model INDIRI4 CNSTI4 0 EQI4 $971 line 1289 ;1289: q3Model = qfalse; ADDRGP4 q3Model CNSTI4 0 ASGNI4 line 1290 ;1290: updateModel = qtrue; ADDRGP4 updateModel CNSTI4 1 ASGNI4 line 1291 ;1291: } LABELV $971 line 1292 ;1292: } LABELV $963 line 1293 ;1293: if (updateModel) { ADDRGP4 updateModel INDIRI4 CNSTI4 0 EQI4 $973 line 1294 ;1294: memset( &info, 0, sizeof(playerInfo_t) ); ADDRGP4 $961 ARGP4 CNSTI4 0 ARGI4 CNSTI4 1276 ARGI4 ADDRGP4 memset CALLP4 pop line 1295 ;1295: viewangles[YAW] = 180 - 10; ADDRLP4 0+4 CNSTF4 1126825984 ASGNF4 line 1296 ;1296: viewangles[PITCH] = 0; ADDRLP4 0 CNSTF4 0 ASGNF4 line 1297 ;1297: viewangles[ROLL] = 0; ADDRLP4 0+8 CNSTF4 0 ASGNF4 line 1298 ;1298: VectorClear( moveangles ); ADDRLP4 604 CNSTF4 0 ASGNF4 ADDRLP4 588+8 ADDRLP4 604 INDIRF4 ASGNF4 ADDRLP4 588+4 ADDRLP4 604 INDIRF4 ASGNF4 ADDRLP4 588 ADDRLP4 604 INDIRF4 ASGNF4 line 1299 ;1299: UI_PlayerInfo_SetModel( &info, model, head, team); ADDRGP4 $961 ARGP4 ADDRLP4 12 ARGP4 ADDRLP4 332 ARGP4 ADDRLP4 76 ARGP4 ADDRGP4 UI_PlayerInfo_SetModel CALLV pop line 1301 ;1300: //Blaze: Changed WP_MACHINEGUN to WP_PISTOL ;1301: UI_PlayerInfo_SetInfo( &info, LEGS_IDLE, TORSO_STAND, viewangles, vec3_origin, WP_PISTOL, qfalse ); ADDRGP4 $961 ARGP4 CNSTI4 22 ARGI4 CNSTI4 11 ARGI4 ADDRLP4 0 ARGP4 ADDRGP4 vec3_origin ARGP4 CNSTI4 1 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 UI_PlayerInfo_SetInfo CALLV pop line 1303 ;1302:// UI_RegisterClientModelname( &info, model, head, team); ;1303: updateModel = qfalse; ADDRGP4 updateModel CNSTI4 0 ASGNI4 line 1304 ;1304: } LABELV $973 line 1306 ;1305: ;1306: UI_DrawPlayer( rect->x, rect->y, rect->w, rect->h, &info, uiInfo.uiDC.realTime / 2); ADDRLP4 604 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 604 INDIRP4 INDIRF4 ARGF4 ADDRLP4 604 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 604 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 604 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 ADDRGP4 $961 ARGP4 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 2 DIVI4 ARGI4 ADDRGP4 UI_DrawPlayer CALLV pop line 1308 ;1307: ;1308:} LABELV $960 endproc UI_DrawPlayerModel 616 28 proc UI_DrawNetSource 8 32 line 1310 ;1309: ;1310:static void UI_DrawNetSource(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1311 ;1311: if (ui_netSource.integer < 0 || ui_netSource.integer > uiInfo.numGameTypes) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 0 LTI4 $986 ADDRGP4 ui_netSource+12 INDIRI4 ADDRGP4 uiInfo+78576 INDIRI4 LEI4 $981 LABELV $986 line 1312 ;1312: ui_netSource.integer = 0; ADDRGP4 ui_netSource+12 CNSTI4 0 ASGNI4 line 1313 ;1313: } LABELV $981 line 1314 ;1314: Text_Paint(rect->x, rect->y, scale, color, va("Source: %s", netSources[ui_netSource.integer]), 0, 0, textStyle); ADDRGP4 $988 ARGP4 ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 netSources ADDP4 INDIRP4 ARGP4 ADDRLP4 0 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1315 ;1315:} LABELV $980 endproc UI_DrawNetSource 8 32 proc UI_DrawNetMapPreview 8 20 line 1317 ;1316: ;1317:static void UI_DrawNetMapPreview(rectDef_t *rect, float scale, vec4_t color) { line 1319 ;1318: ;1319: if (uiInfo.serverStatus.currentServerPreview > 0) { ADDRGP4 uiInfo+99264+10428 INDIRI4 CNSTI4 0 LEI4 $991 line 1320 ;1320: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.serverStatus.currentServerPreview); ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 INDIRP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 ADDRGP4 uiInfo+99264+10428 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1321 ;1321: } else { ADDRGP4 $992 JUMPV LABELV $991 line 1322 ;1322: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, trap_R_RegisterShaderNoMip("menu/art/unknownmap")); ADDRGP4 $906 ARGP4 ADDRLP4 0 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1323 ;1323: } LABELV $992 line 1324 ;1324:} LABELV $990 endproc UI_DrawNetMapPreview 8 20 proc UI_DrawNetMapCinematic 4 20 line 1326 ;1325: ;1326:static void UI_DrawNetMapCinematic(rectDef_t *rect, float scale, vec4_t color) { line 1327 ;1327: if (ui_currentNetMap.integer < 0 || ui_currentNetMap.integer > uiInfo.mapCount) { ADDRGP4 ui_currentNetMap+12 INDIRI4 CNSTI4 0 LTI4 $1003 ADDRGP4 ui_currentNetMap+12 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LEI4 $998 LABELV $1003 line 1328 ;1328: ui_currentNetMap.integer = 0; ADDRGP4 ui_currentNetMap+12 CNSTI4 0 ASGNI4 line 1329 ;1329: trap_Cvar_Set("ui_currentNetMap", "0"); ADDRGP4 $889 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1330 ;1330: } LABELV $998 line 1332 ;1331: ;1332: if (uiInfo.serverStatus.currentServerCinematic >= 0) { ADDRGP4 uiInfo+99264+10432 INDIRI4 CNSTI4 0 LTI4 $1005 line 1333 ;1333: trap_CIN_RunCinematic(uiInfo.serverStatus.currentServerCinematic); ADDRGP4 uiInfo+99264+10432 INDIRI4 ARGI4 ADDRGP4 trap_CIN_RunCinematic CALLI4 pop line 1334 ;1334: trap_CIN_SetExtents(uiInfo.serverStatus.currentServerCinematic, rect->x, rect->y, rect->w, rect->h); ADDRGP4 uiInfo+99264+10432 INDIRI4 ARGI4 ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 INDIRP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 0 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 0 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 CVFI4 4 ARGI4 ADDRGP4 trap_CIN_SetExtents CALLV pop line 1335 ;1335: trap_CIN_DrawCinematic(uiInfo.serverStatus.currentServerCinematic); ADDRGP4 uiInfo+99264+10432 INDIRI4 ARGI4 ADDRGP4 trap_CIN_DrawCinematic CALLV pop line 1336 ;1336: } else { ADDRGP4 $1006 JUMPV LABELV $1005 line 1337 ;1337: UI_DrawNetMapPreview(rect, scale, color); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 UI_DrawNetMapPreview CALLV pop line 1338 ;1338: } LABELV $1006 line 1339 ;1339:} LABELV $997 endproc UI_DrawNetMapCinematic 4 20 proc UI_DrawNetFilter 8 32 line 1343 ;1340: ;1341: ;1342: ;1343:static void UI_DrawNetFilter(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1344 ;1344: if (ui_serverFilterType.integer < 0 || ui_serverFilterType.integer > numServerFilters) { ADDRGP4 ui_serverFilterType+12 INDIRI4 CNSTI4 0 LTI4 $1020 ADDRGP4 ui_serverFilterType+12 INDIRI4 ADDRGP4 numServerFilters INDIRI4 LEI4 $1016 LABELV $1020 line 1345 ;1345: ui_serverFilterType.integer = 0; ADDRGP4 ui_serverFilterType+12 CNSTI4 0 ASGNI4 line 1346 ;1346: } LABELV $1016 line 1347 ;1347: Text_Paint(rect->x, rect->y, scale, color, va("Filter: %s", serverFilters[ui_serverFilterType.integer].description), 0, 0, textStyle); ADDRGP4 $1022 ARGP4 ADDRGP4 ui_serverFilterType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 serverFilters ADDP4 INDIRP4 ARGP4 ADDRLP4 0 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1348 ;1348:} LABELV $1015 endproc UI_DrawNetFilter 8 32 proc UI_DrawTier 20 32 line 1351 ;1349: ;1350: ;1351:static void UI_DrawTier(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1353 ;1352: int i; ;1353: i = trap_Cvar_VariableValue( "ui_currentTier" ); ADDRGP4 $1025 ARGP4 ADDRLP4 4 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 4 INDIRF4 CVFI4 4 ASGNI4 line 1354 ;1354: if (i < 0 || i >= uiInfo.tierCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $1029 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+96028 INDIRI4 LTI4 $1026 LABELV $1029 line 1355 ;1355: i = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1356 ;1356: } LABELV $1026 line 1357 ;1357: Text_Paint(rect->x, rect->y, scale, color, va("Tier: %s", uiInfo.tierList[i].tierName),0, 0, textStyle); ADDRGP4 $1030 ARGP4 CNSTI4 40 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+96032 ADDP4 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1358 ;1358:} LABELV $1024 endproc UI_DrawTier 20 32 proc UI_DrawTierMap 28 20 line 1360 ;1359: ;1360:static void UI_DrawTierMap(rectDef_t *rect, int index) { line 1362 ;1361: int i; ;1362: i = trap_Cvar_VariableValue( "ui_currentTier" ); ADDRGP4 $1025 ARGP4 ADDRLP4 4 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 4 INDIRF4 CVFI4 4 ASGNI4 line 1363 ;1363: if (i < 0 || i >= uiInfo.tierCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $1036 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+96028 INDIRI4 LTI4 $1033 LABELV $1036 line 1364 ;1364: i = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1365 ;1365: } LABELV $1033 line 1367 ;1366: ;1367: if (uiInfo.tierList[i].mapHandles[index] == -1) { ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 40 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+96032+28 ADDP4 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $1037 line 1368 ;1368: uiInfo.tierList[i].mapHandles[index] = trap_R_RegisterShaderNoMip(va("levelshots/%s", uiInfo.tierList[i].maps[index])); ADDRGP4 $1043 ARGP4 ADDRLP4 12 ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 ASGNI4 ADDRLP4 16 CNSTI4 40 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRLP4 16 INDIRI4 ADDRGP4 uiInfo+96032+4 ADDP4 ADDP4 INDIRP4 ARGP4 ADDRLP4 20 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 20 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRLP4 16 INDIRI4 ADDRGP4 uiInfo+96032+28 ADDP4 ADDP4 ADDRLP4 24 INDIRI4 ASGNI4 line 1369 ;1369: } LABELV $1037 line 1371 ;1370: ;1371: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.tierList[i].mapHandles[index]); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 40 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+96032+28 ADDP4 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1372 ;1372:} LABELV $1032 endproc UI_DrawTierMap 28 20 proc UI_EnglishMapName 8 8 line 1374 ;1373: ;1374:static const char *UI_EnglishMapName(const char *map) { line 1376 ;1375: int i; ;1376: for (i = 0; i < uiInfo.mapCount; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $1052 JUMPV LABELV $1049 line 1377 ;1377: if (Q_stricmp(map, uiInfo.mapList[i].mapLoadName) == 0) { ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 4 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 NEI4 $1054 line 1378 ;1378: return uiInfo.mapList[i].mapName; CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228 ADDP4 INDIRP4 RETP4 ADDRGP4 $1048 JUMPV LABELV $1054 line 1380 ;1379: } ;1380: } LABELV $1050 line 1376 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $1052 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LTI4 $1049 line 1381 ;1381: return ""; ADDRGP4 $112 RETP4 LABELV $1048 endproc UI_EnglishMapName 8 8 proc UI_DrawTierMapName 32 32 line 1384 ;1382:} ;1383: ;1384:static void UI_DrawTierMapName(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1386 ;1385: int i, j; ;1386: i = trap_Cvar_VariableValue( "ui_currentTier" ); ADDRGP4 $1025 ARGP4 ADDRLP4 8 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 8 INDIRF4 CVFI4 4 ASGNI4 line 1387 ;1387: if (i < 0 || i >= uiInfo.tierCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $1063 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+96028 INDIRI4 LTI4 $1060 LABELV $1063 line 1388 ;1388: i = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1389 ;1389: } LABELV $1060 line 1390 ;1390: j = trap_Cvar_VariableValue("ui_currentMap"); ADDRGP4 $891 ARGP4 ADDRLP4 16 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 16 INDIRF4 CVFI4 4 ASGNI4 line 1391 ;1391: if (j < 0 || j > MAPS_PER_TIER) { ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $1066 ADDRLP4 4 INDIRI4 CNSTI4 3 LEI4 $1064 LABELV $1066 line 1392 ;1392: j = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 1393 ;1393: } LABELV $1064 line 1395 ;1394: ;1395: Text_Paint(rect->x, rect->y, scale, color, UI_EnglishMapName(uiInfo.tierList[i].maps[j]), 0, 0, textStyle); ADDRLP4 4 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 40 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+96032+4 ADDP4 ADDP4 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 UI_EnglishMapName CALLP4 ASGNP4 ADDRLP4 28 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 28 INDIRP4 INDIRF4 ARGF4 ADDRLP4 28 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 24 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1396 ;1396:} LABELV $1059 endproc UI_DrawTierMapName 32 32 proc UI_DrawTierGameType 28 32 line 1398 ;1397: ;1398:static void UI_DrawTierGameType(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1400 ;1399: int i, j; ;1400: i = trap_Cvar_VariableValue( "ui_currentTier" ); ADDRGP4 $1025 ARGP4 ADDRLP4 8 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 8 INDIRF4 CVFI4 4 ASGNI4 line 1401 ;1401: if (i < 0 || i >= uiInfo.tierCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $1073 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+96028 INDIRI4 LTI4 $1070 LABELV $1073 line 1402 ;1402: i = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1403 ;1403: } LABELV $1070 line 1404 ;1404: j = trap_Cvar_VariableValue("ui_currentMap"); ADDRGP4 $891 ARGP4 ADDRLP4 16 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 16 INDIRF4 CVFI4 4 ASGNI4 line 1405 ;1405: if (j < 0 || j > MAPS_PER_TIER) { ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $1076 ADDRLP4 4 INDIRI4 CNSTI4 3 LEI4 $1074 LABELV $1076 line 1406 ;1406: j = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 1407 ;1407: } LABELV $1074 line 1409 ;1408: ;1409: Text_Paint(rect->x, rect->y, scale, color, uiInfo.gameTypes[uiInfo.tierList[i].gameTypes[j]].gameType , 0, 0, textStyle); ADDRLP4 24 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 24 INDIRP4 INDIRF4 ARGF4 ADDRLP4 24 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 4 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 40 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+96032+16 ADDP4 ADDP4 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580 ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1410 ;1410:} LABELV $1069 endproc UI_DrawTierGameType 28 32 proc UI_OpponentLeaderName 12 4 line 1414 ;1411: ;1412: ;1413:#ifndef MISSIONPACK // bk001206 ;1414:static const char *UI_OpponentLeaderName() { line 1415 ;1415: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1416 ;1416: return uiInfo.teamList[i].teamMembers[0]; CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+8 ADDP4 INDIRP4 RETP4 LABELV $1080 endproc UI_OpponentLeaderName 12 4 proc UI_AIFromName 8 8 line 1420 ;1417:} ;1418:#endif ;1419: ;1420:static const char *UI_AIFromName(const char *name) { line 1422 ;1421: int j; ;1422: for (j = 0; j < uiInfo.aliasCount; j++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $1088 JUMPV LABELV $1085 line 1423 ;1423: if (Q_stricmp(uiInfo.aliasList[j].name, name) == 0) { CNSTI4 12 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+74988 ADDP4 INDIRP4 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 4 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 NEI4 $1090 line 1424 ;1424: return uiInfo.aliasList[j].ai; CNSTI4 12 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+74988+4 ADDP4 INDIRP4 RETP4 ADDRGP4 $1084 JUMPV LABELV $1090 line 1426 ;1425: } ;1426: } LABELV $1086 line 1422 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $1088 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+74984 INDIRI4 LTI4 $1085 line 1427 ;1427: return "James"; ADDRGP4 $1095 RETP4 LABELV $1084 endproc UI_AIFromName 8 8 proc UI_AIIndex 8 8 line 1431 ;1428:} ;1429: ;1430:#ifndef MISSIONPACK // bk001206 ;1431:static const int UI_AIIndex(const char *name) { line 1433 ;1432: int j; ;1433: for (j = 0; j < uiInfo.characterCount; j++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $1100 JUMPV LABELV $1097 line 1434 ;1434: if (Q_stricmp(name, uiInfo.characterList[j].name) == 0) { ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 ARGP4 ADDRLP4 4 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 NEI4 $1102 line 1435 ;1435: return j; ADDRLP4 0 INDIRI4 RETI4 ADDRGP4 $1096 JUMPV LABELV $1102 line 1437 ;1436: } ;1437: } LABELV $1098 line 1433 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $1100 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 LTI4 $1097 line 1438 ;1438: return 0; CNSTI4 0 RETI4 LABELV $1096 endproc UI_AIIndex 8 8 proc UI_AIIndexFromName 12 8 line 1443 ;1439:} ;1440:#endif ;1441: ;1442:#ifndef MISSIONPACK // bk001206 ;1443:static const int UI_AIIndexFromName(const char *name) { line 1445 ;1444: int j; ;1445: for (j = 0; j < uiInfo.aliasCount; j++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $1109 JUMPV LABELV $1106 line 1446 ;1446: if (Q_stricmp(uiInfo.aliasList[j].name, name) == 0) { CNSTI4 12 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+74988 ADDP4 INDIRP4 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 4 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 NEI4 $1111 line 1447 ;1447: return UI_AIIndex(uiInfo.aliasList[j].ai); CNSTI4 12 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+74988+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_AIIndex CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 RETI4 ADDRGP4 $1105 JUMPV LABELV $1111 line 1449 ;1448: } ;1449: } LABELV $1107 line 1445 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $1109 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+74984 INDIRI4 LTI4 $1106 line 1450 ;1450: return 0; CNSTI4 0 RETI4 LABELV $1105 endproc UI_AIIndexFromName 12 8 proc UI_OpponentLeaderHead 12 4 line 1456 ;1451:} ;1452:#endif ;1453: ;1454: ;1455:#ifndef MISSIONPACK // bk001206 ;1456:static const char *UI_OpponentLeaderHead() { line 1457 ;1457: const char *leader = UI_OpponentLeaderName(); ADDRLP4 4 ADDRGP4 UI_OpponentLeaderName CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 4 INDIRP4 ASGNP4 line 1458 ;1458: return UI_AIFromName(leader); ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_AIFromName CALLP4 ASGNP4 ADDRLP4 8 INDIRP4 RETP4 LABELV $1116 endproc UI_OpponentLeaderHead 12 4 proc UI_OpponentLeaderModel 16 8 line 1463 ;1459:} ;1460:#endif ;1461: ;1462:#ifndef MISSIONPACK // bk001206 ;1463:static const char *UI_OpponentLeaderModel() { line 1465 ;1464: int i; ;1465: const char *head = UI_OpponentLeaderHead(); ADDRLP4 8 ADDRGP4 UI_OpponentLeaderHead CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 8 INDIRP4 ASGNP4 line 1466 ;1466: for (i = 0; i < uiInfo.characterCount; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $1121 JUMPV LABELV $1118 line 1467 ;1467: if (Q_stricmp(head, uiInfo.characterList[i].name) == 0) { ADDRLP4 4 INDIRP4 ARGP4 CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 CNSTI4 0 NEI4 $1123 line 1468 ;1468: return uiInfo.characterList[i].base; CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+12 ADDP4 INDIRP4 RETP4 ADDRGP4 $1117 JUMPV LABELV $1123 line 1470 ;1469: } ;1470: } LABELV $1119 line 1466 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $1121 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 LTI4 $1118 line 1471 ;1471: return "James"; ADDRGP4 $1095 RETP4 LABELV $1117 endproc UI_OpponentLeaderModel 16 8 data align 4 LABELV updateOpponentModel byte 4 1 bss align 4 LABELV $1129 skip 1276 code proc UI_DrawOpponent 420 28 line 1477 ;1472:} ;1473:#endif ;1474: ;1475: ;1476:static qboolean updateOpponentModel = qtrue; ;1477:static void UI_DrawOpponent(rectDef_t *rect) { line 1485 ;1478: static playerInfo_t info2; ;1479: char model[MAX_QPATH]; ;1480: char headmodel[MAX_QPATH]; ;1481: char team[256]; ;1482: vec3_t viewangles; ;1483: vec3_t moveangles; ;1484: ;1485: if (updateOpponentModel) { ADDRGP4 updateOpponentModel INDIRI4 CNSTI4 0 EQI4 $1130 line 1487 ;1486: ;1487: strcpy(model, UI_Cvar_VariableString("ui_opponentModel")); ADDRGP4 $1132 ARGP4 ADDRLP4 408 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 12 ARGP4 ADDRLP4 408 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 1488 ;1488: strcpy(headmodel, UI_Cvar_VariableString("ui_opponentModel")); ADDRGP4 $1132 ARGP4 ADDRLP4 412 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 76 ARGP4 ADDRLP4 412 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 1489 ;1489: team[0] = '\0'; ADDRLP4 152 CNSTI1 0 ASGNI1 line 1491 ;1490: ;1491: memset( &info2, 0, sizeof(playerInfo_t) ); ADDRGP4 $1129 ARGP4 CNSTI4 0 ARGI4 CNSTI4 1276 ARGI4 ADDRGP4 memset CALLP4 pop line 1492 ;1492: viewangles[YAW] = 180 - 10; ADDRLP4 0+4 CNSTF4 1126825984 ASGNF4 line 1493 ;1493: viewangles[PITCH] = 0; ADDRLP4 0 CNSTF4 0 ASGNF4 line 1494 ;1494: viewangles[ROLL] = 0; ADDRLP4 0+8 CNSTF4 0 ASGNF4 line 1495 ;1495: VectorClear( moveangles ); ADDRLP4 416 CNSTF4 0 ASGNF4 ADDRLP4 140+8 ADDRLP4 416 INDIRF4 ASGNF4 ADDRLP4 140+4 ADDRLP4 416 INDIRF4 ASGNF4 ADDRLP4 140 ADDRLP4 416 INDIRF4 ASGNF4 line 1496 ;1496: UI_PlayerInfo_SetModel( &info2, model, headmodel, ""); ADDRGP4 $1129 ARGP4 ADDRLP4 12 ARGP4 ADDRLP4 76 ARGP4 ADDRGP4 $112 ARGP4 ADDRGP4 UI_PlayerInfo_SetModel CALLV pop line 1497 ;1497: UI_PlayerInfo_SetInfo( &info2, LEGS_IDLE, TORSO_STAND, viewangles, vec3_origin, WP_PISTOL, qfalse ); ADDRGP4 $1129 ARGP4 CNSTI4 22 ARGI4 CNSTI4 11 ARGI4 ADDRLP4 0 ARGP4 ADDRGP4 vec3_origin ARGP4 CNSTI4 1 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 UI_PlayerInfo_SetInfo CALLV pop line 1498 ;1498: UI_RegisterClientModelname( &info2, model, headmodel, team); ADDRGP4 $1129 ARGP4 ADDRLP4 12 ARGP4 ADDRLP4 76 ARGP4 ADDRLP4 152 ARGP4 ADDRGP4 UI_RegisterClientModelname CALLI4 pop line 1499 ;1499: updateOpponentModel = qfalse; ADDRGP4 updateOpponentModel CNSTI4 0 ASGNI4 line 1500 ;1500: } LABELV $1130 line 1502 ;1501: ;1502: UI_DrawPlayer( rect->x, rect->y, rect->w, rect->h, &info2, uiInfo.uiDC.realTime / 2); ADDRLP4 408 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 408 INDIRP4 INDIRF4 ARGF4 ADDRLP4 408 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 408 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 408 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 ADDRGP4 $1129 ARGP4 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 2 DIVI4 ARGI4 ADDRGP4 UI_DrawPlayer CALLV pop line 1504 ;1503: ;1504:} LABELV $1128 endproc UI_DrawOpponent 420 28 proc UI_NextOpponent 24 8 line 1506 ;1505: ;1506:static void UI_NextOpponent() { line 1507 ;1507: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 8 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 12 INDIRI4 ASGNI4 line 1508 ;1508: int j = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 16 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 16 INDIRP4 ARGP4 ADDRLP4 20 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 20 INDIRI4 ASGNI4 line 1509 ;1509: i++; ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 1510 ;1510: if (i >= uiInfo.teamCount) { ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 LTI4 $1139 line 1511 ;1511: i = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1512 ;1512: } LABELV $1139 line 1513 ;1513: if (i == j) { ADDRLP4 0 INDIRI4 ADDRLP4 4 INDIRI4 NEI4 $1142 line 1514 ;1514: i++; ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 1515 ;1515: if ( i >= uiInfo.teamCount) { ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 LTI4 $1144 line 1516 ;1516: i = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1517 ;1517: } LABELV $1144 line 1518 ;1518: } LABELV $1142 line 1519 ;1519: trap_Cvar_Set( "ui_opponentName", uiInfo.teamList[i].teamName ); ADDRGP4 $1081 ARGP4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1520 ;1520:} LABELV $1138 endproc UI_NextOpponent 24 8 proc UI_PriorOpponent 24 8 line 1522 ;1521: ;1522:static void UI_PriorOpponent() { line 1523 ;1523: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 8 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 12 INDIRI4 ASGNI4 line 1524 ;1524: int j = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 16 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 16 INDIRP4 ARGP4 ADDRLP4 20 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 20 INDIRI4 ASGNI4 line 1525 ;1525: i--; ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 1526 ;1526: if (i < 0) { ADDRLP4 0 INDIRI4 CNSTI4 0 GEI4 $1149 line 1527 ;1527: i = uiInfo.teamCount - 1; ADDRLP4 0 ADDRGP4 uiInfo+75756 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 1528 ;1528: } LABELV $1149 line 1529 ;1529: if (i == j) { ADDRLP4 0 INDIRI4 ADDRLP4 4 INDIRI4 NEI4 $1152 line 1530 ;1530: i--; ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 1531 ;1531: if ( i < 0) { ADDRLP4 0 INDIRI4 CNSTI4 0 GEI4 $1154 line 1532 ;1532: i = uiInfo.teamCount - 1; ADDRLP4 0 ADDRGP4 uiInfo+75756 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 1533 ;1533: } LABELV $1154 line 1534 ;1534: } LABELV $1152 line 1535 ;1535: trap_Cvar_Set( "ui_opponentName", uiInfo.teamList[i].teamName ); ADDRGP4 $1081 ARGP4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1536 ;1536:} LABELV $1148 endproc UI_PriorOpponent 24 8 proc UI_DrawPlayerLogo 44 20 line 1538 ;1537: ;1538:static void UI_DrawPlayerLogo(rectDef_t *rect, vec3_t color) { line 1539 ;1539: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1541 ;1540: ;1541: if (uiInfo.teamList[i].teamIcon == -1) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $1159 line 1542 ;1542: uiInfo.teamList[i].teamIcon = trap_R_RegisterShaderNoMip(uiInfo.teamList[i].imageName); ADDRLP4 12 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+28 ADDP4 ADDRLP4 16 INDIRI4 ASGNI4 line 1543 ;1543: uiInfo.teamList[i].teamIcon_Metal = trap_R_RegisterShaderNoMip(va("%s_metal",uiInfo.teamList[i].imageName)); ADDRGP4 $769 ARGP4 ADDRLP4 20 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 24 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+32 ADDP4 ADDRLP4 28 INDIRI4 ASGNI4 line 1544 ;1544: uiInfo.teamList[i].teamIcon_Name = trap_R_RegisterShaderNoMip(va("%s_name", uiInfo.teamList[i].imageName)); ADDRGP4 $774 ARGP4 ADDRLP4 32 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 36 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+36 ADDP4 ADDRLP4 40 INDIRI4 ASGNI4 line 1545 ;1545: } LABELV $1159 line 1547 ;1546: ;1547: trap_R_SetColor( color ); ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1548 ;1548: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon ); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1549 ;1549: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1550 ;1550:} LABELV $1158 endproc UI_DrawPlayerLogo 44 20 proc UI_DrawPlayerLogoMetal 44 20 line 1552 ;1551: ;1552:static void UI_DrawPlayerLogoMetal(rectDef_t *rect, vec3_t color) { line 1553 ;1553: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1554 ;1554: if (uiInfo.teamList[i].teamIcon == -1) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $1178 line 1555 ;1555: uiInfo.teamList[i].teamIcon = trap_R_RegisterShaderNoMip(uiInfo.teamList[i].imageName); ADDRLP4 12 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+28 ADDP4 ADDRLP4 16 INDIRI4 ASGNI4 line 1556 ;1556: uiInfo.teamList[i].teamIcon_Metal = trap_R_RegisterShaderNoMip(va("%s_metal",uiInfo.teamList[i].imageName)); ADDRGP4 $769 ARGP4 ADDRLP4 20 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 24 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+32 ADDP4 ADDRLP4 28 INDIRI4 ASGNI4 line 1557 ;1557: uiInfo.teamList[i].teamIcon_Name = trap_R_RegisterShaderNoMip(va("%s_name", uiInfo.teamList[i].imageName)); ADDRGP4 $774 ARGP4 ADDRLP4 32 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 36 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+36 ADDP4 ADDRLP4 40 INDIRI4 ASGNI4 line 1558 ;1558: } LABELV $1178 line 1560 ;1559: ;1560: trap_R_SetColor( color ); ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1561 ;1561: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon_Metal ); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+32 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1562 ;1562: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1563 ;1563:} LABELV $1177 endproc UI_DrawPlayerLogoMetal 44 20 proc UI_DrawPlayerLogoName 44 20 line 1565 ;1564: ;1565:static void UI_DrawPlayerLogoName(rectDef_t *rect, vec3_t color) { line 1566 ;1566: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1567 ;1567: if (uiInfo.teamList[i].teamIcon == -1) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $1197 line 1568 ;1568: uiInfo.teamList[i].teamIcon = trap_R_RegisterShaderNoMip(uiInfo.teamList[i].imageName); ADDRLP4 12 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+28 ADDP4 ADDRLP4 16 INDIRI4 ASGNI4 line 1569 ;1569: uiInfo.teamList[i].teamIcon_Metal = trap_R_RegisterShaderNoMip(va("%s_metal",uiInfo.teamList[i].imageName)); ADDRGP4 $769 ARGP4 ADDRLP4 20 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 24 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+32 ADDP4 ADDRLP4 28 INDIRI4 ASGNI4 line 1570 ;1570: uiInfo.teamList[i].teamIcon_Name = trap_R_RegisterShaderNoMip(va("%s_name", uiInfo.teamList[i].imageName)); ADDRGP4 $774 ARGP4 ADDRLP4 32 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 36 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+36 ADDP4 ADDRLP4 40 INDIRI4 ASGNI4 line 1571 ;1571: } LABELV $1197 line 1573 ;1572: ;1573: trap_R_SetColor( color ); ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1574 ;1574: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon_Name ); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+36 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1575 ;1575: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1576 ;1576:} LABELV $1196 endproc UI_DrawPlayerLogoName 44 20 proc UI_DrawOpponentLogo 44 20 line 1578 ;1577: ;1578:static void UI_DrawOpponentLogo(rectDef_t *rect, vec3_t color) { line 1579 ;1579: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1580 ;1580: if (uiInfo.teamList[i].teamIcon == -1) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $1216 line 1581 ;1581: uiInfo.teamList[i].teamIcon = trap_R_RegisterShaderNoMip(uiInfo.teamList[i].imageName); ADDRLP4 12 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+28 ADDP4 ADDRLP4 16 INDIRI4 ASGNI4 line 1582 ;1582: uiInfo.teamList[i].teamIcon_Metal = trap_R_RegisterShaderNoMip(va("%s_metal",uiInfo.teamList[i].imageName)); ADDRGP4 $769 ARGP4 ADDRLP4 20 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 24 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+32 ADDP4 ADDRLP4 28 INDIRI4 ASGNI4 line 1583 ;1583: uiInfo.teamList[i].teamIcon_Name = trap_R_RegisterShaderNoMip(va("%s_name", uiInfo.teamList[i].imageName)); ADDRGP4 $774 ARGP4 ADDRLP4 32 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 36 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+36 ADDP4 ADDRLP4 40 INDIRI4 ASGNI4 line 1584 ;1584: } LABELV $1216 line 1586 ;1585: ;1586: trap_R_SetColor( color ); ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1587 ;1587: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon ); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1588 ;1588: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1589 ;1589:} LABELV $1215 endproc UI_DrawOpponentLogo 44 20 proc UI_DrawOpponentLogoMetal 44 20 line 1591 ;1590: ;1591:static void UI_DrawOpponentLogoMetal(rectDef_t *rect, vec3_t color) { line 1592 ;1592: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1593 ;1593: if (uiInfo.teamList[i].teamIcon == -1) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $1235 line 1594 ;1594: uiInfo.teamList[i].teamIcon = trap_R_RegisterShaderNoMip(uiInfo.teamList[i].imageName); ADDRLP4 12 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+28 ADDP4 ADDRLP4 16 INDIRI4 ASGNI4 line 1595 ;1595: uiInfo.teamList[i].teamIcon_Metal = trap_R_RegisterShaderNoMip(va("%s_metal",uiInfo.teamList[i].imageName)); ADDRGP4 $769 ARGP4 ADDRLP4 20 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 24 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+32 ADDP4 ADDRLP4 28 INDIRI4 ASGNI4 line 1596 ;1596: uiInfo.teamList[i].teamIcon_Name = trap_R_RegisterShaderNoMip(va("%s_name", uiInfo.teamList[i].imageName)); ADDRGP4 $774 ARGP4 ADDRLP4 32 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 36 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+36 ADDP4 ADDRLP4 40 INDIRI4 ASGNI4 line 1597 ;1597: } LABELV $1235 line 1599 ;1598: ;1599: trap_R_SetColor( color ); ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1600 ;1600: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon_Metal ); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+32 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1601 ;1601: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1602 ;1602:} LABELV $1234 endproc UI_DrawOpponentLogoMetal 44 20 proc UI_DrawOpponentLogoName 44 20 line 1604 ;1603: ;1604:static void UI_DrawOpponentLogoName(rectDef_t *rect, vec3_t color) { line 1605 ;1605: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ASGNI4 line 1606 ;1606: if (uiInfo.teamList[i].teamIcon == -1) { CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $1254 line 1607 ;1607: uiInfo.teamList[i].teamIcon = trap_R_RegisterShaderNoMip(uiInfo.teamList[i].imageName); ADDRLP4 12 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+75760+28 ADDP4 ADDRLP4 16 INDIRI4 ASGNI4 line 1608 ;1608: uiInfo.teamList[i].teamIcon_Metal = trap_R_RegisterShaderNoMip(va("%s_metal",uiInfo.teamList[i].imageName)); ADDRGP4 $769 ARGP4 ADDRLP4 20 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 24 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 24 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 ADDRGP4 uiInfo+75760+32 ADDP4 ADDRLP4 28 INDIRI4 ASGNI4 line 1609 ;1609: uiInfo.teamList[i].teamIcon_Name = trap_R_RegisterShaderNoMip(va("%s_name", uiInfo.teamList[i].imageName)); ADDRGP4 $774 ARGP4 ADDRLP4 32 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 36 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+75760+36 ADDP4 ADDRLP4 40 INDIRI4 ASGNI4 line 1610 ;1610: } LABELV $1254 line 1612 ;1611: ;1612: trap_R_SetColor( color ); ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1613 ;1613: UI_DrawHandlePic( rect->x, rect->y, rect->w, rect->h, uiInfo.teamList[i].teamIcon_Name ); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ARGF4 CNSTI4 44 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+36 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1614 ;1614: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1615 ;1615:} LABELV $1253 endproc UI_DrawOpponentLogoName 44 20 proc UI_DrawAllMapsSelection 16 32 line 1617 ;1616: ;1617:static void UI_DrawAllMapsSelection(rectDef_t *rect, float scale, vec4_t color, int textStyle, qboolean net) { line 1618 ;1618: int map = (net) ? ui_currentNetMap.integer : ui_currentMap.integer; ADDRFP4 16 INDIRI4 CNSTI4 0 EQI4 $1276 ADDRLP4 4 ADDRGP4 ui_currentNetMap+12 INDIRI4 ASGNI4 ADDRGP4 $1277 JUMPV LABELV $1276 ADDRLP4 4 ADDRGP4 ui_currentMap+12 INDIRI4 ASGNI4 LABELV $1277 ADDRLP4 0 ADDRLP4 4 INDIRI4 ASGNI4 line 1619 ;1619: if (map >= 0 && map < uiInfo.mapCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $1278 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 GEI4 $1278 line 1620 ;1620: Text_Paint(rect->x, rect->y, scale, color, uiInfo.mapList[map].mapName, 0, 0, textStyle); ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228 ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1621 ;1621: } LABELV $1278 line 1622 ;1622:} LABELV $1272 endproc UI_DrawAllMapsSelection 16 32 proc UI_DrawOpponentName 8 32 line 1624 ;1623: ;1624:static void UI_DrawOpponentName(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1625 ;1625: Text_Paint(rect->x, rect->y, scale, color, UI_Cvar_VariableString("ui_opponentName"), 0, 0, textStyle); ADDRGP4 $1081 ARGP4 ADDRLP4 0 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1626 ;1626:} LABELV $1282 endproc UI_DrawOpponentName 8 32 proc UI_OwnerDrawWidth 112 12 line 1629 ;1627: ;1628: ;1629:static int UI_OwnerDrawWidth(int ownerDraw, float scale) { line 1632 ;1630: int i, h, value; ;1631: const char *text; ;1632: const char *s = NULL; ADDRLP4 0 CNSTP4 0 ASGNP4 line 1634 ;1633: ;1634: switch (ownerDraw) { ADDRLP4 20 ADDRFP4 0 INDIRI4 ASGNI4 ADDRLP4 20 INDIRI4 CNSTI4 200 LTI4 $1285 ADDRLP4 20 INDIRI4 CNSTI4 247 GTI4 $1355 ADDRLP4 20 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $1356-800 ADDP4 INDIRP4 JUMPV lit align 4 LABELV $1356 address $1286 address $1285 address $1285 address $1287 address $1285 address $1288 address $1285 address $1291 address $1296 address $1301 address $1306 address $1306 address $1306 address $1306 address $1306 address $1316 address $1316 address $1316 address $1316 address $1316 address $1325 address $1285 address $1334 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1285 address $1352 code LABELV $1355 ADDRFP4 0 INDIRI4 CNSTI4 250 EQI4 $1347 ADDRGP4 $1285 JUMPV LABELV $1286 line 1636 ;1635: case UI_HANDICAP: ;1636: h = Com_Clamp( 5, 100, trap_Cvar_VariableValue("handicap") ); ADDRGP4 $699 ARGP4 ADDRLP4 24 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 CNSTF4 1084227584 ARGF4 CNSTF4 1120403456 ARGF4 ADDRLP4 24 INDIRF4 ARGF4 ADDRLP4 28 ADDRGP4 Com_Clamp CALLF4 ASGNF4 ADDRLP4 16 ADDRLP4 28 INDIRF4 CVFI4 4 ASGNI4 line 1637 ;1637: i = 20 - h / 5; ADDRLP4 4 CNSTI4 20 ADDRLP4 16 INDIRI4 CNSTI4 5 DIVI4 SUBI4 ASGNI4 line 1638 ;1638: s = handicapValues[i]; ADDRLP4 0 ADDRLP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 handicapValues ADDP4 INDIRP4 ASGNP4 line 1639 ;1639: break; ADDRGP4 $1285 JUMPV LABELV $1287 line 1641 ;1640: case UI_CLANNAME: ;1641: s = UI_Cvar_VariableString("ui_teamName"); ADDRGP4 $701 ARGP4 ADDRLP4 32 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 32 INDIRP4 ASGNP4 line 1642 ;1642: break; ADDRGP4 $1285 JUMPV LABELV $1288 line 1644 ;1643: case UI_GAMETYPE: ;1644: s = uiInfo.gameTypes[ui_gameType.integer].gameType; ADDRLP4 0 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580 ADDP4 INDIRP4 ASGNP4 line 1645 ;1645: break; ADDRGP4 $1285 JUMPV LABELV $1291 line 1647 ;1646: case UI_SKILL: ;1647: i = trap_Cvar_VariableValue( "g_spSkill" ); ADDRGP4 $827 ARGP4 ADDRLP4 36 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 36 INDIRF4 CVFI4 4 ASGNI4 line 1648 ;1648: if (i < 1 || i > numSkillLevels) { ADDRLP4 40 ADDRLP4 4 INDIRI4 ASGNI4 ADDRLP4 40 INDIRI4 CNSTI4 1 LTI4 $1294 ADDRLP4 40 INDIRI4 ADDRGP4 numSkillLevels INDIRI4 LEI4 $1292 LABELV $1294 line 1649 ;1649: i = 1; ADDRLP4 4 CNSTI4 1 ASGNI4 line 1650 ;1650: } LABELV $1292 line 1651 ;1651: s = skillLevels[i-1]; ADDRLP4 0 ADDRLP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 skillLevels-4 ADDP4 INDIRP4 ASGNP4 line 1652 ;1652: break; ADDRGP4 $1285 JUMPV LABELV $1296 line 1654 ;1653: case UI_BLUETEAMNAME: ;1654: i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_blueTeam")); ADDRGP4 $833 ARGP4 ADDRLP4 44 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 44 INDIRP4 ARGP4 ADDRLP4 48 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 48 INDIRI4 ASGNI4 line 1655 ;1655: if (i >= 0 && i < uiInfo.teamCount) { ADDRLP4 52 ADDRLP4 4 INDIRI4 ASGNI4 ADDRLP4 52 INDIRI4 CNSTI4 0 LTI4 $1285 ADDRLP4 52 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 GEI4 $1285 line 1656 ;1656: s = va("%s: %s", "Blue", uiInfo.teamList[i].teamName); ADDRGP4 $841 ARGP4 ADDRGP4 $842 ARGP4 CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRLP4 56 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 56 INDIRP4 ASGNP4 line 1657 ;1657: } line 1658 ;1658: break; ADDRGP4 $1285 JUMPV LABELV $1301 line 1660 ;1659: case UI_REDTEAMNAME: ;1660: i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_redTeam")); ADDRGP4 $834 ARGP4 ADDRLP4 56 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 56 INDIRP4 ARGP4 ADDRLP4 60 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 60 INDIRI4 ASGNI4 line 1661 ;1661: if (i >= 0 && i < uiInfo.teamCount) { ADDRLP4 64 ADDRLP4 4 INDIRI4 ASGNI4 ADDRLP4 64 INDIRI4 CNSTI4 0 LTI4 $1285 ADDRLP4 64 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 GEI4 $1285 line 1662 ;1662: s = va("%s: %s", "Red", uiInfo.teamList[i].teamName); ADDRGP4 $841 ARGP4 ADDRGP4 $843 ARGP4 CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRLP4 68 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 68 INDIRP4 ASGNP4 line 1663 ;1663: } line 1664 ;1664: break; ADDRGP4 $1285 JUMPV LABELV $1306 line 1670 ;1665: case UI_BLUETEAM1: ;1666: case UI_BLUETEAM2: ;1667: case UI_BLUETEAM3: ;1668: case UI_BLUETEAM4: ;1669: case UI_BLUETEAM5: ;1670: value = trap_Cvar_VariableValue(va("ui_blueteam%i", ownerDraw-UI_BLUETEAM1 + 1)); ADDRGP4 $849 ARGP4 ADDRFP4 0 INDIRI4 CNSTI4 210 SUBI4 CNSTI4 1 ADDI4 ARGI4 ADDRLP4 68 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 68 INDIRP4 ARGP4 ADDRLP4 72 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 8 ADDRLP4 72 INDIRF4 CVFI4 4 ASGNI4 line 1671 ;1671: if (value <= 0) { ADDRLP4 8 INDIRI4 CNSTI4 0 GTI4 $1307 line 1672 ;1672: text = "Closed"; ADDRLP4 12 ADDRGP4 $856 ASGNP4 line 1673 ;1673: } else if (value == 1) { ADDRGP4 $1308 JUMPV LABELV $1307 ADDRLP4 8 INDIRI4 CNSTI4 1 NEI4 $1309 line 1674 ;1674: text = "Human"; ADDRLP4 12 ADDRGP4 $859 ASGNP4 line 1675 ;1675: } else { ADDRGP4 $1310 JUMPV LABELV $1309 line 1676 ;1676: value -= 2; ADDRLP4 8 ADDRLP4 8 INDIRI4 CNSTI4 2 SUBI4 ASGNI4 line 1677 ;1677: if (value >= uiInfo.aliasCount) { ADDRLP4 8 INDIRI4 ADDRGP4 uiInfo+74984 INDIRI4 LTI4 $1311 line 1678 ;1678: value = 0; ADDRLP4 8 CNSTI4 0 ASGNI4 line 1679 ;1679: } LABELV $1311 line 1680 ;1680: text = uiInfo.aliasList[value].name; ADDRLP4 12 CNSTI4 12 ADDRLP4 8 INDIRI4 MULI4 ADDRGP4 uiInfo+74988 ADDP4 INDIRP4 ASGNP4 line 1681 ;1681: } LABELV $1310 LABELV $1308 line 1682 ;1682: s = va("%i. %s", ownerDraw-UI_BLUETEAM1 + 1, text); ADDRGP4 $1315 ARGP4 ADDRFP4 0 INDIRI4 CNSTI4 210 SUBI4 CNSTI4 1 ADDI4 ARGI4 ADDRLP4 12 INDIRP4 ARGP4 ADDRLP4 76 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 76 INDIRP4 ASGNP4 line 1683 ;1683: break; ADDRGP4 $1285 JUMPV LABELV $1316 line 1689 ;1684: case UI_REDTEAM1: ;1685: case UI_REDTEAM2: ;1686: case UI_REDTEAM3: ;1687: case UI_REDTEAM4: ;1688: case UI_REDTEAM5: ;1689: value = trap_Cvar_VariableValue(va("ui_redteam%i", ownerDraw-UI_REDTEAM1 + 1)); ADDRGP4 $850 ARGP4 ADDRFP4 0 INDIRI4 CNSTI4 215 SUBI4 CNSTI4 1 ADDI4 ARGI4 ADDRLP4 80 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 80 INDIRP4 ARGP4 ADDRLP4 84 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 8 ADDRLP4 84 INDIRF4 CVFI4 4 ASGNI4 line 1690 ;1690: if (value <= 0) { ADDRLP4 8 INDIRI4 CNSTI4 0 GTI4 $1317 line 1691 ;1691: text = "Closed"; ADDRLP4 12 ADDRGP4 $856 ASGNP4 line 1692 ;1692: } else if (value == 1) { ADDRGP4 $1318 JUMPV LABELV $1317 ADDRLP4 8 INDIRI4 CNSTI4 1 NEI4 $1319 line 1693 ;1693: text = "Human"; ADDRLP4 12 ADDRGP4 $859 ASGNP4 line 1694 ;1694: } else { ADDRGP4 $1320 JUMPV LABELV $1319 line 1695 ;1695: value -= 2; ADDRLP4 8 ADDRLP4 8 INDIRI4 CNSTI4 2 SUBI4 ASGNI4 line 1696 ;1696: if (value >= uiInfo.aliasCount) { ADDRLP4 8 INDIRI4 ADDRGP4 uiInfo+74984 INDIRI4 LTI4 $1321 line 1697 ;1697: value = 0; ADDRLP4 8 CNSTI4 0 ASGNI4 line 1698 ;1698: } LABELV $1321 line 1699 ;1699: text = uiInfo.aliasList[value].name; ADDRLP4 12 CNSTI4 12 ADDRLP4 8 INDIRI4 MULI4 ADDRGP4 uiInfo+74988 ADDP4 INDIRP4 ASGNP4 line 1700 ;1700: } LABELV $1320 LABELV $1318 line 1701 ;1701: s = va("%i. %s", ownerDraw-UI_REDTEAM1 + 1, text); ADDRGP4 $1315 ARGP4 ADDRFP4 0 INDIRI4 CNSTI4 215 SUBI4 CNSTI4 1 ADDI4 ARGI4 ADDRLP4 12 INDIRP4 ARGP4 ADDRLP4 88 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 88 INDIRP4 ASGNP4 line 1702 ;1702: break; ADDRGP4 $1285 JUMPV LABELV $1325 line 1704 ;1703: case UI_NETSOURCE: ;1704: if (ui_netSource.integer < 0 || ui_netSource.integer > uiInfo.numJoinGameTypes) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 0 LTI4 $1331 ADDRGP4 ui_netSource+12 INDIRI4 ADDRGP4 uiInfo+78708 INDIRI4 LEI4 $1326 LABELV $1331 line 1705 ;1705: ui_netSource.integer = 0; ADDRGP4 ui_netSource+12 CNSTI4 0 ASGNI4 line 1706 ;1706: } LABELV $1326 line 1707 ;1707: s = va("Source: %s", netSources[ui_netSource.integer]); ADDRGP4 $988 ARGP4 ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 netSources ADDP4 INDIRP4 ARGP4 ADDRLP4 92 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 92 INDIRP4 ASGNP4 line 1708 ;1708: break; ADDRGP4 $1285 JUMPV LABELV $1334 line 1710 ;1709: case UI_NETFILTER: ;1710: if (ui_serverFilterType.integer < 0 || ui_serverFilterType.integer > numServerFilters) { ADDRGP4 ui_serverFilterType+12 INDIRI4 CNSTI4 0 LTI4 $1339 ADDRGP4 ui_serverFilterType+12 INDIRI4 ADDRGP4 numServerFilters INDIRI4 LEI4 $1335 LABELV $1339 line 1711 ;1711: ui_serverFilterType.integer = 0; ADDRGP4 ui_serverFilterType+12 CNSTI4 0 ASGNI4 line 1712 ;1712: } LABELV $1335 line 1713 ;1713: s = va("Filter: %s", serverFilters[ui_serverFilterType.integer].description ); ADDRGP4 $1022 ARGP4 ADDRGP4 ui_serverFilterType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 serverFilters ADDP4 INDIRP4 ARGP4 ADDRLP4 96 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 96 INDIRP4 ASGNP4 line 1714 ;1714: break; ADDRGP4 $1285 JUMPV line 1716 ;1715: case UI_TIER: ;1716: break; line 1718 ;1717: case UI_TIER_MAPNAME: ;1718: break; line 1720 ;1719: case UI_TIER_GAMETYPE: ;1720: break; line 1722 ;1721: case UI_ALLMAPS_SELECTION: ;1722: break; line 1724 ;1723: case UI_OPPONENT_NAME: ;1724: break; LABELV $1347 line 1726 ;1725: case UI_KEYBINDSTATUS: ;1726: if (Display_KeyBindPending()) { ADDRLP4 100 ADDRGP4 Display_KeyBindPending CALLI4 ASGNI4 ADDRLP4 100 INDIRI4 CNSTI4 0 EQI4 $1348 line 1727 ;1727: s = "Waiting for new key... Press ESCAPE to cancel"; ADDRLP4 0 ADDRGP4 $1350 ASGNP4 line 1728 ;1728: } else { ADDRGP4 $1285 JUMPV LABELV $1348 line 1729 ;1729: s = "Press ENTER or CLICK to change, Press BACKSPACE to clear"; ADDRLP4 0 ADDRGP4 $1351 ASGNP4 line 1730 ;1730: } line 1731 ;1731: break; ADDRGP4 $1285 JUMPV LABELV $1352 line 1733 ;1732: case UI_SERVERREFRESHDATE: ;1733: s = UI_Cvar_VariableString(va("ui_lastServerRefresh_%i", ui_netSource.integer)); ADDRGP4 $1353 ARGP4 ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 104 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 104 INDIRP4 ARGP4 ADDRLP4 108 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 108 INDIRP4 ASGNP4 line 1734 ;1734: break; line 1736 ;1735: default: ;1736: break; LABELV $1285 line 1739 ;1737: } ;1738: ;1739: if (s) { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $1358 line 1740 ;1740: return Text_Width(s, scale, 0); ADDRLP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRF4 ARGF4 CNSTI4 0 ARGI4 ADDRLP4 24 ADDRGP4 Text_Width CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 RETI4 ADDRGP4 $1283 JUMPV LABELV $1358 line 1742 ;1741: } ;1742: return 0; CNSTI4 0 RETI4 LABELV $1283 endproc UI_OwnerDrawWidth 112 12 proc UI_DrawBotName 24 32 line 1745 ;1743:} ;1744: ;1745:static void UI_DrawBotName(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1746 ;1746: int value = uiInfo.botIndex; ADDRLP4 0 ADDRGP4 uiInfo+73444 INDIRI4 ASGNI4 line 1747 ;1747: int game = trap_Cvar_VariableValue("g_gametype"); ADDRGP4 $1362 ARGP4 ADDRLP4 12 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 8 ADDRLP4 12 INDIRF4 CVFI4 4 ASGNI4 line 1748 ;1748: const char *text = ""; ADDRLP4 4 ADDRGP4 $112 ASGNP4 line 1749 ;1749: if (game >= GT_TEAM) { ADDRLP4 8 INDIRI4 CNSTI4 3 LTI4 $1363 line 1750 ;1750: if (value >= uiInfo.characterCount) { ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 LTI4 $1365 line 1751 ;1751: value = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1752 ;1752: } LABELV $1365 line 1753 ;1753: text = uiInfo.characterList[value].name; ADDRLP4 4 CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 ASGNP4 line 1754 ;1754: } else { ADDRGP4 $1364 JUMPV LABELV $1363 line 1755 ;1755: if (value >= UI_GetNumBots()) { ADDRLP4 16 ADDRGP4 UI_GetNumBots CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 ADDRLP4 16 INDIRI4 LTI4 $1369 line 1756 ;1756: value = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1757 ;1757: } LABELV $1369 line 1758 ;1758: text = UI_GetBotNameByNumber(value); ADDRLP4 0 INDIRI4 ARGI4 ADDRLP4 20 ADDRGP4 UI_GetBotNameByNumber CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 20 INDIRP4 ASGNP4 line 1759 ;1759: } LABELV $1364 line 1760 ;1760: Text_Paint(rect->x, rect->y, scale, color, text, 0, 0, textStyle); ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 16 INDIRP4 INDIRF4 ARGF4 ADDRLP4 16 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1761 ;1761:} LABELV $1360 endproc UI_DrawBotName 24 32 proc UI_DrawBotSkill 4 32 line 1763 ;1762: ;1763:static void UI_DrawBotSkill(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1764 ;1764: if (uiInfo.skillIndex >= 0 && uiInfo.skillIndex < numSkillLevels) { ADDRGP4 uiInfo+96672 INDIRI4 CNSTI4 0 LTI4 $1372 ADDRGP4 uiInfo+96672 INDIRI4 ADDRGP4 numSkillLevels INDIRI4 GEI4 $1372 line 1765 ;1765: Text_Paint(rect->x, rect->y, scale, color, skillLevels[uiInfo.skillIndex], 0, 0, textStyle); ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 INDIRP4 INDIRF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 uiInfo+96672 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 skillLevels ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1766 ;1766: } LABELV $1372 line 1767 ;1767:} LABELV $1371 endproc UI_DrawBotSkill 4 32 proc UI_DrawRedBlue 8 32 line 1769 ;1768: ;1769:static void UI_DrawRedBlue(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1770 ;1770: Text_Paint(rect->x, rect->y, scale, color, (uiInfo.redBlue == 0) ? "Red" : "Blue", 0, 0, textStyle); ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 uiInfo+78840 INDIRI4 CNSTI4 0 NEI4 $1380 ADDRLP4 0 ADDRGP4 $843 ASGNP4 ADDRGP4 $1381 JUMPV LABELV $1380 ADDRLP4 0 ADDRGP4 $842 ASGNP4 LABELV $1381 ADDRLP4 0 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1771 ;1771:} LABELV $1377 endproc UI_DrawRedBlue 8 32 proc UI_DrawCrosshair 8 20 line 1773 ;1772: ;1773:static void UI_DrawCrosshair(rectDef_t *rect, float scale, vec4_t color) { line 1774 ;1774: trap_R_SetColor( color ); ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1775 ;1775: if (uiInfo.currentCrosshair < 0 || uiInfo.currentCrosshair >= NUM_CROSSHAIRS) { ADDRGP4 uiInfo+119476 INDIRI4 CNSTI4 0 LTI4 $1387 ADDRGP4 uiInfo+119476 INDIRI4 CNSTI4 10 LTI4 $1383 LABELV $1387 line 1776 ;1776: uiInfo.currentCrosshair = 0; ADDRGP4 uiInfo+119476 CNSTI4 0 ASGNI4 line 1777 ;1777: } LABELV $1383 line 1778 ;1778: UI_DrawHandlePic( rect->x, rect->y - rect->h, rect->w, rect->h, uiInfo.uiDC.Assets.crosshairShader[uiInfo.currentCrosshair]); ADDRLP4 0 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 ADDRLP4 0 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ASGNF4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ADDRLP4 4 INDIRF4 SUBF4 ARGF4 ADDRLP4 0 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRF4 ARGF4 ADDRGP4 uiInfo+119476 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+228+61800 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandlePic CALLV pop line 1779 ;1779: trap_R_SetColor( NULL ); CNSTP4 0 ARGP4 ADDRGP4 trap_R_SetColor CALLV pop line 1780 ;1780:} LABELV $1382 endproc UI_DrawCrosshair 8 20 proc UI_BuildPlayerList 4176 12 line 1787 ;1781: ;1782:/* ;1783:=============== ;1784:UI_BuildPlayerList ;1785:=============== ;1786:*/ ;1787:static void UI_BuildPlayerList() { line 1792 ;1788: uiClientState_t cs; ;1789: int n, count, team, team2, playerTeamNumber; ;1790: char info[MAX_INFO_STRING]; ;1791: ;1792: trap_GetClientState( &cs ); ADDRLP4 1040 ARGP4 ADDRGP4 trap_GetClientState CALLV pop line 1793 ;1793: trap_GetConfigString( CS_PLAYERS + cs.clientNum, info, MAX_INFO_STRING ); ADDRLP4 1040+8 INDIRI4 CNSTI4 544 ADDI4 ARGI4 ADDRLP4 4 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_GetConfigString CALLI4 pop line 1794 ;1794: uiInfo.playerNumber = cs.clientNum; ADDRGP4 uiInfo+78864 ADDRLP4 1040+8 INDIRI4 ASGNI4 line 1795 ;1795: uiInfo.teamLeader = atoi(Info_ValueForKey(info, "tl")); ADDRLP4 4 ARGP4 ADDRGP4 $1397 ARGP4 ADDRLP4 4128 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 4128 INDIRP4 ARGP4 ADDRLP4 4132 ADDRGP4 atoi CALLI4 ASGNI4 ADDRGP4 uiInfo+78868 ADDRLP4 4132 INDIRI4 ASGNI4 line 1796 ;1796: team = atoi(Info_ValueForKey(info, "t")); ADDRLP4 4 ARGP4 ADDRGP4 $1398 ARGP4 ADDRLP4 4136 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 4136 INDIRP4 ARGP4 ADDRLP4 4140 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 1036 ADDRLP4 4140 INDIRI4 ASGNI4 line 1797 ;1797: trap_GetConfigString( CS_SERVERINFO, info, sizeof(info) ); CNSTI4 0 ARGI4 ADDRLP4 4 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_GetConfigString CALLI4 pop line 1798 ;1798: count = atoi( Info_ValueForKey( info, "sv_maxclients" ) ); ADDRLP4 4 ARGP4 ADDRGP4 $1399 ARGP4 ADDRLP4 4144 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 4144 INDIRP4 ARGP4 ADDRLP4 4148 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 1028 ADDRLP4 4148 INDIRI4 ASGNI4 line 1799 ;1799: uiInfo.playerCount = 0; ADDRGP4 uiInfo+78844 CNSTI4 0 ASGNI4 line 1800 ;1800: uiInfo.myTeamCount = 0; ADDRGP4 uiInfo+78848 CNSTI4 0 ASGNI4 line 1801 ;1801: playerTeamNumber = 0; ADDRLP4 4124 CNSTI4 0 ASGNI4 line 1802 ;1802: for( n = 0; n < count; n++ ) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $1405 JUMPV LABELV $1402 line 1803 ;1803: trap_GetConfigString( CS_PLAYERS + n, info, MAX_INFO_STRING ); ADDRLP4 0 INDIRI4 CNSTI4 544 ADDI4 ARGI4 ADDRLP4 4 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_GetConfigString CALLI4 pop line 1805 ;1804: ;1805: if (info[0]) { ADDRLP4 4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $1406 line 1806 ;1806: Q_strncpyz( uiInfo.playerNames[uiInfo.playerCount], Info_ValueForKey( info, "n" ), MAX_NAME_LENGTH ); ADDRLP4 4 ARGP4 ADDRGP4 $1410 ARGP4 ADDRLP4 4152 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 uiInfo+78844 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+78872 ADDP4 ARGP4 ADDRLP4 4152 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 1807 ;1807: Q_CleanStr( uiInfo.playerNames[uiInfo.playerCount] ); ADDRGP4 uiInfo+78844 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+78872 ADDP4 ARGP4 ADDRGP4 Q_CleanStr CALLP4 pop line 1808 ;1808: uiInfo.playerCount++; ADDRLP4 4156 ADDRGP4 uiInfo+78844 ASGNP4 ADDRLP4 4156 INDIRP4 ADDRLP4 4156 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 1809 ;1809: team2 = atoi(Info_ValueForKey(info, "t")); ADDRLP4 4 ARGP4 ADDRGP4 $1398 ARGP4 ADDRLP4 4160 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 4160 INDIRP4 ARGP4 ADDRLP4 4164 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 1032 ADDRLP4 4164 INDIRI4 ASGNI4 line 1810 ;1810: if (team2 == team) { ADDRLP4 1032 INDIRI4 ADDRLP4 1036 INDIRI4 NEI4 $1414 line 1811 ;1811: Q_strncpyz( uiInfo.teamNames[uiInfo.myTeamCount], Info_ValueForKey( info, "n" ), MAX_NAME_LENGTH ); ADDRLP4 4 ARGP4 ADDRGP4 $1410 ARGP4 ADDRLP4 4168 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 uiInfo+78848 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+80920 ADDP4 ARGP4 ADDRLP4 4168 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 1812 ;1812: Q_CleanStr( uiInfo.teamNames[uiInfo.myTeamCount] ); ADDRGP4 uiInfo+78848 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+80920 ADDP4 ARGP4 ADDRGP4 Q_CleanStr CALLP4 pop line 1813 ;1813: uiInfo.teamClientNums[uiInfo.myTeamCount] = n; ADDRGP4 uiInfo+78848 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+82968 ADDP4 ADDRLP4 0 INDIRI4 ASGNI4 line 1814 ;1814: if (uiInfo.playerNumber == n) { ADDRGP4 uiInfo+78864 INDIRI4 ADDRLP4 0 INDIRI4 NEI4 $1422 line 1815 ;1815: playerTeamNumber = uiInfo.myTeamCount; ADDRLP4 4124 ADDRGP4 uiInfo+78848 INDIRI4 ASGNI4 line 1816 ;1816: } LABELV $1422 line 1817 ;1817: uiInfo.myTeamCount++; ADDRLP4 4172 ADDRGP4 uiInfo+78848 ASGNP4 ADDRLP4 4172 INDIRP4 ADDRLP4 4172 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 1818 ;1818: } LABELV $1414 line 1819 ;1819: } LABELV $1406 line 1820 ;1820: } LABELV $1403 line 1802 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $1405 ADDRLP4 0 INDIRI4 ADDRLP4 1028 INDIRI4 LTI4 $1402 line 1822 ;1821: ;1822: if (!uiInfo.teamLeader) { ADDRGP4 uiInfo+78868 INDIRI4 CNSTI4 0 NEI4 $1427 line 1823 ;1823: trap_Cvar_Set("cg_selectedPlayer", va("%d", playerTeamNumber)); ADDRGP4 $716 ARGP4 ADDRLP4 4124 INDIRI4 ARGI4 ADDRLP4 4152 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $1430 ARGP4 ADDRLP4 4152 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1824 ;1824: } LABELV $1427 line 1826 ;1825: ;1826: n = trap_Cvar_VariableValue("cg_selectedPlayer"); ADDRGP4 $1430 ARGP4 ADDRLP4 4152 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 4152 INDIRF4 CVFI4 4 ASGNI4 line 1827 ;1827: if (n < 0 || n > uiInfo.myTeamCount) { ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $1434 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 LEI4 $1431 LABELV $1434 line 1828 ;1828: n = 0; ADDRLP4 0 CNSTI4 0 ASGNI4 line 1829 ;1829: } LABELV $1431 line 1830 ;1830: if (n < uiInfo.myTeamCount) { ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 GEI4 $1435 line 1831 ;1831: trap_Cvar_Set("cg_selectedPlayerName", uiInfo.teamNames[n]); ADDRGP4 $1438 ARGP4 ADDRLP4 0 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+80920 ADDP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 1832 ;1832: } LABELV $1435 line 1833 ;1833:} LABELV $1392 endproc UI_BuildPlayerList 4176 12 proc UI_DrawSelectedPlayer 16 32 line 1836 ;1834: ;1835: ;1836:static void UI_DrawSelectedPlayer(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1837 ;1837: if (uiInfo.uiDC.realTime > uiInfo.playerRefresh) { ADDRGP4 uiInfo+208 INDIRI4 ADDRGP4 uiInfo+78856 INDIRI4 LEI4 $1441 line 1838 ;1838: uiInfo.playerRefresh = uiInfo.uiDC.realTime + 3000; ADDRGP4 uiInfo+78856 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 3000 ADDI4 ASGNI4 line 1839 ;1839: UI_BuildPlayerList(); ADDRGP4 UI_BuildPlayerList CALLV pop line 1840 ;1840: } LABELV $1441 line 1841 ;1841: Text_Paint(rect->x, rect->y, scale, color, (uiInfo.teamLeader) ? UI_Cvar_VariableString("cg_selectedPlayerName") : UI_Cvar_VariableString("name") , 0, 0, textStyle); ADDRGP4 uiInfo+78868 INDIRI4 CNSTI4 0 EQI4 $1450 ADDRGP4 $1438 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 4 INDIRP4 ASGNP4 ADDRGP4 $1451 JUMPV LABELV $1450 ADDRGP4 $1448 ARGP4 ADDRLP4 8 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 8 INDIRP4 ASGNP4 LABELV $1451 ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 INDIRP4 INDIRF4 ARGF4 ADDRLP4 12 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1842 ;1842:} LABELV $1440 endproc UI_DrawSelectedPlayer 16 32 proc UI_DrawServerRefreshDate 80 32 line 1844 ;1843: ;1844:static void UI_DrawServerRefreshDate(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1845 ;1845: if (uiInfo.serverStatus.refreshActive) { ADDRGP4 uiInfo+99264+2212 INDIRI4 CNSTI4 0 EQI4 $1453 line 1847 ;1846: vec4_t lowLight, newColor; ;1847: lowLight[0] = 0.8 * color[0]; ADDRLP4 0 CNSTF4 1061997773 ADDRFP4 8 INDIRP4 INDIRF4 MULF4 ASGNF4 line 1848 ;1848: lowLight[1] = 0.8 * color[1]; ADDRLP4 0+4 CNSTF4 1061997773 ADDRFP4 8 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 MULF4 ASGNF4 line 1849 ;1849: lowLight[2] = 0.8 * color[2]; ADDRLP4 0+8 CNSTF4 1061997773 ADDRFP4 8 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 MULF4 ASGNF4 line 1850 ;1850: lowLight[3] = 0.8 * color[3]; ADDRLP4 0+12 CNSTF4 1061997773 ADDRFP4 8 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 MULF4 ASGNF4 line 1851 ;1851: LerpColor(color,lowLight,newColor,0.5+0.5*sin(uiInfo.uiDC.realTime / PULSE_DIVISOR)); ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 75 DIVI4 CVIF4 4 ARGF4 ADDRLP4 32 ADDRGP4 sin CALLF4 ASGNF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 0 ARGP4 ADDRLP4 16 ARGP4 CNSTF4 1056964608 ADDRLP4 32 INDIRF4 MULF4 CNSTF4 1056964608 ADDF4 ARGF4 ADDRGP4 LerpColor CALLV pop line 1852 ;1852: Text_Paint(rect->x, rect->y, scale, newColor, va("Getting info for %d servers (ESC to cancel)", trap_LAN_GetServerCount(ui_netSource.integer)), 0, 0, textStyle); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 36 ADDRGP4 trap_LAN_GetServerCount CALLI4 ASGNI4 ADDRGP4 $1461 ARGP4 ADDRLP4 36 INDIRI4 ARGI4 ADDRLP4 40 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 44 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 44 INDIRP4 INDIRF4 ARGF4 ADDRLP4 44 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRLP4 16 ARGP4 ADDRLP4 40 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1853 ;1853: } else { ADDRGP4 $1454 JUMPV LABELV $1453 line 1855 ;1854: char buff[64]; ;1855: Q_strncpyz(buff, UI_Cvar_VariableString(va("ui_lastServerRefresh_%i", ui_netSource.integer)), 64); ADDRGP4 $1353 ARGP4 ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 64 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 64 INDIRP4 ARGP4 ADDRLP4 68 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ARGP4 ADDRLP4 68 INDIRP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 1856 ;1856: Text_Paint(rect->x, rect->y, scale, color, va("Refresh Time: %s", buff), 0, 0, textStyle); ADDRGP4 $1464 ARGP4 ADDRLP4 0 ARGP4 ADDRLP4 72 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 76 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 76 INDIRP4 INDIRF4 ARGF4 ADDRLP4 76 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 72 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1857 ;1857: } LABELV $1454 line 1858 ;1858:} LABELV $1452 endproc UI_DrawServerRefreshDate 80 32 proc UI_DrawServerMOTD 24 32 line 1860 ;1859: ;1860:static void UI_DrawServerMOTD(rectDef_t *rect, float scale, vec4_t color) { line 1861 ;1861: if (uiInfo.serverStatus.motdLen) { ADDRGP4 uiInfo+99264+10436 INDIRI4 CNSTI4 0 EQI4 $1466 line 1864 ;1862: float maxX; ;1863: ;1864: if (uiInfo.serverStatus.motdWidth == -1) { ADDRGP4 uiInfo+99264+10440 INDIRI4 CNSTI4 -1 NEI4 $1470 line 1865 ;1865: uiInfo.serverStatus.motdWidth = 0; ADDRGP4 uiInfo+99264+10440 CNSTI4 0 ASGNI4 line 1866 ;1866: uiInfo.serverStatus.motdPaintX = rect->x + 1; ADDRGP4 uiInfo+99264+10444 ADDRFP4 0 INDIRP4 INDIRF4 CNSTF4 1065353216 ADDF4 CVFI4 4 ASGNI4 line 1867 ;1867: uiInfo.serverStatus.motdPaintX2 = -1; ADDRGP4 uiInfo+99264+10448 CNSTI4 -1 ASGNI4 line 1868 ;1868: } LABELV $1470 line 1870 ;1869: ;1870: if (uiInfo.serverStatus.motdOffset > uiInfo.serverStatus.motdLen) { ADDRGP4 uiInfo+99264+10452 INDIRI4 ADDRGP4 uiInfo+99264+10436 INDIRI4 LEI4 $1480 line 1871 ;1871: uiInfo.serverStatus.motdOffset = 0; ADDRGP4 uiInfo+99264+10452 CNSTI4 0 ASGNI4 line 1872 ;1872: uiInfo.serverStatus.motdPaintX = rect->x + 1; ADDRGP4 uiInfo+99264+10444 ADDRFP4 0 INDIRP4 INDIRF4 CNSTF4 1065353216 ADDF4 CVFI4 4 ASGNI4 line 1873 ;1873: uiInfo.serverStatus.motdPaintX2 = -1; ADDRGP4 uiInfo+99264+10448 CNSTI4 -1 ASGNI4 line 1874 ;1874: } LABELV $1480 line 1876 ;1875: ;1876: if (uiInfo.uiDC.realTime > uiInfo.serverStatus.motdTime) { ADDRGP4 uiInfo+208 INDIRI4 ADDRGP4 uiInfo+99264+10456 INDIRI4 LEI4 $1492 line 1877 ;1877: uiInfo.serverStatus.motdTime = uiInfo.uiDC.realTime + 10; ADDRGP4 uiInfo+99264+10456 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 10 ADDI4 ASGNI4 line 1878 ;1878: if (uiInfo.serverStatus.motdPaintX <= rect->x + 2) { ADDRGP4 uiInfo+99264+10444 INDIRI4 CVIF4 4 ADDRFP4 0 INDIRP4 INDIRF4 CNSTF4 1073741824 ADDF4 GTF4 $1500 line 1879 ;1879: if (uiInfo.serverStatus.motdOffset < uiInfo.serverStatus.motdLen) { ADDRGP4 uiInfo+99264+10452 INDIRI4 ADDRGP4 uiInfo+99264+10436 INDIRI4 GEI4 $1504 line 1880 ;1880: uiInfo.serverStatus.motdPaintX += Text_Width(&uiInfo.serverStatus.motd[uiInfo.serverStatus.motdOffset], scale, 1) - 1; ADDRGP4 uiInfo+99264+10452 INDIRI4 ADDRGP4 uiInfo+99264+10460 ADDP4 ARGP4 ADDRFP4 4 INDIRF4 ARGF4 CNSTI4 1 ARGI4 ADDRLP4 4 ADDRGP4 Text_Width CALLI4 ASGNI4 ADDRLP4 8 ADDRGP4 uiInfo+99264+10444 ASGNP4 ADDRLP4 8 INDIRP4 ADDRLP4 8 INDIRP4 INDIRI4 ADDRLP4 4 INDIRI4 CNSTI4 1 SUBI4 ADDI4 ASGNI4 line 1881 ;1881: uiInfo.serverStatus.motdOffset++; ADDRLP4 12 ADDRGP4 uiInfo+99264+10452 ASGNP4 ADDRLP4 12 INDIRP4 ADDRLP4 12 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 1882 ;1882: } else { ADDRGP4 $1501 JUMPV LABELV $1504 line 1883 ;1883: uiInfo.serverStatus.motdOffset = 0; ADDRGP4 uiInfo+99264+10452 CNSTI4 0 ASGNI4 line 1884 ;1884: if (uiInfo.serverStatus.motdPaintX2 >= 0) { ADDRGP4 uiInfo+99264+10448 INDIRI4 CNSTI4 0 LTI4 $1520 line 1885 ;1885: uiInfo.serverStatus.motdPaintX = uiInfo.serverStatus.motdPaintX2; ADDRGP4 uiInfo+99264+10444 ADDRGP4 uiInfo+99264+10448 INDIRI4 ASGNI4 line 1886 ;1886: } else { ADDRGP4 $1521 JUMPV LABELV $1520 line 1887 ;1887: uiInfo.serverStatus.motdPaintX = rect->x + rect->w - 2; ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRGP4 uiInfo+99264+10444 ADDRLP4 4 INDIRP4 INDIRF4 ADDRLP4 4 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ADDF4 CNSTF4 1073741824 SUBF4 CVFI4 4 ASGNI4 line 1888 ;1888: } LABELV $1521 line 1889 ;1889: uiInfo.serverStatus.motdPaintX2 = -1; ADDRGP4 uiInfo+99264+10448 CNSTI4 -1 ASGNI4 line 1890 ;1890: } line 1891 ;1891: } else { ADDRGP4 $1501 JUMPV LABELV $1500 line 1893 ;1892: //serverStatus.motdPaintX--; ;1893: uiInfo.serverStatus.motdPaintX -= 2; ADDRLP4 4 ADDRGP4 uiInfo+99264+10444 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 2 SUBI4 ASGNI4 line 1894 ;1894: if (uiInfo.serverStatus.motdPaintX2 >= 0) { ADDRGP4 uiInfo+99264+10448 INDIRI4 CNSTI4 0 LTI4 $1534 line 1896 ;1895: //serverStatus.motdPaintX2--; ;1896: uiInfo.serverStatus.motdPaintX2 -= 2; ADDRLP4 8 ADDRGP4 uiInfo+99264+10448 ASGNP4 ADDRLP4 8 INDIRP4 ADDRLP4 8 INDIRP4 INDIRI4 CNSTI4 2 SUBI4 ASGNI4 line 1897 ;1897: } LABELV $1534 line 1898 ;1898: } LABELV $1501 line 1899 ;1899: } LABELV $1492 line 1901 ;1900: ;1901: maxX = rect->x + rect->w - 2; ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 0 ADDRLP4 4 INDIRP4 INDIRF4 ADDRLP4 4 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ADDF4 CNSTF4 1073741824 SUBF4 ASGNF4 line 1902 ;1902: Text_Paint_Limit(&maxX, uiInfo.serverStatus.motdPaintX, rect->y + rect->h - 3, scale, color, &uiInfo.serverStatus.motd[uiInfo.serverStatus.motdOffset], 0, 0); ADDRLP4 0 ARGP4 ADDRGP4 uiInfo+99264+10444 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 8 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 8 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ADDRLP4 8 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ADDF4 CNSTF4 1077936128 SUBF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 uiInfo+99264+10452 INDIRI4 ADDRGP4 uiInfo+99264+10460 ADDP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRGP4 Text_Paint_Limit CALLV pop line 1903 ;1903: if (uiInfo.serverStatus.motdPaintX2 >= 0) { ADDRGP4 uiInfo+99264+10448 INDIRI4 CNSTI4 0 LTI4 $1546 line 1904 ;1904: float maxX2 = rect->x + rect->w - 2; ADDRLP4 16 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 12 ADDRLP4 16 INDIRP4 INDIRF4 ADDRLP4 16 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ADDF4 CNSTF4 1073741824 SUBF4 ASGNF4 line 1905 ;1905: Text_Paint_Limit(&maxX2, uiInfo.serverStatus.motdPaintX2, rect->y + rect->h - 3, scale, color, uiInfo.serverStatus.motd, 0, uiInfo.serverStatus.motdOffset); ADDRLP4 12 ARGP4 ADDRGP4 uiInfo+99264+10448 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 20 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 20 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ADDRLP4 20 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ADDF4 CNSTF4 1077936128 SUBF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 uiInfo+99264+10460 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 uiInfo+99264+10452 INDIRI4 ARGI4 ADDRGP4 Text_Paint_Limit CALLV pop line 1906 ;1906: } LABELV $1546 line 1907 ;1907: if (uiInfo.serverStatus.motdOffset && maxX > 0) { ADDRGP4 uiInfo+99264+10452 INDIRI4 CNSTI4 0 EQI4 $1556 ADDRLP4 0 INDIRF4 CNSTF4 0 LEF4 $1556 line 1909 ;1908: // if we have an offset ( we are skipping the first part of the string ) and we fit the string ;1909: if (uiInfo.serverStatus.motdPaintX2 == -1) { ADDRGP4 uiInfo+99264+10448 INDIRI4 CNSTI4 -1 NEI4 $1557 line 1910 ;1910: uiInfo.serverStatus.motdPaintX2 = rect->x + rect->w - 2; ADDRLP4 12 ADDRFP4 0 INDIRP4 ASGNP4 ADDRGP4 uiInfo+99264+10448 ADDRLP4 12 INDIRP4 INDIRF4 ADDRLP4 12 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 ADDF4 CNSTF4 1073741824 SUBF4 CVFI4 4 ASGNI4 line 1911 ;1911: } line 1912 ;1912: } else { ADDRGP4 $1557 JUMPV LABELV $1556 line 1913 ;1913: uiInfo.serverStatus.motdPaintX2 = -1; ADDRGP4 uiInfo+99264+10448 CNSTI4 -1 ASGNI4 line 1914 ;1914: } LABELV $1557 line 1916 ;1915: ;1916: } LABELV $1466 line 1917 ;1917:} LABELV $1465 endproc UI_DrawServerMOTD 24 32 proc UI_DrawKeyBindStatus 8 32 line 1919 ;1918: ;1919:static void UI_DrawKeyBindStatus(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1921 ;1920:// int ofs = 0; TTimo: unused ;1921: if (Display_KeyBindPending()) { ADDRLP4 0 ADDRGP4 Display_KeyBindPending CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 0 EQI4 $1569 line 1922 ;1922: Text_Paint(rect->x, rect->y, scale, color, "Waiting for new key... Press ESCAPE to cancel", 0, 0, textStyle); ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 $1350 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1923 ;1923: } else { ADDRGP4 $1570 JUMPV LABELV $1569 line 1924 ;1924: Text_Paint(rect->x, rect->y, scale, color, "Press ENTER or CLICK to change, Press BACKSPACE to clear", 0, 0, textStyle); ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 INDIRF4 ARGF4 ADDRLP4 4 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRGP4 $1351 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1925 ;1925: } LABELV $1570 line 1926 ;1926:} LABELV $1568 endproc UI_DrawKeyBindStatus 8 32 proc UI_DrawGLInfo 4408 32 line 1928 ;1927: ;1928:static void UI_DrawGLInfo(rectDef_t *rect, float scale, vec4_t color, int textStyle) { line 1934 ;1929: char * eptr; ;1930: char buff[4096]; ;1931: const char *lines[64]; ;1932: int y, numLines, i; ;1933: ;1934: Text_Paint(rect->x + 2, rect->y, scale, color, va("VENDOR: %s", uiInfo.uiDC.glconfig.vendor_string), 0, 30, textStyle); ADDRGP4 $1572 ARGP4 ADDRGP4 uiInfo+62068+1024 ARGP4 ADDRLP4 4368 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 4372 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4372 INDIRP4 INDIRF4 CNSTF4 1073741824 ADDF4 ARGF4 ADDRLP4 4372 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 4368 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 30 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1935 ;1935: Text_Paint(rect->x + 2, rect->y + 15, scale, color, va("VERSION: %s: %s", uiInfo.uiDC.glconfig.version_string,uiInfo.uiDC.glconfig.renderer_string), 0, 30, textStyle); ADDRGP4 $1575 ARGP4 ADDRGP4 uiInfo+62068+2048 ARGP4 ADDRGP4 uiInfo+62068 ARGP4 ADDRLP4 4376 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 4380 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4380 INDIRP4 INDIRF4 CNSTF4 1073741824 ADDF4 ARGF4 ADDRLP4 4380 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 CNSTF4 1097859072 ADDF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 4376 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 30 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1936 ;1936: Text_Paint(rect->x + 2, rect->y + 30, scale, color, va ("PIXELFORMAT: color(%d-bits) Z(%d-bits) stencil(%d-bits)", uiInfo.uiDC.glconfig.colorBits, uiInfo.uiDC.glconfig.depthBits, uiInfo.uiDC.glconfig.stencilBits), 0, 30, textStyle); ADDRGP4 $1579 ARGP4 ADDRGP4 uiInfo+62068+11272 INDIRI4 ARGI4 ADDRGP4 uiInfo+62068+11276 INDIRI4 ARGI4 ADDRGP4 uiInfo+62068+11280 INDIRI4 ARGI4 ADDRLP4 4384 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 4388 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4388 INDIRP4 INDIRF4 CNSTF4 1073741824 ADDF4 ARGF4 ADDRLP4 4388 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 CNSTF4 1106247680 ADDF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 4384 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 30 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1939 ;1937: ;1938: // build null terminated extension strings ;1939: Q_strncpyz(buff, uiInfo.uiDC.glconfig.extensions_string, 4096); ADDRLP4 272 ARGP4 ADDRGP4 uiInfo+62068+3072 ARGP4 CNSTI4 4096 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 1940 ;1940: eptr = buff; ADDRLP4 0 ADDRLP4 272 ASGNP4 line 1941 ;1941: y = rect->y + 45; ADDRLP4 4 ADDRFP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 CNSTF4 1110704128 ADDF4 CVFI4 4 ASGNI4 line 1942 ;1942: numLines = 0; ADDRLP4 12 CNSTI4 0 ASGNI4 ADDRGP4 $1589 JUMPV line 1944 ;1943: while ( y < rect->y + rect->h && *eptr ) ;1944: { LABELV $1591 line 1946 ;1945: while ( *eptr && *eptr == ' ' ) ;1946: *eptr++ = '\0'; ADDRLP4 4392 ADDRLP4 0 INDIRP4 ASGNP4 ADDRLP4 0 ADDRLP4 4392 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 ADDRLP4 4392 INDIRP4 CNSTI1 0 ASGNI1 LABELV $1592 line 1945 ADDRLP4 4396 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 4396 INDIRI4 CNSTI4 0 EQI4 $1594 ADDRLP4 4396 INDIRI4 CNSTI4 32 EQI4 $1591 LABELV $1594 line 1949 ;1947: ;1948: // track start of valid string ;1949: if (*eptr && *eptr != ' ') { ADDRLP4 4400 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 4400 INDIRI4 CNSTI4 0 EQI4 $1598 ADDRLP4 4400 INDIRI4 CNSTI4 32 EQI4 $1598 line 1950 ;1950: lines[numLines++] = eptr; ADDRLP4 4404 ADDRLP4 12 INDIRI4 ASGNI4 ADDRLP4 12 ADDRLP4 4404 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 4404 INDIRI4 CNSTI4 2 LSHI4 ADDRLP4 16 ADDP4 ADDRLP4 0 INDIRP4 ASGNP4 line 1951 ;1951: } ADDRGP4 $1598 JUMPV LABELV $1597 line 1954 ;1952: ;1953: while ( *eptr && *eptr != ' ' ) ;1954: eptr++; ADDRLP4 0 ADDRLP4 0 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 LABELV $1598 line 1953 ADDRLP4 4404 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 4404 INDIRI4 CNSTI4 0 EQI4 $1600 ADDRLP4 4404 INDIRI4 CNSTI4 32 NEI4 $1597 LABELV $1600 line 1955 ;1955: } LABELV $1589 line 1943 ADDRLP4 4392 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRI4 CVIF4 4 ADDRLP4 4392 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ADDRLP4 4392 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ADDF4 GEF4 $1601 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $1592 LABELV $1601 line 1957 ;1956: ;1957: i = 0; ADDRLP4 8 CNSTI4 0 ASGNI4 ADDRGP4 $1603 JUMPV LABELV $1602 line 1958 ;1958: while (i < numLines) { line 1959 ;1959: Text_Paint(rect->x + 2, y, scale, color, lines[i++], 0, 20, textStyle); ADDRFP4 0 INDIRP4 INDIRF4 CNSTF4 1073741824 ADDF4 ARGF4 ADDRLP4 4 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 4396 ADDRLP4 8 INDIRI4 ASGNI4 ADDRLP4 8 ADDRLP4 4396 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 4396 INDIRI4 CNSTI4 2 LSHI4 ADDRLP4 16 ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 20 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1960 ;1960: if (i < numLines) { ADDRLP4 8 INDIRI4 ADDRLP4 12 INDIRI4 GEI4 $1605 line 1961 ;1961: Text_Paint(rect->x + rect->w / 2, y, scale, color, lines[i++], 0, 20, textStyle); ADDRLP4 4404 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4404 INDIRP4 INDIRF4 ADDRLP4 4404 INDIRP4 CNSTI4 8 ADDP4 INDIRF4 CNSTF4 1073741824 DIVF4 ADDF4 ARGF4 ADDRLP4 4 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRP4 ARGP4 ADDRLP4 4400 ADDRLP4 8 INDIRI4 ASGNI4 ADDRLP4 8 ADDRLP4 4400 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 4400 INDIRI4 CNSTI4 2 LSHI4 ADDRLP4 16 ADDP4 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 20 ARGI4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 Text_Paint CALLV pop line 1962 ;1962: } LABELV $1605 line 1963 ;1963: y += 10; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 10 ADDI4 ASGNI4 line 1964 ;1964: if (y > rect->y + rect->h - 11) { ADDRLP4 4400 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRI4 CVIF4 4 ADDRLP4 4400 INDIRP4 CNSTI4 4 ADDP4 INDIRF4 ADDRLP4 4400 INDIRP4 CNSTI4 12 ADDP4 INDIRF4 ADDF4 CNSTF4 1093664768 SUBF4 LEF4 $1607 line 1965 ;1965: break; ADDRGP4 $1604 JUMPV LABELV $1607 line 1967 ;1966: } ;1967: } LABELV $1603 line 1958 ADDRLP4 8 INDIRI4 ADDRLP4 12 INDIRI4 LTI4 $1602 LABELV $1604 line 1970 ;1968: ;1969: ;1970:} LABELV $1571 endproc UI_DrawGLInfo 4408 32 proc UI_OwnerDraw 24 24 line 1974 ;1971: ;1972:// FIXME: table drive ;1973:// ;1974:static void UI_OwnerDraw(float x, float y, float w, float h, float text_x, float text_y, int ownerDraw, int ownerDrawFlags, int align, float special, float scale, vec4_t color, qhandle_t shader, int textStyle) { line 1977 ;1975: rectDef_t rect; ;1976: ;1977: rect.x = x + text_x; ADDRLP4 0 ADDRFP4 0 INDIRF4 ADDRFP4 16 INDIRF4 ADDF4 ASGNF4 line 1978 ;1978: rect.y = y + text_y; ADDRLP4 0+4 ADDRFP4 4 INDIRF4 ADDRFP4 20 INDIRF4 ADDF4 ASGNF4 line 1979 ;1979: rect.w = w; ADDRLP4 0+8 ADDRFP4 8 INDIRF4 ASGNF4 line 1980 ;1980: rect.h = h; ADDRLP4 0+12 ADDRFP4 12 INDIRF4 ASGNF4 line 1982 ;1981: ;1982: switch (ownerDraw) { ADDRLP4 16 ADDRFP4 24 INDIRI4 ASGNI4 ADDRLP4 16 INDIRI4 CNSTI4 200 LTI4 $1614 ADDRLP4 16 INDIRI4 CNSTI4 256 GTI4 $1614 ADDRLP4 16 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $1663-800 ADDP4 INDIRP4 JUMPV lit align 4 LABELV $1663 address $1615 address $1616 address $1617 address $1618 address $1619 address $1622 address $1625 address $1629 address $1630 address $1631 address $1632 address $1632 address $1632 address $1632 address $1632 address $1633 address $1633 address $1633 address $1633 address $1633 address $1634 address $1635 address $1637 address $1638 address $1639 address $1640 address $1641 address $1642 address $1643 address $1646 address $1644 address $1647 address $1645 address $1648 address $1649 address $1650 address $1651 address $1653 address $1614 address $1654 address $1655 address $1656 address $1657 address $1658 address $1627 address $1623 address $1636 address $1659 address $1660 address $1661 address $1662 address $1620 address $1626 address $1624 address $1621 address $1628 address $1652 code LABELV $1615 line 1984 ;1983: case UI_HANDICAP: ;1984: UI_DrawHandicap(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawHandicap CALLV pop line 1985 ;1985: break; ADDRGP4 $1614 JUMPV LABELV $1616 line 1987 ;1986: case UI_EFFECTS: ;1987: UI_DrawEffects(&rect, scale, color); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawEffects CALLV pop line 1988 ;1988: break; ADDRGP4 $1614 JUMPV LABELV $1617 line 1990 ;1989: case UI_PLAYERMODEL: ;1990: UI_DrawPlayerModel(&rect); ADDRLP4 0 ARGP4 ADDRGP4 UI_DrawPlayerModel CALLV pop line 1991 ;1991: break; ADDRGP4 $1614 JUMPV LABELV $1618 line 1993 ;1992: case UI_CLANNAME: ;1993: UI_DrawClanName(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawClanName CALLV pop line 1994 ;1994: break; ADDRGP4 $1614 JUMPV LABELV $1619 line 1996 ;1995: case UI_CLANLOGO: ;1996: UI_DrawClanLogo(&rect, scale, color); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawClanLogo CALLV pop line 1997 ;1997: break; ADDRGP4 $1614 JUMPV LABELV $1620 line 1999 ;1998: case UI_CLANCINEMATIC: ;1999: UI_DrawClanCinematic(&rect, scale, color); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawClanCinematic CALLV pop line 2000 ;2000: break; ADDRGP4 $1614 JUMPV LABELV $1621 line 2002 ;2001: case UI_PREVIEWCINEMATIC: ;2002: UI_DrawPreviewCinematic(&rect, scale, color); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawPreviewCinematic CALLV pop line 2003 ;2003: break; ADDRGP4 $1614 JUMPV LABELV $1622 line 2005 ;2004: case UI_GAMETYPE: ;2005: UI_DrawGameType(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawGameType CALLV pop line 2006 ;2006: break; ADDRGP4 $1614 JUMPV LABELV $1623 line 2008 ;2007: case UI_NETGAMETYPE: ;2008: UI_DrawNetGameType(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawNetGameType CALLV pop line 2009 ;2009: break; ADDRGP4 $1614 JUMPV LABELV $1624 line 2011 ;2010: case UI_JOINGAMETYPE: ;2011: UI_DrawJoinGameType(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawJoinGameType CALLV pop line 2012 ;2012: break; ADDRGP4 $1614 JUMPV LABELV $1625 line 2014 ;2013: case UI_MAPPREVIEW: ;2014: UI_DrawMapPreview(&rect, scale, color, qtrue); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRGP4 UI_DrawMapPreview CALLV pop line 2015 ;2015: break; ADDRGP4 $1614 JUMPV LABELV $1626 line 2017 ;2016: case UI_MAP_TIMETOBEAT: ;2017: UI_DrawMapTimeToBeat(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawMapTimeToBeat CALLV pop line 2018 ;2018: break; ADDRGP4 $1614 JUMPV LABELV $1627 line 2020 ;2019: case UI_MAPCINEMATIC: ;2020: UI_DrawMapCinematic(&rect, scale, color, qfalse); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 CNSTI4 0 ARGI4 ADDRGP4 UI_DrawMapCinematic CALLV pop line 2021 ;2021: break; ADDRGP4 $1614 JUMPV LABELV $1628 line 2023 ;2022: case UI_STARTMAPCINEMATIC: ;2023: UI_DrawMapCinematic(&rect, scale, color, qtrue); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRGP4 UI_DrawMapCinematic CALLV pop line 2024 ;2024: break; ADDRGP4 $1614 JUMPV LABELV $1629 line 2026 ;2025: case UI_SKILL: ;2026: UI_DrawSkill(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawSkill CALLV pop line 2027 ;2027: break; ADDRGP4 $1614 JUMPV LABELV $1630 line 2029 ;2028: case UI_BLUETEAMNAME: ;2029: UI_DrawTeamName(&rect, scale, color, qtrue, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawTeamName CALLV pop line 2030 ;2030: break; ADDRGP4 $1614 JUMPV LABELV $1631 line 2032 ;2031: case UI_REDTEAMNAME: ;2032: UI_DrawTeamName(&rect, scale, color, qfalse, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 CNSTI4 0 ARGI4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawTeamName CALLV pop line 2033 ;2033: break; ADDRGP4 $1614 JUMPV LABELV $1632 line 2039 ;2034: case UI_BLUETEAM1: ;2035: case UI_BLUETEAM2: ;2036: case UI_BLUETEAM3: ;2037: case UI_BLUETEAM4: ;2038: case UI_BLUETEAM5: ;2039: UI_DrawTeamMember(&rect, scale, color, qtrue, ownerDraw - UI_BLUETEAM1 + 1, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRLP4 20 CNSTI4 1 ASGNI4 ADDRLP4 20 INDIRI4 ARGI4 ADDRFP4 24 INDIRI4 CNSTI4 210 SUBI4 ADDRLP4 20 INDIRI4 ADDI4 ARGI4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawTeamMember CALLV pop line 2040 ;2040: break; ADDRGP4 $1614 JUMPV LABELV $1633 line 2046 ;2041: case UI_REDTEAM1: ;2042: case UI_REDTEAM2: ;2043: case UI_REDTEAM3: ;2044: case UI_REDTEAM4: ;2045: case UI_REDTEAM5: ;2046: UI_DrawTeamMember(&rect, scale, color, qfalse, ownerDraw - UI_REDTEAM1 + 1, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 CNSTI4 0 ARGI4 ADDRFP4 24 INDIRI4 CNSTI4 215 SUBI4 CNSTI4 1 ADDI4 ARGI4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawTeamMember CALLV pop line 2047 ;2047: break; ADDRGP4 $1614 JUMPV LABELV $1634 line 2049 ;2048: case UI_NETSOURCE: ;2049: UI_DrawNetSource(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawNetSource CALLV pop line 2050 ;2050: break; ADDRGP4 $1614 JUMPV LABELV $1635 line 2052 ;2051: case UI_NETMAPPREVIEW: ;2052: UI_DrawNetMapPreview(&rect, scale, color); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawNetMapPreview CALLV pop line 2053 ;2053: break; ADDRGP4 $1614 JUMPV LABELV $1636 line 2055 ;2054: case UI_NETMAPCINEMATIC: ;2055: UI_DrawNetMapCinematic(&rect, scale, color); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawNetMapCinematic CALLV pop line 2056 ;2056: break; ADDRGP4 $1614 JUMPV LABELV $1637 line 2058 ;2057: case UI_NETFILTER: ;2058: UI_DrawNetFilter(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawNetFilter CALLV pop line 2059 ;2059: break; ADDRGP4 $1614 JUMPV LABELV $1638 line 2061 ;2060: case UI_TIER: ;2061: UI_DrawTier(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawTier CALLV pop line 2062 ;2062: break; ADDRGP4 $1614 JUMPV LABELV $1639 line 2064 ;2063: case UI_OPPONENTMODEL: ;2064: UI_DrawOpponent(&rect); ADDRLP4 0 ARGP4 ADDRGP4 UI_DrawOpponent CALLV pop line 2065 ;2065: break; ADDRGP4 $1614 JUMPV LABELV $1640 line 2067 ;2066: case UI_TIERMAP1: ;2067: UI_DrawTierMap(&rect, 0); ADDRLP4 0 ARGP4 CNSTI4 0 ARGI4 ADDRGP4 UI_DrawTierMap CALLV pop line 2068 ;2068: break; ADDRGP4 $1614 JUMPV LABELV $1641 line 2070 ;2069: case UI_TIERMAP2: ;2070: UI_DrawTierMap(&rect, 1); ADDRLP4 0 ARGP4 CNSTI4 1 ARGI4 ADDRGP4 UI_DrawTierMap CALLV pop line 2071 ;2071: break; ADDRGP4 $1614 JUMPV LABELV $1642 line 2073 ;2072: case UI_TIERMAP3: ;2073: UI_DrawTierMap(&rect, 2); ADDRLP4 0 ARGP4 CNSTI4 2 ARGI4 ADDRGP4 UI_DrawTierMap CALLV pop line 2074 ;2074: break; ADDRGP4 $1614 JUMPV LABELV $1643 line 2076 ;2075: case UI_PLAYERLOGO: ;2076: UI_DrawPlayerLogo(&rect, color); ADDRLP4 0 ARGP4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawPlayerLogo CALLV pop line 2077 ;2077: break; ADDRGP4 $1614 JUMPV LABELV $1644 line 2079 ;2078: case UI_PLAYERLOGO_METAL: ;2079: UI_DrawPlayerLogoMetal(&rect, color); ADDRLP4 0 ARGP4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawPlayerLogoMetal CALLV pop line 2080 ;2080: break; ADDRGP4 $1614 JUMPV LABELV $1645 line 2082 ;2081: case UI_PLAYERLOGO_NAME: ;2082: UI_DrawPlayerLogoName(&rect, color); ADDRLP4 0 ARGP4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawPlayerLogoName CALLV pop line 2083 ;2083: break; ADDRGP4 $1614 JUMPV LABELV $1646 line 2085 ;2084: case UI_OPPONENTLOGO: ;2085: UI_DrawOpponentLogo(&rect, color); ADDRLP4 0 ARGP4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawOpponentLogo CALLV pop line 2086 ;2086: break; ADDRGP4 $1614 JUMPV LABELV $1647 line 2088 ;2087: case UI_OPPONENTLOGO_METAL: ;2088: UI_DrawOpponentLogoMetal(&rect, color); ADDRLP4 0 ARGP4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawOpponentLogoMetal CALLV pop line 2089 ;2089: break; ADDRGP4 $1614 JUMPV LABELV $1648 line 2091 ;2090: case UI_OPPONENTLOGO_NAME: ;2091: UI_DrawOpponentLogoName(&rect, color); ADDRLP4 0 ARGP4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawOpponentLogoName CALLV pop line 2092 ;2092: break; ADDRGP4 $1614 JUMPV LABELV $1649 line 2094 ;2093: case UI_TIER_MAPNAME: ;2094: UI_DrawTierMapName(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawTierMapName CALLV pop line 2095 ;2095: break; ADDRGP4 $1614 JUMPV LABELV $1650 line 2097 ;2096: case UI_TIER_GAMETYPE: ;2097: UI_DrawTierGameType(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawTierGameType CALLV pop line 2098 ;2098: break; ADDRGP4 $1614 JUMPV LABELV $1651 line 2100 ;2099: case UI_ALLMAPS_SELECTION: ;2100: UI_DrawAllMapsSelection(&rect, scale, color, textStyle, qtrue); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 CNSTI4 1 ARGI4 ADDRGP4 UI_DrawAllMapsSelection CALLV pop line 2101 ;2101: break; ADDRGP4 $1614 JUMPV LABELV $1652 line 2103 ;2102: case UI_MAPS_SELECTION: ;2103: UI_DrawAllMapsSelection(&rect, scale, color, textStyle, qfalse); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 UI_DrawAllMapsSelection CALLV pop line 2104 ;2104: break; ADDRGP4 $1614 JUMPV LABELV $1653 line 2106 ;2105: case UI_OPPONENT_NAME: ;2106: UI_DrawOpponentName(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawOpponentName CALLV pop line 2107 ;2107: break; ADDRGP4 $1614 JUMPV LABELV $1654 line 2109 ;2108: case UI_BOTNAME: ;2109: UI_DrawBotName(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawBotName CALLV pop line 2110 ;2110: break; ADDRGP4 $1614 JUMPV LABELV $1655 line 2112 ;2111: case UI_BOTSKILL: ;2112: UI_DrawBotSkill(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawBotSkill CALLV pop line 2113 ;2113: break; ADDRGP4 $1614 JUMPV LABELV $1656 line 2115 ;2114: case UI_REDBLUE: ;2115: UI_DrawRedBlue(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawRedBlue CALLV pop line 2116 ;2116: break; ADDRGP4 $1614 JUMPV LABELV $1657 line 2118 ;2117: case UI_CROSSHAIR: ;2118: UI_DrawCrosshair(&rect, scale, color); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawCrosshair CALLV pop line 2119 ;2119: break; ADDRGP4 $1614 JUMPV LABELV $1658 line 2121 ;2120: case UI_SELECTEDPLAYER: ;2121: UI_DrawSelectedPlayer(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawSelectedPlayer CALLV pop line 2122 ;2122: break; ADDRGP4 $1614 JUMPV LABELV $1659 line 2124 ;2123: case UI_SERVERREFRESHDATE: ;2124: UI_DrawServerRefreshDate(&rect, scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawServerRefreshDate CALLV pop line 2125 ;2125: break; ADDRGP4 $1614 JUMPV LABELV $1660 line 2127 ;2126: case UI_SERVERMOTD: ;2127: UI_DrawServerMOTD(&rect, scale, color); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRGP4 UI_DrawServerMOTD CALLV pop line 2128 ;2128: break; ADDRGP4 $1614 JUMPV LABELV $1661 line 2130 ;2129: case UI_GLINFO: ;2130: UI_DrawGLInfo(&rect,scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawGLInfo CALLV pop line 2131 ;2131: break; ADDRGP4 $1614 JUMPV LABELV $1662 line 2133 ;2132: case UI_KEYBINDSTATUS: ;2133: UI_DrawKeyBindStatus(&rect,scale, color, textStyle); ADDRLP4 0 ARGP4 ADDRFP4 40 INDIRF4 ARGF4 ADDRFP4 44 INDIRP4 ARGP4 ADDRFP4 52 INDIRI4 ARGI4 ADDRGP4 UI_DrawKeyBindStatus CALLV pop line 2134 ;2134: break; line 2136 ;2135: default: ;2136: break; LABELV $1614 line 2139 ;2137: } ;2138: ;2139:} LABELV $1609 endproc UI_OwnerDraw 24 24 proc UI_OwnerDrawVisible 8 8 line 2141 ;2140: ;2141:static qboolean UI_OwnerDrawVisible(int flags) { line 2142 ;2142: qboolean vis = qtrue; ADDRLP4 0 CNSTI4 1 ASGNI4 ADDRGP4 $1667 JUMPV LABELV $1666 line 2144 ;2143: ;2144: while (flags) { line 2146 ;2145: ;2146: if (flags & UI_SHOW_FFA) { ADDRFP4 0 INDIRI4 CNSTI4 256 BANDI4 CNSTI4 0 EQI4 $1669 line 2147 ;2147: if (trap_Cvar_VariableValue("g_gametype") != GT_FFA) { ADDRGP4 $1362 ARGP4 ADDRLP4 4 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 INDIRF4 CNSTF4 0 EQF4 $1671 line 2148 ;2148: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2149 ;2149: } LABELV $1671 line 2150 ;2150: flags &= ~UI_SHOW_FFA; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -257 BANDI4 ASGNI4 line 2151 ;2151: } LABELV $1669 line 2153 ;2152: ;2153: if (flags & UI_SHOW_NOTFFA) { ADDRFP4 0 INDIRI4 CNSTI4 512 BANDI4 CNSTI4 0 EQI4 $1673 line 2154 ;2154: if (trap_Cvar_VariableValue("g_gametype") == GT_FFA) { ADDRGP4 $1362 ARGP4 ADDRLP4 4 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 INDIRF4 CNSTF4 0 NEF4 $1675 line 2155 ;2155: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2156 ;2156: } LABELV $1675 line 2157 ;2157: flags &= ~UI_SHOW_NOTFFA; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -513 BANDI4 ASGNI4 line 2158 ;2158: } LABELV $1673 line 2160 ;2159: ;2160: if (flags & UI_SHOW_LEADER) { ADDRFP4 0 INDIRI4 CNSTI4 1 BANDI4 CNSTI4 0 EQI4 $1677 line 2162 ;2161: // these need to show when this client can give orders to a player or a group ;2162: if (!uiInfo.teamLeader) { ADDRGP4 uiInfo+78868 INDIRI4 CNSTI4 0 NEI4 $1679 line 2163 ;2163: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2164 ;2164: } else { ADDRGP4 $1680 JUMPV LABELV $1679 line 2166 ;2165: // if showing yourself ;2166: if (ui_selectedPlayer.integer < uiInfo.myTeamCount && uiInfo.teamClientNums[ui_selectedPlayer.integer] == uiInfo.playerNumber) { ADDRGP4 ui_selectedPlayer+12 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 GEI4 $1682 ADDRGP4 ui_selectedPlayer+12 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+82968 ADDP4 INDIRI4 ADDRGP4 uiInfo+78864 INDIRI4 NEI4 $1682 line 2167 ;2167: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2168 ;2168: } LABELV $1682 line 2169 ;2169: } LABELV $1680 line 2170 ;2170: flags &= ~UI_SHOW_LEADER; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -2 BANDI4 ASGNI4 line 2171 ;2171: } LABELV $1677 line 2172 ;2172: if (flags & UI_SHOW_NOTLEADER) { ADDRFP4 0 INDIRI4 CNSTI4 2 BANDI4 CNSTI4 0 EQI4 $1689 line 2174 ;2173: // these need to show when this client is assigning their own status or they are NOT the leader ;2174: if (uiInfo.teamLeader) { ADDRGP4 uiInfo+78868 INDIRI4 CNSTI4 0 EQI4 $1691 line 2176 ;2175: // if not showing yourself ;2176: if (!(ui_selectedPlayer.integer < uiInfo.myTeamCount && uiInfo.teamClientNums[ui_selectedPlayer.integer] == uiInfo.playerNumber)) { ADDRGP4 ui_selectedPlayer+12 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 GEI4 $1701 ADDRGP4 ui_selectedPlayer+12 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+82968 ADDP4 INDIRI4 ADDRGP4 uiInfo+78864 INDIRI4 EQI4 $1694 LABELV $1701 line 2177 ;2177: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2178 ;2178: } LABELV $1694 line 2180 ;2179: // these need to show when this client can give orders to a player or a group ;2180: } LABELV $1691 line 2181 ;2181: flags &= ~UI_SHOW_NOTLEADER; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -3 BANDI4 ASGNI4 line 2182 ;2182: } LABELV $1689 line 2183 ;2183: if (flags & UI_SHOW_FAVORITESERVERS) { ADDRFP4 0 INDIRI4 CNSTI4 4 BANDI4 CNSTI4 0 EQI4 $1702 line 2185 ;2184: // this assumes you only put this type of display flag on something showing in the proper context ;2185: if (ui_netSource.integer != AS_FAVORITES) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 3 EQI4 $1704 line 2186 ;2186: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2187 ;2187: } LABELV $1704 line 2188 ;2188: flags &= ~UI_SHOW_FAVORITESERVERS; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -5 BANDI4 ASGNI4 line 2189 ;2189: } LABELV $1702 line 2190 ;2190: if (flags & UI_SHOW_NOTFAVORITESERVERS) { ADDRFP4 0 INDIRI4 CNSTI4 4096 BANDI4 CNSTI4 0 EQI4 $1707 line 2192 ;2191: // this assumes you only put this type of display flag on something showing in the proper context ;2192: if (ui_netSource.integer == AS_FAVORITES) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 3 NEI4 $1709 line 2193 ;2193: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2194 ;2194: } LABELV $1709 line 2195 ;2195: flags &= ~UI_SHOW_NOTFAVORITESERVERS; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -4097 BANDI4 ASGNI4 line 2196 ;2196: } LABELV $1707 line 2197 ;2197: if (flags & UI_SHOW_ANYTEAMGAME) { ADDRFP4 0 INDIRI4 CNSTI4 16 BANDI4 CNSTI4 0 EQI4 $1712 line 2198 ;2198: if (uiInfo.gameTypes[ui_gameType.integer].gtEnum <= GT_TEAM ) { ADDRLP4 4 CNSTI4 3 ASGNI4 ADDRGP4 ui_gameType+12 INDIRI4 ADDRLP4 4 INDIRI4 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ADDRLP4 4 INDIRI4 GTI4 $1714 line 2199 ;2199: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2200 ;2200: } LABELV $1714 line 2201 ;2201: flags &= ~UI_SHOW_ANYTEAMGAME; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -17 BANDI4 ASGNI4 line 2202 ;2202: } LABELV $1712 line 2203 ;2203: if (flags & UI_SHOW_ANYNONTEAMGAME) { ADDRFP4 0 INDIRI4 CNSTI4 8 BANDI4 CNSTI4 0 EQI4 $1719 line 2204 ;2204: if (uiInfo.gameTypes[ui_gameType.integer].gtEnum > GT_TEAM ) { ADDRLP4 4 CNSTI4 3 ASGNI4 ADDRGP4 ui_gameType+12 INDIRI4 ADDRLP4 4 INDIRI4 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ADDRLP4 4 INDIRI4 LEI4 $1721 line 2205 ;2205: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2206 ;2206: } LABELV $1721 line 2207 ;2207: flags &= ~UI_SHOW_ANYNONTEAMGAME; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -9 BANDI4 ASGNI4 line 2208 ;2208: } LABELV $1719 line 2209 ;2209: if (flags & UI_SHOW_NETANYTEAMGAME) { ADDRFP4 0 INDIRI4 CNSTI4 2048 BANDI4 CNSTI4 0 EQI4 $1726 line 2210 ;2210: if (uiInfo.gameTypes[ui_netGameType.integer].gtEnum <= GT_TEAM ) { ADDRLP4 4 CNSTI4 3 ASGNI4 ADDRGP4 ui_netGameType+12 INDIRI4 ADDRLP4 4 INDIRI4 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ADDRLP4 4 INDIRI4 GTI4 $1728 line 2211 ;2211: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2212 ;2212: } LABELV $1728 line 2213 ;2213: flags &= ~UI_SHOW_NETANYTEAMGAME; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -2049 BANDI4 ASGNI4 line 2214 ;2214: } LABELV $1726 line 2215 ;2215: if (flags & UI_SHOW_NETANYNONTEAMGAME) { ADDRFP4 0 INDIRI4 CNSTI4 1024 BANDI4 CNSTI4 0 EQI4 $1733 line 2216 ;2216: if (uiInfo.gameTypes[ui_netGameType.integer].gtEnum > GT_TEAM ) { ADDRLP4 4 CNSTI4 3 ASGNI4 ADDRGP4 ui_netGameType+12 INDIRI4 ADDRLP4 4 INDIRI4 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ADDRLP4 4 INDIRI4 LEI4 $1735 line 2217 ;2217: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2218 ;2218: } LABELV $1735 line 2219 ;2219: flags &= ~UI_SHOW_NETANYNONTEAMGAME; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -1025 BANDI4 ASGNI4 line 2220 ;2220: } LABELV $1733 line 2221 ;2221: if (flags & UI_SHOW_NEWHIGHSCORE) { ADDRFP4 0 INDIRI4 CNSTI4 32 BANDI4 CNSTI4 0 EQI4 $1740 line 2222 ;2222: if (uiInfo.newHighScoreTime < uiInfo.uiDC.realTime) { ADDRGP4 uiInfo+73416 INDIRI4 ADDRGP4 uiInfo+208 INDIRI4 GEI4 $1742 line 2223 ;2223: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2224 ;2224: } else { ADDRGP4 $1743 JUMPV LABELV $1742 line 2225 ;2225: if (uiInfo.soundHighScore) { ADDRGP4 uiInfo+73436 INDIRI4 CNSTI4 0 EQI4 $1746 line 2226 ;2226: if (trap_Cvar_VariableValue("sv_killserver") == 0) { ADDRGP4 $397 ARGP4 ADDRLP4 4 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 INDIRF4 CNSTF4 0 NEF4 $1749 line 2228 ;2227: // wait on server to go down before playing sound ;2228: trap_S_StartLocalSound(uiInfo.newHighScoreSound, CHAN_ANNOUNCER); ADDRGP4 uiInfo+119484 INDIRI4 ARGI4 CNSTI4 7 ARGI4 ADDRGP4 trap_S_StartLocalSound CALLV pop line 2229 ;2229: uiInfo.soundHighScore = qfalse; ADDRGP4 uiInfo+73436 CNSTI4 0 ASGNI4 line 2230 ;2230: } LABELV $1749 line 2231 ;2231: } LABELV $1746 line 2232 ;2232: } LABELV $1743 line 2233 ;2233: flags &= ~UI_SHOW_NEWHIGHSCORE; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -33 BANDI4 ASGNI4 line 2234 ;2234: } LABELV $1740 line 2235 ;2235: if (flags & UI_SHOW_NEWBESTTIME) { ADDRFP4 0 INDIRI4 CNSTI4 128 BANDI4 CNSTI4 0 EQI4 $1753 line 2236 ;2236: if (uiInfo.newBestTime < uiInfo.uiDC.realTime) { ADDRGP4 uiInfo+73420 INDIRI4 ADDRGP4 uiInfo+208 INDIRI4 GEI4 $1755 line 2237 ;2237: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2238 ;2238: } LABELV $1755 line 2239 ;2239: flags &= ~UI_SHOW_NEWBESTTIME; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -129 BANDI4 ASGNI4 line 2240 ;2240: } LABELV $1753 line 2241 ;2241: if (flags & UI_SHOW_DEMOAVAILABLE) { ADDRFP4 0 INDIRI4 CNSTI4 64 BANDI4 CNSTI4 0 EQI4 $1759 line 2242 ;2242: if (!uiInfo.demoAvailable) { ADDRGP4 uiInfo+73432 INDIRI4 CNSTI4 0 NEI4 $1761 line 2243 ;2243: vis = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 2244 ;2244: } LABELV $1761 line 2245 ;2245: flags &= ~UI_SHOW_DEMOAVAILABLE; ADDRFP4 0 ADDRFP4 0 INDIRI4 CNSTI4 -65 BANDI4 ASGNI4 line 2246 ;2246: } else { ADDRGP4 $1760 JUMPV LABELV $1759 line 2247 ;2247: flags = 0; ADDRFP4 0 CNSTI4 0 ASGNI4 line 2248 ;2248: } LABELV $1760 line 2249 ;2249: } LABELV $1667 line 2144 ADDRFP4 0 INDIRI4 CNSTI4 0 NEI4 $1666 line 2250 ;2250: return vis; ADDRLP4 0 INDIRI4 RETI4 LABELV $1665 endproc UI_OwnerDrawVisible 8 8 proc UI_Handicap_HandleKey 20 12 line 2253 ;2251:} ;2252: ;2253:static qboolean UI_Handicap_HandleKey(int flags, float *special, int key) { line 2254 ;2254: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1769 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1769 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1769 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1765 LABELV $1769 line 2256 ;2255: int h; ;2256: h = Com_Clamp( 5, 100, trap_Cvar_VariableValue("handicap") ); ADDRGP4 $699 ARGP4 ADDRLP4 8 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 CNSTF4 1084227584 ARGF4 CNSTF4 1120403456 ARGF4 ADDRLP4 8 INDIRF4 ARGF4 ADDRLP4 12 ADDRGP4 Com_Clamp CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 12 INDIRF4 CVFI4 4 ASGNI4 line 2257 ;2257: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1770 line 2258 ;2258: h -= 5; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 5 SUBI4 ASGNI4 line 2259 ;2259: } else { ADDRGP4 $1771 JUMPV LABELV $1770 line 2260 ;2260: h += 5; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 5 ADDI4 ASGNI4 line 2261 ;2261: } LABELV $1771 line 2262 ;2262: if (h > 100) { ADDRLP4 4 INDIRI4 CNSTI4 100 LEI4 $1772 line 2263 ;2263: h = 5; ADDRLP4 4 CNSTI4 5 ASGNI4 line 2264 ;2264: } else if (h < 0) { ADDRGP4 $1773 JUMPV LABELV $1772 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $1774 line 2265 ;2265: h = 100; ADDRLP4 4 CNSTI4 100 ASGNI4 line 2266 ;2266: } LABELV $1774 LABELV $1773 line 2267 ;2267: trap_Cvar_Set( "handicap", va( "%i", h) ); ADDRGP4 $1776 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 16 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $699 ARGP4 ADDRLP4 16 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2268 ;2268: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1764 JUMPV LABELV $1765 line 2270 ;2269: } ;2270: return qfalse; CNSTI4 0 RETI4 LABELV $1764 endproc UI_Handicap_HandleKey 20 12 proc UI_Effects_HandleKey 8 8 line 2273 ;2271:} ;2272: ;2273:static qboolean UI_Effects_HandleKey(int flags, float *special, int key) { line 2274 ;2274: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1782 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1782 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1782 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1778 LABELV $1782 line 2276 ;2275: ;2276: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1783 line 2277 ;2277: uiInfo.effectsColor--; ADDRLP4 4 ADDRGP4 uiInfo+136904 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2278 ;2278: } else { ADDRGP4 $1784 JUMPV LABELV $1783 line 2279 ;2279: uiInfo.effectsColor++; ADDRLP4 4 ADDRGP4 uiInfo+136904 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2280 ;2280: } LABELV $1784 line 2282 ;2281: ;2282: if( uiInfo.effectsColor > 6 ) { ADDRGP4 uiInfo+136904 INDIRI4 CNSTI4 6 LEI4 $1787 line 2283 ;2283: uiInfo.effectsColor = 0; ADDRGP4 uiInfo+136904 CNSTI4 0 ASGNI4 line 2284 ;2284: } else if (uiInfo.effectsColor < 0) { ADDRGP4 $1788 JUMPV LABELV $1787 ADDRGP4 uiInfo+136904 INDIRI4 CNSTI4 0 GEI4 $1791 line 2285 ;2285: uiInfo.effectsColor = 6; ADDRGP4 uiInfo+136904 CNSTI4 6 ASGNI4 line 2286 ;2286: } LABELV $1791 LABELV $1788 line 2288 ;2287: ;2288: trap_Cvar_SetValue( "color1", uitogamecode[uiInfo.effectsColor] ); ADDRGP4 $1795 ARGP4 ADDRGP4 uiInfo+136904 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uitogamecode ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 2289 ;2289: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1777 JUMPV LABELV $1778 line 2291 ;2290: } ;2291: return qfalse; CNSTI4 0 RETI4 LABELV $1777 endproc UI_Effects_HandleKey 8 8 proc UI_ClanName_HandleKey 16 8 line 2294 ;2292:} ;2293: ;2294:static qboolean UI_ClanName_HandleKey(int flags, float *special, int key) { line 2295 ;2295: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1802 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1802 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1802 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1798 LABELV $1802 line 2297 ;2296: int i; ;2297: i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 8 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 12 INDIRI4 ASGNI4 line 2298 ;2298: if (uiInfo.teamList[i].cinematic >= 0) { CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 CNSTI4 0 LTI4 $1803 line 2299 ;2299: trap_CIN_StopCinematic(uiInfo.teamList[i].cinematic); CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 2300 ;2300: uiInfo.teamList[i].cinematic = -1; CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 CNSTI4 -1 ASGNI4 line 2301 ;2301: } LABELV $1803 line 2302 ;2302: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1811 line 2303 ;2303: i--; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2304 ;2304: } else { ADDRGP4 $1812 JUMPV LABELV $1811 line 2305 ;2305: i++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2306 ;2306: } LABELV $1812 line 2307 ;2307: if (i >= uiInfo.teamCount) { ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 LTI4 $1813 line 2308 ;2308: i = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 2309 ;2309: } else if (i < 0) { ADDRGP4 $1814 JUMPV LABELV $1813 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $1816 line 2310 ;2310: i = uiInfo.teamCount - 1; ADDRLP4 4 ADDRGP4 uiInfo+75756 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2311 ;2311: } LABELV $1816 LABELV $1814 line 2312 ;2312: trap_Cvar_Set( "ui_teamName", uiInfo.teamList[i].teamName); ADDRGP4 $701 ARGP4 CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2313 ;2313: UI_HeadCountByTeam(); ADDRGP4 UI_HeadCountByTeam CALLI4 pop line 2314 ;2314: UI_FeederSelection(FEEDER_HEADS, 0); CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 ADDRGP4 UI_FeederSelection CALLV pop line 2315 ;2315: updateModel = qtrue; ADDRGP4 updateModel CNSTI4 1 ASGNI4 line 2316 ;2316: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1797 JUMPV LABELV $1798 line 2318 ;2317: } ;2318: return qfalse; CNSTI4 0 RETI4 LABELV $1797 endproc UI_ClanName_HandleKey 16 8 proc UI_GameType_HandleKey 20 16 line 2321 ;2319:} ;2320: ;2321:static qboolean UI_GameType_HandleKey(int flags, float *special, int key, qboolean resetMap) { line 2322 ;2322: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1825 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1825 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1825 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1821 LABELV $1825 line 2323 ;2323: int oldCount = UI_MapCountByGameType(qtrue); CNSTI4 1 ARGI4 ADDRLP4 8 ADDRGP4 UI_MapCountByGameType CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 8 INDIRI4 ASGNI4 line 2326 ;2324: ;2325: // hard coded mess here ;2326: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1826 line 2327 ;2327: ui_gameType.integer--; ADDRLP4 12 ADDRGP4 ui_gameType+12 ASGNP4 ADDRLP4 12 INDIRP4 ADDRLP4 12 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2328 ;2328: if (ui_gameType.integer == 2) { ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 2 NEI4 $1829 line 2329 ;2329: ui_gameType.integer = 1; ADDRGP4 ui_gameType+12 CNSTI4 1 ASGNI4 line 2330 ;2330: } else if (ui_gameType.integer < 2) { ADDRGP4 $1827 JUMPV LABELV $1829 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 2 GEI4 $1827 line 2331 ;2331: ui_gameType.integer = uiInfo.numGameTypes - 1; ADDRGP4 ui_gameType+12 ADDRGP4 uiInfo+78576 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2332 ;2332: } line 2333 ;2333: } else { ADDRGP4 $1827 JUMPV LABELV $1826 line 2334 ;2334: ui_gameType.integer++; ADDRLP4 12 ADDRGP4 ui_gameType+12 ASGNP4 ADDRLP4 12 INDIRP4 ADDRLP4 12 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2335 ;2335: if (ui_gameType.integer >= uiInfo.numGameTypes) { ADDRGP4 ui_gameType+12 INDIRI4 ADDRGP4 uiInfo+78576 INDIRI4 LTI4 $1839 line 2336 ;2336: ui_gameType.integer = 1; ADDRGP4 ui_gameType+12 CNSTI4 1 ASGNI4 line 2337 ;2337: } else if (ui_gameType.integer == 2) { ADDRGP4 $1840 JUMPV LABELV $1839 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 2 NEI4 $1844 line 2338 ;2338: ui_gameType.integer = 3; ADDRGP4 ui_gameType+12 CNSTI4 3 ASGNI4 line 2339 ;2339: } LABELV $1844 LABELV $1840 line 2340 ;2340: } LABELV $1827 line 2342 ;2341: ;2342: if (uiInfo.gameTypes[ui_gameType.integer].gtEnum == GT_TOURNAMENT) { ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 CNSTI4 1 NEI4 $1848 line 2343 ;2343: trap_Cvar_Set("ui_Q3Model", "1"); ADDRGP4 $964 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2344 ;2344: } else { ADDRGP4 $1849 JUMPV LABELV $1848 line 2345 ;2345: trap_Cvar_Set("ui_Q3Model", "0"); ADDRGP4 $964 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2346 ;2346: } LABELV $1849 line 2348 ;2347: ;2348: trap_Cvar_Set("ui_gameType", va("%d", ui_gameType.integer)); ADDRGP4 $716 ARGP4 ADDRGP4 ui_gameType+12 INDIRI4 ARGI4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $1853 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2349 ;2349: UI_SetCapFragLimits(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_SetCapFragLimits CALLV pop line 2350 ;2350: UI_LoadBestScores(uiInfo.mapList[ui_currentMap.integer].mapLoadName, uiInfo.gameTypes[ui_gameType.integer].gtEnum); CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_LoadBestScores CALLV pop line 2351 ;2351: if (resetMap && oldCount != UI_MapCountByGameType(qtrue)) { ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $1861 CNSTI4 1 ARGI4 ADDRLP4 16 ADDRGP4 UI_MapCountByGameType CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 ADDRLP4 16 INDIRI4 EQI4 $1861 line 2352 ;2352: trap_Cvar_Set( "ui_currentMap", "0"); ADDRGP4 $891 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2353 ;2353: Menu_SetFeederSelection(NULL, FEEDER_MAPS, 0, NULL); CNSTP4 0 ARGP4 CNSTI4 1 ARGI4 CNSTI4 0 ARGI4 CNSTP4 0 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 2354 ;2354: } LABELV $1861 line 2355 ;2355: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1820 JUMPV LABELV $1821 line 2357 ;2356: } ;2357: return qfalse; CNSTI4 0 RETI4 LABELV $1820 endproc UI_GameType_HandleKey 20 16 proc UI_NetGameType_HandleKey 12 16 line 2360 ;2358:} ;2359: ;2360:static qboolean UI_NetGameType_HandleKey(int flags, float *special, int key) { line 2361 ;2361: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1868 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1868 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1868 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1864 LABELV $1868 line 2363 ;2362: ;2363: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1869 line 2364 ;2364: ui_netGameType.integer--; ADDRLP4 4 ADDRGP4 ui_netGameType+12 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2365 ;2365: } else { ADDRGP4 $1870 JUMPV LABELV $1869 line 2366 ;2366: ui_netGameType.integer++; ADDRLP4 4 ADDRGP4 ui_netGameType+12 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2367 ;2367: } LABELV $1870 line 2369 ;2368: ;2369: if (ui_netGameType.integer < 0) { ADDRGP4 ui_netGameType+12 INDIRI4 CNSTI4 0 GEI4 $1873 line 2370 ;2370: ui_netGameType.integer = uiInfo.numGameTypes - 1; ADDRGP4 ui_netGameType+12 ADDRGP4 uiInfo+78576 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2371 ;2371: } else if (ui_netGameType.integer >= uiInfo.numGameTypes) { ADDRGP4 $1874 JUMPV LABELV $1873 ADDRGP4 ui_netGameType+12 INDIRI4 ADDRGP4 uiInfo+78576 INDIRI4 LTI4 $1878 line 2372 ;2372: ui_netGameType.integer = 0; ADDRGP4 ui_netGameType+12 CNSTI4 0 ASGNI4 line 2373 ;2373: } LABELV $1878 LABELV $1874 line 2375 ;2374: ;2375: trap_Cvar_Set( "ui_netGameType", va("%d", ui_netGameType.integer)); ADDRGP4 $716 ARGP4 ADDRGP4 ui_netGameType+12 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $730 ARGP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2376 ;2376: trap_Cvar_Set( "ui_actualnetGameType", va("%d", uiInfo.gameTypes[ui_netGameType.integer].gtEnum)); ADDRGP4 $716 ARGP4 ADDRGP4 ui_netGameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ARGI4 ADDRLP4 8 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $1884 ARGP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2377 ;2377: trap_Cvar_Set( "ui_currentNetMap", "0"); ADDRGP4 $889 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2378 ;2378: UI_MapCountByGameType(qfalse); CNSTI4 0 ARGI4 ADDRGP4 UI_MapCountByGameType CALLI4 pop line 2379 ;2379: Menu_SetFeederSelection(NULL, FEEDER_ALLMAPS, 0, NULL); CNSTP4 0 ARGP4 CNSTI4 4 ARGI4 CNSTI4 0 ARGI4 CNSTP4 0 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 2380 ;2380: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1863 JUMPV LABELV $1864 line 2382 ;2381: } ;2382: return qfalse; CNSTI4 0 RETI4 LABELV $1863 endproc UI_NetGameType_HandleKey 12 16 proc UI_JoinGameType_HandleKey 8 8 line 2385 ;2383:} ;2384: ;2385:static qboolean UI_JoinGameType_HandleKey(int flags, float *special, int key) { line 2386 ;2386: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1893 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1893 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1893 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1889 LABELV $1893 line 2388 ;2387: ;2388: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1894 line 2389 ;2389: ui_joinGameType.integer--; ADDRLP4 4 ADDRGP4 ui_joinGameType+12 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2390 ;2390: } else { ADDRGP4 $1895 JUMPV LABELV $1894 line 2391 ;2391: ui_joinGameType.integer++; ADDRLP4 4 ADDRGP4 ui_joinGameType+12 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2392 ;2392: } LABELV $1895 line 2394 ;2393: ;2394: if (ui_joinGameType.integer < 0) { ADDRGP4 ui_joinGameType+12 INDIRI4 CNSTI4 0 GEI4 $1898 line 2395 ;2395: ui_joinGameType.integer = uiInfo.numJoinGameTypes - 1; ADDRGP4 ui_joinGameType+12 ADDRGP4 uiInfo+78708 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2396 ;2396: } else if (ui_joinGameType.integer >= uiInfo.numJoinGameTypes) { ADDRGP4 $1899 JUMPV LABELV $1898 ADDRGP4 ui_joinGameType+12 INDIRI4 ADDRGP4 uiInfo+78708 INDIRI4 LTI4 $1903 line 2397 ;2397: ui_joinGameType.integer = 0; ADDRGP4 ui_joinGameType+12 CNSTI4 0 ASGNI4 line 2398 ;2398: } LABELV $1903 LABELV $1899 line 2400 ;2399: ;2400: trap_Cvar_Set( "ui_joinGameType", va("%d", ui_joinGameType.integer)); ADDRGP4 $716 ARGP4 ADDRGP4 ui_joinGameType+12 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $741 ARGP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2401 ;2401: UI_BuildServerDisplayList(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 2402 ;2402: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1888 JUMPV LABELV $1889 line 2404 ;2403: } ;2404: return qfalse; CNSTI4 0 RETI4 LABELV $1888 endproc UI_JoinGameType_HandleKey 8 8 proc UI_Skill_HandleKey 16 8 line 2409 ;2405:} ;2406: ;2407: ;2408: ;2409:static qboolean UI_Skill_HandleKey(int flags, float *special, int key) { line 2410 ;2410: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1914 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1914 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1914 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1910 LABELV $1914 line 2411 ;2411: int i = trap_Cvar_VariableValue( "g_spSkill" ); ADDRGP4 $827 ARGP4 ADDRLP4 8 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 8 INDIRF4 CVFI4 4 ASGNI4 line 2413 ;2412: ;2413: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1915 line 2414 ;2414: i--; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2415 ;2415: } else { ADDRGP4 $1916 JUMPV LABELV $1915 line 2416 ;2416: i++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2417 ;2417: } LABELV $1916 line 2419 ;2418: ;2419: if (i < 1) { ADDRLP4 4 INDIRI4 CNSTI4 1 GEI4 $1917 line 2420 ;2420: i = numSkillLevels; ADDRLP4 4 ADDRGP4 numSkillLevels INDIRI4 ASGNI4 line 2421 ;2421: } else if (i > numSkillLevels) { ADDRGP4 $1918 JUMPV LABELV $1917 ADDRLP4 4 INDIRI4 ADDRGP4 numSkillLevels INDIRI4 LEI4 $1919 line 2422 ;2422: i = 1; ADDRLP4 4 CNSTI4 1 ASGNI4 line 2423 ;2423: } LABELV $1919 LABELV $1918 line 2425 ;2424: ;2425: trap_Cvar_Set("g_spSkill", va("%i", i)); ADDRGP4 $1776 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $827 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2426 ;2426: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1909 JUMPV LABELV $1910 line 2428 ;2427: } ;2428: return qfalse; CNSTI4 0 RETI4 LABELV $1909 endproc UI_Skill_HandleKey 16 8 proc UI_TeamName_HandleKey 24 8 line 2431 ;2429:} ;2430: ;2431:static qboolean UI_TeamName_HandleKey(int flags, float *special, int key, qboolean blue) { line 2432 ;2432: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1926 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1926 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1926 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1922 LABELV $1926 line 2434 ;2433: int i; ;2434: i = UI_TeamIndexFromName(UI_Cvar_VariableString((blue) ? "ui_blueTeam" : "ui_redTeam")); ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $1928 ADDRLP4 8 ADDRGP4 $833 ASGNP4 ADDRGP4 $1929 JUMPV LABELV $1928 ADDRLP4 8 ADDRGP4 $834 ASGNP4 LABELV $1929 ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 16 INDIRI4 ASGNI4 line 2436 ;2435: ;2436: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1930 line 2437 ;2437: i--; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2438 ;2438: } else { ADDRGP4 $1931 JUMPV LABELV $1930 line 2439 ;2439: i++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2440 ;2440: } LABELV $1931 line 2442 ;2441: ;2442: if (i >= uiInfo.teamCount) { ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 LTI4 $1932 line 2443 ;2443: i = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 2444 ;2444: } else if (i < 0) { ADDRGP4 $1933 JUMPV LABELV $1932 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $1935 line 2445 ;2445: i = uiInfo.teamCount - 1; ADDRLP4 4 ADDRGP4 uiInfo+75756 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2446 ;2446: } LABELV $1935 LABELV $1933 line 2448 ;2447: ;2448: trap_Cvar_Set( (blue) ? "ui_blueTeam" : "ui_redTeam", uiInfo.teamList[i].teamName); ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $1940 ADDRLP4 20 ADDRGP4 $833 ASGNP4 ADDRGP4 $1941 JUMPV LABELV $1940 ADDRLP4 20 ADDRGP4 $834 ASGNP4 LABELV $1941 ADDRLP4 20 INDIRP4 ARGP4 CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2450 ;2449: ;2450: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1921 JUMPV LABELV $1922 line 2452 ;2451: } ;2452: return qfalse; CNSTI4 0 RETI4 LABELV $1921 endproc UI_TeamName_HandleKey 24 8 proc UI_TeamMember_HandleKey 32 8 line 2455 ;2453:} ;2454: ;2455:static qboolean UI_TeamMember_HandleKey(int flags, float *special, int key, qboolean blue, int num) { line 2456 ;2456: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1947 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1947 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1947 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1943 LABELV $1947 line 2460 ;2457: // 0 - None ;2458: // 1 - Human ;2459: // 2..NumCharacters - Bot ;2460: char *cvar = va(blue ? "ui_blueteam%i" : "ui_redteam%i", num); ADDRFP4 12 INDIRI4 CNSTI4 0 EQI4 $1949 ADDRLP4 12 ADDRGP4 $849 ASGNP4 ADDRGP4 $1950 JUMPV LABELV $1949 ADDRLP4 12 ADDRGP4 $850 ASGNP4 LABELV $1950 ADDRLP4 12 INDIRP4 ARGP4 ADDRFP4 16 INDIRI4 ARGI4 ADDRLP4 16 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 8 ADDRLP4 16 INDIRP4 ASGNP4 line 2461 ;2461: int value = trap_Cvar_VariableValue(cvar); ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 20 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 20 INDIRF4 CVFI4 4 ASGNI4 line 2463 ;2462: ;2463: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1951 line 2464 ;2464: value--; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2465 ;2465: } else { ADDRGP4 $1952 JUMPV LABELV $1951 line 2466 ;2466: value++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2467 ;2467: } LABELV $1952 line 2469 ;2468: ;2469: if (ui_actualNetGameType.integer >= GT_TEAM) { ADDRGP4 ui_actualNetGameType+12 INDIRI4 CNSTI4 3 LTI4 $1953 line 2470 ;2470: if (value >= uiInfo.characterCount + 2) { ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 CNSTI4 2 ADDI4 LTI4 $1956 line 2471 ;2471: value = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 2472 ;2472: } else if (value < 0) { ADDRGP4 $1954 JUMPV LABELV $1956 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $1954 line 2473 ;2473: value = uiInfo.characterCount + 2 - 1; ADDRLP4 4 ADDRGP4 uiInfo+73440 INDIRI4 CNSTI4 2 ADDI4 CNSTI4 1 SUBI4 ASGNI4 line 2474 ;2474: } line 2475 ;2475: } else { ADDRGP4 $1954 JUMPV LABELV $1953 line 2476 ;2476: if (value >= UI_GetNumBots() + 2) { ADDRLP4 24 ADDRGP4 UI_GetNumBots CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 ADDRLP4 24 INDIRI4 CNSTI4 2 ADDI4 LTI4 $1962 line 2477 ;2477: value = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 2478 ;2478: } else if (value < 0) { ADDRGP4 $1963 JUMPV LABELV $1962 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $1964 line 2479 ;2479: value = UI_GetNumBots() + 2 - 1; ADDRLP4 28 ADDRGP4 UI_GetNumBots CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 28 INDIRI4 CNSTI4 2 ADDI4 CNSTI4 1 SUBI4 ASGNI4 line 2480 ;2480: } LABELV $1964 LABELV $1963 line 2481 ;2481: } LABELV $1954 line 2483 ;2482: ;2483: trap_Cvar_Set(cvar, va("%i", value)); ADDRGP4 $1776 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 24 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 24 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2484 ;2484: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1942 JUMPV LABELV $1943 line 2486 ;2485: } ;2486: return qfalse; CNSTI4 0 RETI4 LABELV $1942 endproc UI_TeamMember_HandleKey 32 8 proc UI_NetSource_HandleKey 8 8 line 2489 ;2487:} ;2488: ;2489:static qboolean UI_NetSource_HandleKey(int flags, float *special, int key) { line 2490 ;2490: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1971 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1971 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1971 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1967 LABELV $1971 line 2492 ;2491: ;2492: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1972 line 2493 ;2493: ui_netSource.integer--; ADDRLP4 4 ADDRGP4 ui_netSource+12 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2494 ;2494: } else { ADDRGP4 $1973 JUMPV LABELV $1972 line 2495 ;2495: ui_netSource.integer++; ADDRLP4 4 ADDRGP4 ui_netSource+12 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2496 ;2496: } LABELV $1973 line 2498 ;2497: ;2498: if (ui_netSource.integer >= numNetSources) { ADDRGP4 ui_netSource+12 INDIRI4 ADDRGP4 numNetSources INDIRI4 LTI4 $1976 line 2499 ;2499: ui_netSource.integer = 0; ADDRGP4 ui_netSource+12 CNSTI4 0 ASGNI4 line 2500 ;2500: } else if (ui_netSource.integer < 0) { ADDRGP4 $1977 JUMPV LABELV $1976 ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 0 GEI4 $1980 line 2501 ;2501: ui_netSource.integer = numNetSources - 1; ADDRGP4 ui_netSource+12 ADDRGP4 numNetSources INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2502 ;2502: } LABELV $1980 LABELV $1977 line 2504 ;2503: ;2504: UI_BuildServerDisplayList(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 2505 ;2505: if (ui_netSource.integer != AS_GLOBAL) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 2 EQI4 $1984 line 2506 ;2506: UI_StartServerRefresh(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_StartServerRefresh CALLV pop line 2507 ;2507: } LABELV $1984 line 2508 ;2508: trap_Cvar_Set( "ui_netSource", va("%d", ui_netSource.integer)); ADDRGP4 $716 ARGP4 ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $1987 ARGP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2509 ;2509: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1966 JUMPV LABELV $1967 line 2511 ;2510: } ;2511: return qfalse; CNSTI4 0 RETI4 LABELV $1966 endproc UI_NetSource_HandleKey 8 8 proc UI_NetFilter_HandleKey 8 4 line 2514 ;2512:} ;2513: ;2514:static qboolean UI_NetFilter_HandleKey(int flags, float *special, int key) { line 2515 ;2515: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $1994 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $1994 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $1994 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $1990 LABELV $1994 line 2517 ;2516: ;2517: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $1995 line 2518 ;2518: ui_serverFilterType.integer--; ADDRLP4 4 ADDRGP4 ui_serverFilterType+12 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2519 ;2519: } else { ADDRGP4 $1996 JUMPV LABELV $1995 line 2520 ;2520: ui_serverFilterType.integer++; ADDRLP4 4 ADDRGP4 ui_serverFilterType+12 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2521 ;2521: } LABELV $1996 line 2523 ;2522: ;2523: if (ui_serverFilterType.integer >= numServerFilters) { ADDRGP4 ui_serverFilterType+12 INDIRI4 ADDRGP4 numServerFilters INDIRI4 LTI4 $1999 line 2524 ;2524: ui_serverFilterType.integer = 0; ADDRGP4 ui_serverFilterType+12 CNSTI4 0 ASGNI4 line 2525 ;2525: } else if (ui_serverFilterType.integer < 0) { ADDRGP4 $2000 JUMPV LABELV $1999 ADDRGP4 ui_serverFilterType+12 INDIRI4 CNSTI4 0 GEI4 $2003 line 2526 ;2526: ui_serverFilterType.integer = numServerFilters - 1; ADDRGP4 ui_serverFilterType+12 ADDRGP4 numServerFilters INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2527 ;2527: } LABELV $2003 LABELV $2000 line 2528 ;2528: UI_BuildServerDisplayList(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 2529 ;2529: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $1989 JUMPV LABELV $1990 line 2531 ;2530: } ;2531: return qfalse; CNSTI4 0 RETI4 LABELV $1989 endproc UI_NetFilter_HandleKey 8 4 proc UI_OpponentName_HandleKey 4 0 line 2534 ;2532:} ;2533: ;2534:static qboolean UI_OpponentName_HandleKey(int flags, float *special, int key) { line 2535 ;2535: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $2012 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $2012 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $2012 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $2008 LABELV $2012 line 2536 ;2536: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $2013 line 2537 ;2537: UI_PriorOpponent(); ADDRGP4 UI_PriorOpponent CALLV pop line 2538 ;2538: } else { ADDRGP4 $2014 JUMPV LABELV $2013 line 2539 ;2539: UI_NextOpponent(); ADDRGP4 UI_NextOpponent CALLV pop line 2540 ;2540: } LABELV $2014 line 2541 ;2541: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $2007 JUMPV LABELV $2008 line 2543 ;2542: } ;2543: return qfalse; CNSTI4 0 RETI4 LABELV $2007 endproc UI_OpponentName_HandleKey 4 0 proc UI_BotName_HandleKey 24 4 line 2546 ;2544:} ;2545: ;2546:static qboolean UI_BotName_HandleKey(int flags, float *special, int key) { line 2547 ;2547: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $2020 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $2020 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $2020 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $2016 LABELV $2020 line 2548 ;2548: int game = trap_Cvar_VariableValue("g_gametype"); ADDRGP4 $1362 ARGP4 ADDRLP4 12 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 8 ADDRLP4 12 INDIRF4 CVFI4 4 ASGNI4 line 2549 ;2549: int value = uiInfo.botIndex; ADDRLP4 4 ADDRGP4 uiInfo+73444 INDIRI4 ASGNI4 line 2551 ;2550: ;2551: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $2022 line 2552 ;2552: value--; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2553 ;2553: } else { ADDRGP4 $2023 JUMPV LABELV $2022 line 2554 ;2554: value++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2555 ;2555: } LABELV $2023 line 2557 ;2556: ;2557: if (game >= GT_TEAM) { ADDRLP4 8 INDIRI4 CNSTI4 3 LTI4 $2024 line 2558 ;2558: if (value >= uiInfo.characterCount + 2) { ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 CNSTI4 2 ADDI4 LTI4 $2026 line 2559 ;2559: value = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 2560 ;2560: } else if (value < 0) { ADDRGP4 $2025 JUMPV LABELV $2026 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $2025 line 2561 ;2561: value = uiInfo.characterCount + 2 - 1; ADDRLP4 4 ADDRGP4 uiInfo+73440 INDIRI4 CNSTI4 2 ADDI4 CNSTI4 1 SUBI4 ASGNI4 line 2562 ;2562: } line 2563 ;2563: } else { ADDRGP4 $2025 JUMPV LABELV $2024 line 2564 ;2564: if (value >= UI_GetNumBots() + 2) { ADDRLP4 16 ADDRGP4 UI_GetNumBots CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 ADDRLP4 16 INDIRI4 CNSTI4 2 ADDI4 LTI4 $2032 line 2565 ;2565: value = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 2566 ;2566: } else if (value < 0) { ADDRGP4 $2033 JUMPV LABELV $2032 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $2034 line 2567 ;2567: value = UI_GetNumBots() + 2 - 1; ADDRLP4 20 ADDRGP4 UI_GetNumBots CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 20 INDIRI4 CNSTI4 2 ADDI4 CNSTI4 1 SUBI4 ASGNI4 line 2568 ;2568: } LABELV $2034 LABELV $2033 line 2569 ;2569: } LABELV $2025 line 2570 ;2570: uiInfo.botIndex = value; ADDRGP4 uiInfo+73444 ADDRLP4 4 INDIRI4 ASGNI4 line 2571 ;2571: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $2015 JUMPV LABELV $2016 line 2573 ;2572: } ;2573: return qfalse; CNSTI4 0 RETI4 LABELV $2015 endproc UI_BotName_HandleKey 24 4 proc UI_BotSkill_HandleKey 8 0 line 2576 ;2574:} ;2575: ;2576:static qboolean UI_BotSkill_HandleKey(int flags, float *special, int key) { line 2577 ;2577: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $2042 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $2042 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $2042 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $2038 LABELV $2042 line 2578 ;2578: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $2043 line 2579 ;2579: uiInfo.skillIndex--; ADDRLP4 4 ADDRGP4 uiInfo+96672 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2580 ;2580: } else { ADDRGP4 $2044 JUMPV LABELV $2043 line 2581 ;2581: uiInfo.skillIndex++; ADDRLP4 4 ADDRGP4 uiInfo+96672 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2582 ;2582: } LABELV $2044 line 2583 ;2583: if (uiInfo.skillIndex >= numSkillLevels) { ADDRGP4 uiInfo+96672 INDIRI4 ADDRGP4 numSkillLevels INDIRI4 LTI4 $2047 line 2584 ;2584: uiInfo.skillIndex = 0; ADDRGP4 uiInfo+96672 CNSTI4 0 ASGNI4 line 2585 ;2585: } else if (uiInfo.skillIndex < 0) { ADDRGP4 $2048 JUMPV LABELV $2047 ADDRGP4 uiInfo+96672 INDIRI4 CNSTI4 0 GEI4 $2051 line 2586 ;2586: uiInfo.skillIndex = numSkillLevels-1; ADDRGP4 uiInfo+96672 ADDRGP4 numSkillLevels INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2587 ;2587: } LABELV $2051 LABELV $2048 line 2588 ;2588: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $2037 JUMPV LABELV $2038 line 2590 ;2589: } ;2590: return qfalse; CNSTI4 0 RETI4 LABELV $2037 endproc UI_BotSkill_HandleKey 8 0 proc UI_RedBlue_HandleKey 8 0 line 2593 ;2591:} ;2592: ;2593:static qboolean UI_RedBlue_HandleKey(int flags, float *special, int key) { line 2594 ;2594: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $2060 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $2060 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $2060 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $2056 LABELV $2060 line 2595 ;2595: uiInfo.redBlue ^= 1; ADDRLP4 4 ADDRGP4 uiInfo+78840 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 BXORI4 ASGNI4 line 2596 ;2596: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $2055 JUMPV LABELV $2056 line 2598 ;2597: } ;2598: return qfalse; CNSTI4 0 RETI4 LABELV $2055 endproc UI_RedBlue_HandleKey 8 0 proc UI_Crosshair_HandleKey 8 8 line 2601 ;2599:} ;2600: ;2601:static qboolean UI_Crosshair_HandleKey(int flags, float *special, int key) { line 2602 ;2602: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $2067 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $2067 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $2067 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $2063 LABELV $2067 line 2603 ;2603: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $2068 line 2604 ;2604: uiInfo.currentCrosshair--; ADDRLP4 4 ADDRGP4 uiInfo+119476 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2605 ;2605: } else { ADDRGP4 $2069 JUMPV LABELV $2068 line 2606 ;2606: uiInfo.currentCrosshair++; ADDRLP4 4 ADDRGP4 uiInfo+119476 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2607 ;2607: } LABELV $2069 line 2609 ;2608: ;2609: if (uiInfo.currentCrosshair >= NUM_CROSSHAIRS) { ADDRGP4 uiInfo+119476 INDIRI4 CNSTI4 10 LTI4 $2072 line 2610 ;2610: uiInfo.currentCrosshair = 0; ADDRGP4 uiInfo+119476 CNSTI4 0 ASGNI4 line 2611 ;2611: } else if (uiInfo.currentCrosshair < 0) { ADDRGP4 $2073 JUMPV LABELV $2072 ADDRGP4 uiInfo+119476 INDIRI4 CNSTI4 0 GEI4 $2076 line 2612 ;2612: uiInfo.currentCrosshair = NUM_CROSSHAIRS - 1; ADDRGP4 uiInfo+119476 CNSTI4 9 ASGNI4 line 2613 ;2613: } LABELV $2076 LABELV $2073 line 2614 ;2614: trap_Cvar_Set("cg_drawCrosshair", va("%d", uiInfo.currentCrosshair)); ADDRGP4 $716 ARGP4 ADDRGP4 uiInfo+119476 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2080 ARGP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2615 ;2615: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $2062 JUMPV LABELV $2063 line 2617 ;2616: } ;2617: return qfalse; CNSTI4 0 RETI4 LABELV $2062 endproc UI_Crosshair_HandleKey 8 8 proc UI_SelectedPlayer_HandleKey 16 8 line 2622 ;2618:} ;2619: ;2620: ;2621: ;2622:static qboolean UI_SelectedPlayer_HandleKey(int flags, float *special, int key) { line 2623 ;2623: if (key == K_MOUSE1 || key == K_MOUSE2 || key == K_ENTER || key == K_KP_ENTER) { ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 178 EQI4 $2087 ADDRLP4 0 INDIRI4 CNSTI4 179 EQI4 $2087 ADDRLP4 0 INDIRI4 CNSTI4 13 EQI4 $2087 ADDRLP4 0 INDIRI4 CNSTI4 169 NEI4 $2083 LABELV $2087 line 2626 ;2624: int selected; ;2625: ;2626: UI_BuildPlayerList(); ADDRGP4 UI_BuildPlayerList CALLV pop line 2627 ;2627: if (!uiInfo.teamLeader) { ADDRGP4 uiInfo+78868 INDIRI4 CNSTI4 0 NEI4 $2088 line 2628 ;2628: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $2082 JUMPV LABELV $2088 line 2630 ;2629: } ;2630: selected = trap_Cvar_VariableValue("cg_selectedPlayer"); ADDRGP4 $1430 ARGP4 ADDRLP4 8 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 8 INDIRF4 CVFI4 4 ASGNI4 line 2632 ;2631: ;2632: if (key == K_MOUSE2) { ADDRFP4 8 INDIRI4 CNSTI4 179 NEI4 $2091 line 2633 ;2633: selected--; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 2634 ;2634: } else { ADDRGP4 $2092 JUMPV LABELV $2091 line 2635 ;2635: selected++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2636 ;2636: } LABELV $2092 line 2638 ;2637: ;2638: if (selected > uiInfo.myTeamCount) { ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 LEI4 $2093 line 2639 ;2639: selected = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 2640 ;2640: } else if (selected < 0) { ADDRGP4 $2094 JUMPV LABELV $2093 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $2096 line 2641 ;2641: selected = uiInfo.myTeamCount; ADDRLP4 4 ADDRGP4 uiInfo+78848 INDIRI4 ASGNI4 line 2642 ;2642: } LABELV $2096 LABELV $2094 line 2644 ;2643: ;2644: if (selected == uiInfo.myTeamCount) { ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 NEI4 $2099 line 2645 ;2645: trap_Cvar_Set( "cg_selectedPlayerName", "Everyone"); ADDRGP4 $1438 ARGP4 ADDRGP4 $2102 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2646 ;2646: } else { ADDRGP4 $2100 JUMPV LABELV $2099 line 2647 ;2647: trap_Cvar_Set( "cg_selectedPlayerName", uiInfo.teamNames[selected]); ADDRGP4 $1438 ARGP4 ADDRLP4 4 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+80920 ADDP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2648 ;2648: } LABELV $2100 line 2649 ;2649: trap_Cvar_Set( "cg_selectedPlayer", va("%d", selected)); ADDRGP4 $716 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $1430 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2650 ;2650: } LABELV $2083 line 2651 ;2651: return qfalse; CNSTI4 0 RETI4 LABELV $2082 endproc UI_SelectedPlayer_HandleKey 16 8 proc UI_OwnerDrawHandleKey 52 20 line 2655 ;2652:} ;2653: ;2654: ;2655:static qboolean UI_OwnerDrawHandleKey(int ownerDraw, int flags, float *special, int key) { line 2656 ;2656: switch (ownerDraw) { ADDRLP4 0 ADDRFP4 0 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 200 LTI4 $2106 ADDRLP4 0 INDIRI4 CNSTI4 253 GTI4 $2106 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $2126-800 ADDP4 INDIRP4 JUMPV lit align 4 LABELV $2126 address $2107 address $2108 address $2106 address $2109 address $2106 address $2110 address $2106 address $2113 address $2114 address $2115 address $2116 address $2116 address $2116 address $2116 address $2116 address $2117 address $2117 address $2117 address $2117 address $2117 address $2118 address $2106 address $2119 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2120 address $2106 address $2121 address $2122 address $2123 address $2124 address $2125 address $2106 address $2111 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2106 address $2112 code LABELV $2107 line 2658 ;2657: case UI_HANDICAP: ;2658: return UI_Handicap_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 UI_Handicap_HandleKey CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2659 ;2659: break; LABELV $2108 line 2661 ;2660: case UI_EFFECTS: ;2661: return UI_Effects_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 8 ADDRGP4 UI_Effects_HandleKey CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2662 ;2662: break; LABELV $2109 line 2664 ;2663: case UI_CLANNAME: ;2664: return UI_ClanName_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 12 ADDRGP4 UI_ClanName_HandleKey CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2665 ;2665: break; LABELV $2110 line 2667 ;2666: case UI_GAMETYPE: ;2667: return UI_GameType_HandleKey(flags, special, key, qtrue); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 CNSTI4 1 ARGI4 ADDRLP4 16 ADDRGP4 UI_GameType_HandleKey CALLI4 ASGNI4 ADDRLP4 16 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2668 ;2668: break; LABELV $2111 line 2670 ;2669: case UI_NETGAMETYPE: ;2670: return UI_NetGameType_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 20 ADDRGP4 UI_NetGameType_HandleKey CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2671 ;2671: break; LABELV $2112 line 2673 ;2672: case UI_JOINGAMETYPE: ;2673: return UI_JoinGameType_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 24 ADDRGP4 UI_JoinGameType_HandleKey CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2674 ;2674: break; LABELV $2113 line 2676 ;2675: case UI_SKILL: ;2676: return UI_Skill_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 28 ADDRGP4 UI_Skill_HandleKey CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2677 ;2677: break; LABELV $2114 line 2679 ;2678: case UI_BLUETEAMNAME: ;2679: return UI_TeamName_HandleKey(flags, special, key, qtrue); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 CNSTI4 1 ARGI4 ADDRLP4 32 ADDRGP4 UI_TeamName_HandleKey CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2680 ;2680: break; LABELV $2115 line 2682 ;2681: case UI_REDTEAMNAME: ;2682: return UI_TeamName_HandleKey(flags, special, key, qfalse); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 CNSTI4 0 ARGI4 ADDRLP4 36 ADDRGP4 UI_TeamName_HandleKey CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2683 ;2683: break; LABELV $2116 line 2689 ;2684: case UI_BLUETEAM1: ;2685: case UI_BLUETEAM2: ;2686: case UI_BLUETEAM3: ;2687: case UI_BLUETEAM4: ;2688: case UI_BLUETEAM5: ;2689: UI_TeamMember_HandleKey(flags, special, key, qtrue, ownerDraw - UI_BLUETEAM1 + 1); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 40 CNSTI4 1 ASGNI4 ADDRLP4 40 INDIRI4 ARGI4 ADDRFP4 0 INDIRI4 CNSTI4 210 SUBI4 ADDRLP4 40 INDIRI4 ADDI4 ARGI4 ADDRGP4 UI_TeamMember_HandleKey CALLI4 pop line 2690 ;2690: break; ADDRGP4 $2106 JUMPV LABELV $2117 line 2696 ;2691: case UI_REDTEAM1: ;2692: case UI_REDTEAM2: ;2693: case UI_REDTEAM3: ;2694: case UI_REDTEAM4: ;2695: case UI_REDTEAM5: ;2696: UI_TeamMember_HandleKey(flags, special, key, qfalse, ownerDraw - UI_REDTEAM1 + 1); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 CNSTI4 0 ARGI4 ADDRFP4 0 INDIRI4 CNSTI4 215 SUBI4 CNSTI4 1 ADDI4 ARGI4 ADDRGP4 UI_TeamMember_HandleKey CALLI4 pop line 2697 ;2697: break; ADDRGP4 $2106 JUMPV LABELV $2118 line 2699 ;2698: case UI_NETSOURCE: ;2699: UI_NetSource_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 UI_NetSource_HandleKey CALLI4 pop line 2700 ;2700: break; ADDRGP4 $2106 JUMPV LABELV $2119 line 2702 ;2701: case UI_NETFILTER: ;2702: UI_NetFilter_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 UI_NetFilter_HandleKey CALLI4 pop line 2703 ;2703: break; ADDRGP4 $2106 JUMPV LABELV $2120 line 2705 ;2704: case UI_OPPONENT_NAME: ;2705: UI_OpponentName_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 UI_OpponentName_HandleKey CALLI4 pop line 2706 ;2706: break; ADDRGP4 $2106 JUMPV LABELV $2121 line 2708 ;2707: case UI_BOTNAME: ;2708: return UI_BotName_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 44 ADDRGP4 UI_BotName_HandleKey CALLI4 ASGNI4 ADDRLP4 44 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2709 ;2709: break; LABELV $2122 line 2711 ;2710: case UI_BOTSKILL: ;2711: return UI_BotSkill_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRLP4 48 ADDRGP4 UI_BotSkill_HandleKey CALLI4 ASGNI4 ADDRLP4 48 INDIRI4 RETI4 ADDRGP4 $2104 JUMPV line 2712 ;2712: break; LABELV $2123 line 2714 ;2713: case UI_REDBLUE: ;2714: UI_RedBlue_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 UI_RedBlue_HandleKey CALLI4 pop line 2715 ;2715: break; ADDRGP4 $2106 JUMPV LABELV $2124 line 2717 ;2716: case UI_CROSSHAIR: ;2717: UI_Crosshair_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 UI_Crosshair_HandleKey CALLI4 pop line 2718 ;2718: break; ADDRGP4 $2106 JUMPV LABELV $2125 line 2720 ;2719: case UI_SELECTEDPLAYER: ;2720: UI_SelectedPlayer_HandleKey(flags, special, key); ADDRFP4 4 INDIRI4 ARGI4 ADDRFP4 8 INDIRP4 ARGP4 ADDRFP4 12 INDIRI4 ARGI4 ADDRGP4 UI_SelectedPlayer_HandleKey CALLI4 pop line 2721 ;2721: break; line 2723 ;2722: default: ;2723: break; LABELV $2106 line 2726 ;2724: } ;2725: ;2726: return qfalse; CNSTI4 0 RETI4 LABELV $2104 endproc UI_OwnerDrawHandleKey 52 20 proc UI_GetValue 0 0 line 2730 ;2727:} ;2728: ;2729: ;2730:static float UI_GetValue(int ownerDraw) { line 2731 ;2731: return 0; CNSTF4 0 RETF4 LABELV $2128 endproc UI_GetValue 0 0 proc UI_ServersQsortCompare 4 20 line 2739 ;2732:} ;2733: ;2734:/* ;2735:================= ;2736:UI_ServersQsortCompare ;2737:================= ;2738:*/ ;2739:static int QDECL UI_ServersQsortCompare( const void *arg1, const void *arg2 ) { line 2740 ;2740: return trap_LAN_CompareServers( ui_netSource.integer, uiInfo.serverStatus.sortKey, uiInfo.serverStatus.sortDir, *(int*)arg1, *(int*)arg2); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+2200 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+2204 INDIRI4 ARGI4 ADDRFP4 0 INDIRP4 INDIRI4 ARGI4 ADDRFP4 4 INDIRP4 INDIRI4 ARGI4 ADDRLP4 0 ADDRGP4 trap_LAN_CompareServers CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 RETI4 LABELV $2129 endproc UI_ServersQsortCompare 4 20 export UI_ServersSort proc UI_ServersSort 0 16 line 2749 ;2741:} ;2742: ;2743: ;2744:/* ;2745:================= ;2746:UI_ServersSort ;2747:================= ;2748:*/ ;2749:void UI_ServersSort(int column, qboolean force) { line 2751 ;2750: ;2751: if ( !force ) { ADDRFP4 4 INDIRI4 CNSTI4 0 NEI4 $2136 line 2752 ;2752: if ( uiInfo.serverStatus.sortKey == column ) { ADDRGP4 uiInfo+99264+2200 INDIRI4 ADDRFP4 0 INDIRI4 NEI4 $2138 line 2753 ;2753: return; ADDRGP4 $2135 JUMPV LABELV $2138 line 2755 ;2754: } ;2755: } LABELV $2136 line 2757 ;2756: ;2757: uiInfo.serverStatus.sortKey = column; ADDRGP4 uiInfo+99264+2200 ADDRFP4 0 INDIRI4 ASGNI4 line 2758 ;2758: qsort( &uiInfo.serverStatus.displayServers[0], uiInfo.serverStatus.numDisplayServers, sizeof(int), UI_ServersQsortCompare); ADDRGP4 uiInfo+99264+2220 ARGP4 ADDRGP4 uiInfo+99264+10412 INDIRI4 ARGI4 CNSTI4 4 ARGI4 ADDRGP4 UI_ServersQsortCompare ARGP4 ADDRGP4 qsort CALLV pop line 2759 ;2759:} LABELV $2135 endproc UI_ServersSort 0 16 proc UI_LoadMods 2092 16 line 2806 ;2760: ;2761:/* ;2762:static void UI_StartSinglePlayer() { ;2763: int i,j, k, skill; ;2764: char buff[1024]; ;2765: i = trap_Cvar_VariableValue( "ui_currentTier" ); ;2766: if (i < 0 || i >= tierCount) { ;2767: i = 0; ;2768: } ;2769: j = trap_Cvar_VariableValue("ui_currentMap"); ;2770: if (j < 0 || j > MAPS_PER_TIER) { ;2771: j = 0; ;2772: } ;2773: ;2774: trap_Cvar_SetValue( "singleplayer", 1 ); ;2775: trap_Cvar_SetValue( "g_gametype", Com_Clamp( 0, 7, tierList[i].gameTypes[j] ) ); ;2776: trap_Cmd_ExecuteText( EXEC_APPEND, va( "wait ; wait ; map %s\n", tierList[i].maps[j] ) ); ;2777: skill = trap_Cvar_VariableValue( "g_spSkill" ); ;2778: ;2779: if (j == MAPS_PER_TIER-1) { ;2780: k = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ;2781: Com_sprintf( buff, sizeof(buff), "wait ; addbot %s %i %s 250 %s\n", UI_AIFromName(teamList[k].teamMembers[0]), skill, "", teamList[k].teamMembers[0]); ;2782: } else { ;2783: k = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ;2784: for (i = 0; i < PLAYERS_PER_TEAM; i++) { ;2785: Com_sprintf( buff, sizeof(buff), "wait ; addbot %s %i %s 250 %s\n", UI_AIFromName(teamList[k].teamMembers[i]), skill, "Blue", teamList[k].teamMembers[i]); ;2786: trap_Cmd_ExecuteText( EXEC_APPEND, buff ); ;2787: } ;2788: ;2789: k = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ;2790: for (i = 1; i < PLAYERS_PER_TEAM; i++) { ;2791: Com_sprintf( buff, sizeof(buff), "wait ; addbot %s %i %s 250 %s\n", UI_AIFromName(teamList[k].teamMembers[i]), skill, "Red", teamList[k].teamMembers[i]); ;2792: trap_Cmd_ExecuteText( EXEC_APPEND, buff ); ;2793: } ;2794: trap_Cmd_ExecuteText( EXEC_APPEND, "wait 5; team Red\n" ); ;2795: } ;2796: ;2797: ;2798:} ;2799:*/ ;2800: ;2801:/* ;2802:=============== ;2803:UI_LoadMods ;2804:=============== ;2805:*/ ;2806:static void UI_LoadMods() { line 2814 ;2807: int numdirs; ;2808: char dirlist[2048]; ;2809: char *dirptr; ;2810: char *descptr; ;2811: int i; ;2812: int dirlen; ;2813: ;2814: uiInfo.modCount = 0; ADDRGP4 uiInfo+97188 CNSTI4 0 ASGNI4 line 2815 ;2815: numdirs = trap_FS_GetFileList( "$modlist", "", dirlist, sizeof(dirlist) ); ADDRGP4 $2150 ARGP4 ADDRGP4 $112 ARGP4 ADDRLP4 20 ARGP4 CNSTI4 2048 ARGI4 ADDRLP4 2068 ADDRGP4 trap_FS_GetFileList CALLI4 ASGNI4 ADDRLP4 16 ADDRLP4 2068 INDIRI4 ASGNI4 line 2816 ;2816: dirptr = dirlist; ADDRLP4 0 ADDRLP4 20 ASGNP4 line 2817 ;2817: for( i = 0; i < numdirs; i++ ) { ADDRLP4 12 CNSTI4 0 ASGNI4 ADDRGP4 $2154 JUMPV LABELV $2151 line 2818 ;2818: dirlen = strlen( dirptr ) + 1; ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 2072 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 8 ADDRLP4 2072 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2819 ;2819: descptr = dirptr + dirlen; ADDRLP4 4 ADDRLP4 8 INDIRI4 ADDRLP4 0 INDIRP4 ADDP4 ASGNP4 line 2820 ;2820: uiInfo.modList[uiInfo.modCount].modName = String_Alloc(dirptr); ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 2076 ADDRGP4 String_Alloc CALLP4 ASGNP4 ADDRGP4 uiInfo+97188 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+96676 ADDP4 ADDRLP4 2076 INDIRP4 ASGNP4 line 2821 ;2821: uiInfo.modList[uiInfo.modCount].modDescr = String_Alloc(descptr); ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 2080 ADDRGP4 String_Alloc CALLP4 ASGNP4 ADDRGP4 uiInfo+97188 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+96676+4 ADDP4 ADDRLP4 2080 INDIRP4 ASGNP4 line 2822 ;2822: dirptr += dirlen + strlen(descptr) + 1; ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 2084 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 8 INDIRI4 ADDRLP4 2084 INDIRI4 ADDI4 CNSTI4 1 ADDI4 ADDRLP4 0 INDIRP4 ADDP4 ASGNP4 line 2823 ;2823: uiInfo.modCount++; ADDRLP4 2088 ADDRGP4 uiInfo+97188 ASGNP4 ADDRLP4 2088 INDIRP4 ADDRLP4 2088 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 2824 ;2824: if (uiInfo.modCount >= MAX_MODS) { ADDRGP4 uiInfo+97188 INDIRI4 CNSTI4 64 LTI4 $2161 line 2825 ;2825: break; ADDRGP4 $2153 JUMPV LABELV $2161 line 2827 ;2826: } ;2827: } LABELV $2152 line 2817 ADDRLP4 12 ADDRLP4 12 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2154 ADDRLP4 12 INDIRI4 ADDRLP4 16 INDIRI4 LTI4 $2151 LABELV $2153 line 2829 ;2828: ;2829:} LABELV $2148 endproc UI_LoadMods 2092 16 proc UI_LoadTeams 4120 16 line 2837 ;2830: ;2831: ;2832:/* ;2833:=============== ;2834:UI_LoadTeams ;2835:=============== ;2836:*/ ;2837:static void UI_LoadTeams() { line 2842 ;2838: char teamList[4096]; ;2839: char *teamName; ;2840: int i, len, count; ;2841: ;2842: count = trap_FS_GetFileList( "", "team", teamList, 4096 ); ADDRGP4 $112 ARGP4 ADDRGP4 $2165 ARGP4 ADDRLP4 16 ARGP4 CNSTI4 4096 ARGI4 ADDRLP4 4112 ADDRGP4 trap_FS_GetFileList CALLI4 ASGNI4 ADDRLP4 12 ADDRLP4 4112 INDIRI4 ASGNI4 line 2844 ;2843: ;2844: if (count) { ADDRLP4 12 INDIRI4 CNSTI4 0 EQI4 $2166 line 2845 ;2845: teamName = teamList; ADDRLP4 0 ADDRLP4 16 ASGNP4 line 2846 ;2846: for ( i = 0; i < count; i++ ) { ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRGP4 $2171 JUMPV LABELV $2168 line 2847 ;2847: len = strlen( teamName ); ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 4116 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 8 ADDRLP4 4116 INDIRI4 ASGNI4 line 2848 ;2848: UI_ParseTeamInfo(teamName); ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 UI_ParseTeamInfo CALLV pop line 2849 ;2849: teamName += len + 1; ADDRLP4 0 ADDRLP4 8 INDIRI4 CNSTI4 1 ADDI4 ADDRLP4 0 INDIRP4 ADDP4 ASGNP4 line 2850 ;2850: } LABELV $2169 line 2846 ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2171 ADDRLP4 4 INDIRI4 ADDRLP4 12 INDIRI4 LTI4 $2168 line 2851 ;2851: } LABELV $2166 line 2853 ;2852: ;2853:} LABELV $2164 endproc UI_LoadTeams 4120 16 proc UI_LoadMovies 4124 16 line 2861 ;2854: ;2855: ;2856:/* ;2857:=============== ;2858:UI_LoadMovies ;2859:=============== ;2860:*/ ;2861:static void UI_LoadMovies() { line 2866 ;2862: char movielist[4096]; ;2863: char *moviename; ;2864: int i, len; ;2865: ;2866: uiInfo.movieCount = trap_FS_GetFileList( "video", "roq", movielist, 4096 ); ADDRGP4 $2174 ARGP4 ADDRGP4 $2175 ARGP4 ADDRLP4 12 ARGP4 CNSTI4 4096 ARGI4 ADDRLP4 4108 ADDRGP4 trap_FS_GetFileList CALLI4 ASGNI4 ADDRGP4 uiInfo+99252 ADDRLP4 4108 INDIRI4 ASGNI4 line 2868 ;2867: ;2868: if (uiInfo.movieCount) { ADDRGP4 uiInfo+99252 INDIRI4 CNSTI4 0 EQI4 $2176 line 2869 ;2869: if (uiInfo.movieCount > MAX_MOVIES) { ADDRGP4 uiInfo+99252 INDIRI4 CNSTI4 256 LEI4 $2179 line 2870 ;2870: uiInfo.movieCount = MAX_MOVIES; ADDRGP4 uiInfo+99252 CNSTI4 256 ASGNI4 line 2871 ;2871: } LABELV $2179 line 2872 ;2872: moviename = movielist; ADDRLP4 0 ADDRLP4 12 ASGNP4 line 2873 ;2873: for ( i = 0; i < uiInfo.movieCount; i++ ) { ADDRLP4 8 CNSTI4 0 ASGNI4 ADDRGP4 $2186 JUMPV LABELV $2183 line 2874 ;2874: len = strlen( moviename ); ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 4112 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 4112 INDIRI4 ASGNI4 line 2875 ;2875: if (!Q_stricmp(moviename + len - 4,".roq")) { ADDRLP4 4 INDIRI4 ADDRLP4 0 INDIRP4 ADDP4 CNSTI4 -4 ADDP4 ARGP4 ADDRGP4 $2190 ARGP4 ADDRLP4 4116 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 4116 INDIRI4 CNSTI4 0 NEI4 $2188 line 2876 ;2876: moviename[len-4] = '\0'; ADDRLP4 4 INDIRI4 CNSTI4 4 SUBI4 ADDRLP4 0 INDIRP4 ADDP4 CNSTI1 0 ASGNI1 line 2877 ;2877: } LABELV $2188 line 2878 ;2878: Q_strupr(moviename); ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 Q_strupr CALLP4 pop line 2879 ;2879: uiInfo.movieList[i] = String_Alloc(moviename); ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 4120 ADDRGP4 String_Alloc CALLP4 ASGNP4 ADDRLP4 8 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+98228 ADDP4 ADDRLP4 4120 INDIRP4 ASGNP4 line 2880 ;2880: moviename += len + 1; ADDRLP4 0 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ADDRLP4 0 INDIRP4 ADDP4 ASGNP4 line 2881 ;2881: } LABELV $2184 line 2873 ADDRLP4 8 ADDRLP4 8 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2186 ADDRLP4 8 INDIRI4 ADDRGP4 uiInfo+99252 INDIRI4 LTI4 $2183 line 2882 ;2882: } LABELV $2176 line 2884 ;2883: ;2884:} LABELV $2172 endproc UI_LoadMovies 4124 16 proc UI_LoadDemos 4168 16 line 2893 ;2885: ;2886: ;2887: ;2888:/* ;2889:=============== ;2890:UI_LoadDemos ;2891:=============== ;2892:*/ ;2893:static void UI_LoadDemos() { line 2899 ;2894: char demolist[4096]; ;2895: char demoExt[32]; ;2896: char *demoname; ;2897: int i, len; ;2898: ;2899: Com_sprintf(demoExt, sizeof(demoExt), "dm_%d", (int)trap_Cvar_VariableValue("protocol")); ADDRGP4 $2194 ARGP4 ADDRLP4 4140 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 $2193 ARGP4 ADDRLP4 4140 INDIRF4 CVFI4 4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 2901 ;2900: ;2901: uiInfo.demoCount = trap_FS_GetFileList( "demos", demoExt, demolist, 4096 ); ADDRGP4 $2196 ARGP4 ADDRLP4 4 ARGP4 ADDRLP4 44 ARGP4 CNSTI4 4096 ARGI4 ADDRLP4 4144 ADDRGP4 trap_FS_GetFileList CALLI4 ASGNI4 ADDRGP4 uiInfo+98220 ADDRLP4 4144 INDIRI4 ASGNI4 line 2903 ;2902: ;2903: Com_sprintf(demoExt, sizeof(demoExt), ".dm_%d", (int)trap_Cvar_VariableValue("protocol")); ADDRGP4 $2194 ARGP4 ADDRLP4 4148 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 $2197 ARGP4 ADDRLP4 4148 INDIRF4 CVFI4 4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 2905 ;2904: ;2905: if (uiInfo.demoCount) { ADDRGP4 uiInfo+98220 INDIRI4 CNSTI4 0 EQI4 $2198 line 2906 ;2906: if (uiInfo.demoCount > MAX_DEMOS) { ADDRGP4 uiInfo+98220 INDIRI4 CNSTI4 256 LEI4 $2201 line 2907 ;2907: uiInfo.demoCount = MAX_DEMOS; ADDRGP4 uiInfo+98220 CNSTI4 256 ASGNI4 line 2908 ;2908: } LABELV $2201 line 2909 ;2909: demoname = demolist; ADDRLP4 0 ADDRLP4 44 ASGNP4 line 2910 ;2910: for ( i = 0; i < uiInfo.demoCount; i++ ) { ADDRLP4 40 CNSTI4 0 ASGNI4 ADDRGP4 $2208 JUMPV LABELV $2205 line 2911 ;2911: len = strlen( demoname ); ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 4152 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 36 ADDRLP4 4152 INDIRI4 ASGNI4 line 2912 ;2912: if (!Q_stricmp(demoname + len - strlen(demoExt), demoExt)) { ADDRLP4 4 ARGP4 ADDRLP4 4156 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 ADDRLP4 0 INDIRP4 ADDP4 ADDRLP4 4156 INDIRI4 SUBP4 ARGP4 ADDRLP4 4 ARGP4 ADDRLP4 4160 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 4160 INDIRI4 CNSTI4 0 NEI4 $2210 line 2913 ;2913: demoname[len-strlen(demoExt)] = '\0'; ADDRLP4 4 ARGP4 ADDRLP4 4164 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 ADDRLP4 4164 INDIRI4 SUBI4 ADDRLP4 0 INDIRP4 ADDP4 CNSTI1 0 ASGNI1 line 2914 ;2914: } LABELV $2210 line 2915 ;2915: Q_strupr(demoname); ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 Q_strupr CALLP4 pop line 2916 ;2916: uiInfo.demoList[i] = String_Alloc(demoname); ADDRLP4 0 INDIRP4 ARGP4 ADDRLP4 4164 ADDRGP4 String_Alloc CALLP4 ASGNP4 ADDRLP4 40 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+97196 ADDP4 ADDRLP4 4164 INDIRP4 ASGNP4 line 2917 ;2917: demoname += len + 1; ADDRLP4 0 ADDRLP4 36 INDIRI4 CNSTI4 1 ADDI4 ADDRLP4 0 INDIRP4 ADDP4 ASGNP4 line 2918 ;2918: } LABELV $2206 line 2910 ADDRLP4 40 ADDRLP4 40 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2208 ADDRLP4 40 INDIRI4 ADDRGP4 uiInfo+98220 INDIRI4 LTI4 $2205 line 2919 ;2919: } LABELV $2198 line 2921 ;2920: ;2921:} LABELV $2192 endproc UI_LoadDemos 4168 16 proc UI_SetNextMap 8 16 line 2924 ;2922: ;2923: ;2924:static qboolean UI_SetNextMap(int actual, int index) { line 2926 ;2925: int i; ;2926: for (i = actual + 1; i < uiInfo.mapCount; i++) { ADDRLP4 0 ADDRFP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRGP4 $2217 JUMPV LABELV $2214 line 2927 ;2927: if (uiInfo.mapList[i].active) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+96 ADDP4 INDIRI4 CNSTI4 0 EQI4 $2219 line 2928 ;2928: Menu_SetFeederSelection(NULL, FEEDER_MAPS, index + 1, "skirmish"); CNSTP4 0 ARGP4 ADDRLP4 4 CNSTI4 1 ASGNI4 ADDRLP4 4 INDIRI4 ARGI4 ADDRFP4 4 INDIRI4 ADDRLP4 4 INDIRI4 ADDI4 ARGI4 ADDRGP4 $2223 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 2929 ;2929: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $2213 JUMPV LABELV $2219 line 2931 ;2930: } ;2931: } LABELV $2215 line 2926 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2217 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LTI4 $2214 line 2932 ;2932: return qfalse; CNSTI4 0 RETI4 LABELV $2213 endproc UI_SetNextMap 8 16 proc UI_StartSkirmish 1160 32 line 2936 ;2933:} ;2934: ;2935: ;2936:static void UI_StartSkirmish(qboolean next) { line 2941 ;2937: int i, k, g, delay, temp; ;2938: float skill; ;2939: char buff[MAX_STRING_CHARS]; ;2940: ;2941: if (next) { ADDRFP4 0 INDIRI4 CNSTI4 0 EQI4 $2225 line 2943 ;2942: int actual; ;2943: int index = trap_Cvar_VariableValue("ui_mapIndex"); ADDRGP4 $2227 ARGP4 ADDRLP4 1056 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1048 ADDRLP4 1056 INDIRF4 CVFI4 4 ASGNI4 line 2944 ;2944: UI_MapCountByGameType(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_MapCountByGameType CALLI4 pop line 2945 ;2945: UI_SelectedMap(index, &actual); ADDRLP4 1048 INDIRI4 ARGI4 ADDRLP4 1052 ARGP4 ADDRGP4 UI_SelectedMap CALLP4 pop line 2946 ;2946: if (UI_SetNextMap(actual, index)) { ADDRLP4 1052 INDIRI4 ARGI4 ADDRLP4 1048 INDIRI4 ARGI4 ADDRLP4 1060 ADDRGP4 UI_SetNextMap CALLI4 ASGNI4 ADDRLP4 1060 INDIRI4 CNSTI4 0 EQI4 $2228 line 2947 ;2947: } else { ADDRGP4 $2229 JUMPV LABELV $2228 line 2948 ;2948: UI_GameType_HandleKey(0, 0, K_MOUSE1, qfalse); ADDRLP4 1064 CNSTI4 0 ASGNI4 ADDRLP4 1064 INDIRI4 ARGI4 CNSTP4 0 ARGP4 CNSTI4 178 ARGI4 ADDRLP4 1064 INDIRI4 ARGI4 ADDRGP4 UI_GameType_HandleKey CALLI4 pop line 2949 ;2949: UI_MapCountByGameType(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_MapCountByGameType CALLI4 pop line 2950 ;2950: Menu_SetFeederSelection(NULL, FEEDER_MAPS, 0, "skirmish"); CNSTP4 0 ARGP4 CNSTI4 1 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 $2223 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 2951 ;2951: } LABELV $2229 line 2952 ;2952: } LABELV $2225 line 2954 ;2953: ;2954: g = uiInfo.gameTypes[ui_gameType.integer].gtEnum; ADDRLP4 1040 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ASGNI4 line 2955 ;2955: trap_Cvar_SetValue( "g_gametype", g ); ADDRGP4 $1362 ARGP4 ADDRLP4 1040 INDIRI4 CVIF4 4 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 2956 ;2956: trap_Cmd_ExecuteText( EXEC_APPEND, va( "wait ; wait ; map %s\n", uiInfo.mapList[ui_currentMap.integer].mapLoadName) ); ADDRGP4 $2233 ARGP4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 1048 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1048 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 2957 ;2957: skill = trap_Cvar_VariableValue( "g_spSkill" ); ADDRGP4 $827 ARGP4 ADDRLP4 1052 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1044 ADDRLP4 1052 INDIRF4 ASGNF4 line 2958 ;2958: trap_Cvar_Set("ui_scoreMap", uiInfo.mapList[ui_currentMap.integer].mapName); ADDRGP4 $2237 ARGP4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228 ADDP4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2960 ;2959: ;2960: k = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 1056 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 1056 INDIRP4 ARGP4 ADDRLP4 1060 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 1028 ADDRLP4 1060 INDIRI4 ASGNI4 line 2962 ;2961: ;2962: trap_Cvar_Set("ui_singlePlayerActive", "1"); ADDRGP4 $2240 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2965 ;2963: ;2964: // set up sp overrides, will be replaced on postgame ;2965: temp = trap_Cvar_VariableValue( "capturelimit" ); ADDRGP4 $718 ARGP4 ADDRLP4 1064 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1036 ADDRLP4 1064 INDIRF4 CVFI4 4 ASGNI4 line 2966 ;2966: trap_Cvar_Set("ui_saveCaptureLimit", va("%i", temp)); ADDRGP4 $1776 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1068 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2241 ARGP4 ADDRLP4 1068 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2967 ;2967: temp = trap_Cvar_VariableValue( "fraglimit" ); ADDRGP4 $719 ARGP4 ADDRLP4 1072 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1036 ADDRLP4 1072 INDIRF4 CVFI4 4 ASGNI4 line 2968 ;2968: trap_Cvar_Set("ui_saveFragLimit", va("%i", temp)); ADDRGP4 $1776 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1076 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2242 ARGP4 ADDRLP4 1076 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2970 ;2969: ;2970: UI_SetCapFragLimits(qfalse); CNSTI4 0 ARGI4 ADDRGP4 UI_SetCapFragLimits CALLV pop line 2972 ;2971: ;2972: temp = trap_Cvar_VariableValue( "cg_drawTimer" ); ADDRGP4 $2243 ARGP4 ADDRLP4 1080 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1036 ADDRLP4 1080 INDIRF4 CVFI4 4 ASGNI4 line 2973 ;2973: trap_Cvar_Set("ui_drawTimer", va("%i", temp)); ADDRGP4 $1776 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1084 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2244 ARGP4 ADDRLP4 1084 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2974 ;2974: temp = trap_Cvar_VariableValue( "g_doWarmup" ); ADDRGP4 $2245 ARGP4 ADDRLP4 1088 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1036 ADDRLP4 1088 INDIRF4 CVFI4 4 ASGNI4 line 2975 ;2975: trap_Cvar_Set("ui_doWarmup", va("%i", temp)); ADDRGP4 $1776 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1092 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2246 ARGP4 ADDRLP4 1092 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2976 ;2976: temp = trap_Cvar_VariableValue( "g_friendlyFire" ); ADDRGP4 $2247 ARGP4 ADDRLP4 1096 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1036 ADDRLP4 1096 INDIRF4 CVFI4 4 ASGNI4 line 2977 ;2977: trap_Cvar_Set("ui_friendlyFire", va("%i", temp)); ADDRGP4 $1776 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1100 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2248 ARGP4 ADDRLP4 1100 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2978 ;2978: temp = trap_Cvar_VariableValue( "sv_maxClients" ); ADDRGP4 $2249 ARGP4 ADDRLP4 1104 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1036 ADDRLP4 1104 INDIRF4 CVFI4 4 ASGNI4 line 2979 ;2979: trap_Cvar_Set("ui_maxClients", va("%i", temp)); ADDRGP4 $1776 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1108 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2250 ARGP4 ADDRLP4 1108 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2980 ;2980: temp = trap_Cvar_VariableValue( "g_warmup" ); ADDRGP4 $2251 ARGP4 ADDRLP4 1112 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1036 ADDRLP4 1112 INDIRF4 CVFI4 4 ASGNI4 line 2981 ;2981: trap_Cvar_Set("ui_Warmup", va("%i", temp)); ADDRGP4 $1776 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1116 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2252 ARGP4 ADDRLP4 1116 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2982 ;2982: temp = trap_Cvar_VariableValue( "sv_pure" ); ADDRGP4 $2253 ARGP4 ADDRLP4 1120 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1036 ADDRLP4 1120 INDIRF4 CVFI4 4 ASGNI4 line 2983 ;2983: trap_Cvar_Set("ui_pure", va("%i", temp)); ADDRGP4 $1776 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1124 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2254 ARGP4 ADDRLP4 1124 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2985 ;2984: ;2985: trap_Cvar_Set("cg_cameraOrbit", "0"); ADDRGP4 $394 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2986 ;2986: trap_Cvar_Set("cg_thirdPerson", "0"); ADDRGP4 $396 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2987 ;2987: trap_Cvar_Set("cg_drawTimer", "1"); ADDRGP4 $2243 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2988 ;2988: trap_Cvar_Set("g_doWarmup", "1"); ADDRGP4 $2245 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2989 ;2989: trap_Cvar_Set("g_warmup", "15"); ADDRGP4 $2251 ARGP4 ADDRGP4 $695 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2990 ;2990: trap_Cvar_Set("sv_pure", "0"); ADDRGP4 $2253 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2991 ;2991: trap_Cvar_Set("g_friendlyFire", "0"); ADDRGP4 $2247 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2992 ;2992: trap_Cvar_Set("g_redTeam", UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 1128 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRGP4 $2255 ARGP4 ADDRLP4 1128 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2993 ;2993: trap_Cvar_Set("g_blueTeam", UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 1132 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRGP4 $2256 ARGP4 ADDRLP4 1132 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2995 ;2994: ;2995: if (trap_Cvar_VariableValue("ui_recordSPDemo")) { ADDRGP4 $2259 ARGP4 ADDRLP4 1136 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1136 INDIRF4 CNSTF4 0 EQF4 $2257 line 2996 ;2996: Com_sprintf(buff, MAX_STRING_CHARS, "%s_%i", uiInfo.mapList[ui_currentMap.integer].mapLoadName, g); ADDRLP4 4 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2260 ARGP4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 1040 INDIRI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 2997 ;2997: trap_Cvar_Set("ui_recordSPDemoName", buff); ADDRGP4 $2264 ARGP4 ADDRLP4 4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 2998 ;2998: } LABELV $2257 line 3000 ;2999: ;3000: delay = 500; ADDRLP4 1032 CNSTI4 500 ASGNI4 line 3002 ;3001: ;3002: if (g == GT_TOURNAMENT) { ADDRLP4 1040 INDIRI4 CNSTI4 1 NEI4 $2265 line 3003 ;3003: trap_Cvar_Set("sv_maxClients", "2"); ADDRGP4 $2249 ARGP4 ADDRGP4 $2267 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3004 ;3004: Com_sprintf( buff, sizeof(buff), "wait ; addbot %s %f "", %i \n", uiInfo.mapList[ui_currentMap.integer].opponentName, skill, delay); ADDRLP4 4 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2268 ARGP4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+12 ADDP4 INDIRP4 ARGP4 ADDRLP4 1044 INDIRF4 ARGF4 ADDRLP4 1032 INDIRI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 3005 ;3005: trap_Cmd_ExecuteText( EXEC_APPEND, buff ); CNSTI4 2 ARGI4 ADDRLP4 4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3006 ;3006: } else { ADDRGP4 $2266 JUMPV LABELV $2265 line 3007 ;3007: temp = uiInfo.mapList[ui_currentMap.integer].teamMembers * 2; ADDRLP4 1036 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+16 ADDP4 INDIRI4 CNSTI4 1 LSHI4 ASGNI4 line 3008 ;3008: trap_Cvar_Set("sv_maxClients", va("%d", temp)); ADDRGP4 $716 ARGP4 ADDRLP4 1036 INDIRI4 ARGI4 ADDRLP4 1140 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2249 ARGP4 ADDRLP4 1140 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3009 ;3009: for (i =0; i < uiInfo.mapList[ui_currentMap.integer].teamMembers; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $2278 JUMPV LABELV $2275 line 3010 ;3010: Com_sprintf( buff, sizeof(buff), "addbot %s %f %s %i %s\n", UI_AIFromName(uiInfo.teamList[k].teamMembers[i]), skill, (g == GT_FFA) ? "" : "Blue", delay, uiInfo.teamList[k].teamMembers[i]); ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 44 ADDRLP4 1028 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+8 ADDP4 ADDP4 INDIRP4 ARGP4 ADDRLP4 1148 ADDRGP4 UI_AIFromName CALLP4 ASGNP4 ADDRLP4 4 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2282 ARGP4 ADDRLP4 1148 INDIRP4 ARGP4 ADDRLP4 1044 INDIRF4 ARGF4 ADDRLP4 1040 INDIRI4 CNSTI4 0 NEI4 $2288 ADDRLP4 1144 ADDRGP4 $112 ASGNP4 ADDRGP4 $2289 JUMPV LABELV $2288 ADDRLP4 1144 ADDRGP4 $842 ASGNP4 LABELV $2289 ADDRLP4 1144 INDIRP4 ARGP4 ADDRLP4 1032 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 44 ADDRLP4 1028 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+8 ADDP4 ADDP4 INDIRP4 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 3011 ;3011: trap_Cmd_ExecuteText( EXEC_APPEND, buff ); CNSTI4 2 ARGI4 ADDRLP4 4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3012 ;3012: delay += 500; ADDRLP4 1032 ADDRLP4 1032 INDIRI4 CNSTI4 500 ADDI4 ASGNI4 line 3013 ;3013: } LABELV $2276 line 3009 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2278 ADDRLP4 0 INDIRI4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+16 ADDP4 INDIRI4 LTI4 $2275 line 3014 ;3014: k = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 1144 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 1144 INDIRP4 ARGP4 ADDRLP4 1148 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 1028 ADDRLP4 1148 INDIRI4 ASGNI4 line 3015 ;3015: for (i =0; i < uiInfo.mapList[ui_currentMap.integer].teamMembers-1; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $2293 JUMPV LABELV $2290 line 3016 ;3016: Com_sprintf( buff, sizeof(buff), "addbot %s %f %s %i %s\n", UI_AIFromName(uiInfo.teamList[k].teamMembers[i]), skill, (g == GT_FFA) ? "" : "Red", delay, uiInfo.teamList[k].teamMembers[i]); ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 44 ADDRLP4 1028 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+8 ADDP4 ADDP4 INDIRP4 ARGP4 ADDRLP4 1156 ADDRGP4 UI_AIFromName CALLP4 ASGNP4 ADDRLP4 4 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2282 ARGP4 ADDRLP4 1156 INDIRP4 ARGP4 ADDRLP4 1044 INDIRF4 ARGF4 ADDRLP4 1040 INDIRI4 CNSTI4 0 NEI4 $2302 ADDRLP4 1152 ADDRGP4 $112 ASGNP4 ADDRGP4 $2303 JUMPV LABELV $2302 ADDRLP4 1152 ADDRGP4 $843 ASGNP4 LABELV $2303 ADDRLP4 1152 INDIRP4 ARGP4 ADDRLP4 1032 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 44 ADDRLP4 1028 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+8 ADDP4 ADDP4 INDIRP4 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 3017 ;3017: trap_Cmd_ExecuteText( EXEC_APPEND, buff ); CNSTI4 2 ARGI4 ADDRLP4 4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3018 ;3018: delay += 500; ADDRLP4 1032 ADDRLP4 1032 INDIRI4 CNSTI4 500 ADDI4 ASGNI4 line 3019 ;3019: } LABELV $2291 line 3015 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2293 ADDRLP4 0 INDIRI4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+16 ADDP4 INDIRI4 CNSTI4 1 SUBI4 LTI4 $2290 line 3020 ;3020: } LABELV $2266 line 3021 ;3021: if (g >= GT_TEAM ) { ADDRLP4 1040 INDIRI4 CNSTI4 3 LTI4 $2304 line 3022 ;3022: trap_Cmd_ExecuteText( EXEC_APPEND, "wait 5; team Red\n" ); CNSTI4 2 ARGI4 ADDRGP4 $2306 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3023 ;3023: } LABELV $2304 line 3024 ;3024:} LABELV $2224 endproc UI_StartSkirmish 1160 32 proc UI_Update 36 8 line 3026 ;3025: ;3026:static void UI_Update(const char *name) { line 3027 ;3027: int val = trap_Cvar_VariableValue(name); ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 4 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 4 INDIRF4 CVFI4 4 ASGNI4 line 3029 ;3028: ;3029: if (Q_stricmp(name, "ui_SetName") == 0) { ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 $2310 ARGP4 ADDRLP4 8 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 CNSTI4 0 NEI4 $2308 line 3030 ;3030: trap_Cvar_Set( "name", UI_Cvar_VariableString("ui_Name")); ADDRGP4 $2311 ARGP4 ADDRLP4 12 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRGP4 $1448 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3031 ;3031: } else if (Q_stricmp(name, "ui_setRate") == 0) { ADDRGP4 $2309 JUMPV LABELV $2308 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 $2314 ARGP4 ADDRLP4 12 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 CNSTI4 0 NEI4 $2312 line 3032 ;3032: float rate = trap_Cvar_VariableValue("rate"); ADDRGP4 $2315 ARGP4 ADDRLP4 20 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 16 ADDRLP4 20 INDIRF4 ASGNF4 line 3033 ;3033: if (rate >= 5000) { ADDRLP4 16 INDIRF4 CNSTF4 1167867904 LTF4 $2316 line 3034 ;3034: trap_Cvar_Set("cl_maxpackets", "30"); ADDRGP4 $2318 ARGP4 ADDRGP4 $692 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3035 ;3035: trap_Cvar_Set("cl_packetdup", "1"); ADDRGP4 $2319 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3036 ;3036: } else if (rate >= 4000) { ADDRGP4 $2313 JUMPV LABELV $2316 ADDRLP4 16 INDIRF4 CNSTF4 1165623296 LTF4 $2320 line 3037 ;3037: trap_Cvar_Set("cl_maxpackets", "15"); ADDRGP4 $2318 ARGP4 ADDRGP4 $695 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3038 ;3038: trap_Cvar_Set("cl_packetdup", "2"); // favor less prediction errors when there's packet loss ADDRGP4 $2319 ARGP4 ADDRGP4 $2267 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3039 ;3039: } else { ADDRGP4 $2313 JUMPV LABELV $2320 line 3040 ;3040: trap_Cvar_Set("cl_maxpackets", "15"); ADDRGP4 $2318 ARGP4 ADDRGP4 $695 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3041 ;3041: trap_Cvar_Set("cl_packetdup", "1"); // favor lower bandwidth ADDRGP4 $2319 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3042 ;3042: } line 3043 ;3043: } else if (Q_stricmp(name, "ui_GetName") == 0) { ADDRGP4 $2313 JUMPV LABELV $2312 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 $2324 ARGP4 ADDRLP4 16 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 16 INDIRI4 CNSTI4 0 NEI4 $2322 line 3044 ;3044: trap_Cvar_Set( "ui_Name", UI_Cvar_VariableString("name")); ADDRGP4 $1448 ARGP4 ADDRLP4 20 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRGP4 $2311 ARGP4 ADDRLP4 20 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3045 ;3045: } else if (Q_stricmp(name, "r_colorbits") == 0) { ADDRGP4 $2323 JUMPV LABELV $2322 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 $2327 ARGP4 ADDRLP4 20 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 CNSTI4 0 NEI4 $2325 line 3046 ;3046: switch (val) { ADDRLP4 24 ADDRLP4 0 INDIRI4 ASGNI4 ADDRLP4 28 CNSTI4 16 ASGNI4 ADDRLP4 24 INDIRI4 ADDRLP4 28 INDIRI4 EQI4 $2333 ADDRLP4 24 INDIRI4 ADDRLP4 28 INDIRI4 GTI4 $2336 LABELV $2335 ADDRLP4 0 INDIRI4 CNSTI4 0 EQI4 $2330 ADDRGP4 $2326 JUMPV LABELV $2336 ADDRLP4 0 INDIRI4 CNSTI4 32 EQI4 $2334 ADDRGP4 $2326 JUMPV LABELV $2330 line 3048 ;3047: case 0: ;3048: trap_Cvar_SetValue( "r_depthbits", 0 ); ADDRGP4 $2331 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3049 ;3049: trap_Cvar_SetValue( "r_stencilbits", 0 ); ADDRGP4 $2332 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3050 ;3050: break; ADDRGP4 $2326 JUMPV LABELV $2333 line 3052 ;3051: case 16: ;3052: trap_Cvar_SetValue( "r_depthbits", 16 ); ADDRGP4 $2331 ARGP4 CNSTF4 1098907648 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3053 ;3053: trap_Cvar_SetValue( "r_stencilbits", 0 ); ADDRGP4 $2332 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3054 ;3054: break; ADDRGP4 $2326 JUMPV LABELV $2334 line 3056 ;3055: case 32: ;3056: trap_Cvar_SetValue( "r_depthbits", 24 ); ADDRGP4 $2331 ARGP4 CNSTF4 1103101952 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3057 ;3057: break; line 3059 ;3058: } ;3059: } else if (Q_stricmp(name, "r_lodbias") == 0) { ADDRGP4 $2326 JUMPV LABELV $2325 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 $2339 ARGP4 ADDRLP4 24 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 NEI4 $2337 line 3060 ;3060: switch (val) { ADDRLP4 28 ADDRLP4 0 INDIRI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 EQI4 $2342 ADDRLP4 28 INDIRI4 CNSTI4 1 EQI4 $2344 ADDRLP4 28 INDIRI4 CNSTI4 2 EQI4 $2345 ADDRGP4 $2338 JUMPV LABELV $2342 line 3062 ;3061: case 0: ;3062: trap_Cvar_SetValue( "r_subdivisions", 4 ); ADDRGP4 $2343 ARGP4 CNSTF4 1082130432 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3063 ;3063: break; ADDRGP4 $2338 JUMPV LABELV $2344 line 3065 ;3064: case 1: ;3065: trap_Cvar_SetValue( "r_subdivisions", 12 ); ADDRGP4 $2343 ARGP4 CNSTF4 1094713344 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3066 ;3066: break; ADDRGP4 $2338 JUMPV LABELV $2345 line 3068 ;3067: case 2: ;3068: trap_Cvar_SetValue( "r_subdivisions", 20 ); ADDRGP4 $2343 ARGP4 CNSTF4 1101004800 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3069 ;3069: break; line 3071 ;3070: } ;3071: } else if (Q_stricmp(name, "ui_glCustom") == 0) { ADDRGP4 $2338 JUMPV LABELV $2337 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 $2348 ARGP4 ADDRLP4 28 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 NEI4 $2346 line 3072 ;3072: switch (val) { ADDRLP4 32 ADDRLP4 0 INDIRI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 LTI4 $2347 ADDRLP4 32 INDIRI4 CNSTI4 3 GTI4 $2347 ADDRLP4 32 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $2367 ADDP4 INDIRP4 JUMPV lit align 4 LABELV $2367 address $2351 address $2363 address $2364 address $2366 code LABELV $2351 line 3074 ;3073: case 0: // high quality ;3074: trap_Cvar_SetValue( "r_fullScreen", 1 ); ADDRGP4 $2352 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3075 ;3075: trap_Cvar_SetValue( "r_subdivisions", 4 ); ADDRGP4 $2343 ARGP4 CNSTF4 1082130432 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3076 ;3076: trap_Cvar_SetValue( "r_vertexlight", 0 ); ADDRGP4 $2353 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3077 ;3077: trap_Cvar_SetValue( "r_lodbias", 0 ); ADDRGP4 $2339 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3078 ;3078: trap_Cvar_SetValue( "r_colorbits", 32 ); ADDRGP4 $2327 ARGP4 CNSTF4 1107296256 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3079 ;3079: trap_Cvar_SetValue( "r_depthbits", 24 ); ADDRGP4 $2331 ARGP4 CNSTF4 1103101952 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3080 ;3080: trap_Cvar_SetValue( "r_picmip", 0 ); ADDRGP4 $2354 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3081 ;3081: trap_Cvar_SetValue( "r_mode", 4 ); ADDRGP4 $2355 ARGP4 CNSTF4 1082130432 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3082 ;3082: trap_Cvar_SetValue( "r_texturebits", 32 ); ADDRGP4 $2356 ARGP4 CNSTF4 1107296256 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3083 ;3083: trap_Cvar_SetValue( "r_fastSky", 0 ); ADDRGP4 $2357 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3084 ;3084: trap_Cvar_SetValue( "r_inGameVideo", 1 ); ADDRGP4 $2358 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3085 ;3085: trap_Cvar_SetValue( "cg_shadows", 1 ); ADDRGP4 $2359 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3086 ;3086: trap_Cvar_SetValue( "cg_brassTime", 2500 ); ADDRGP4 $2360 ARGP4 CNSTF4 1159479296 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3087 ;3087: trap_Cvar_Set( "r_texturemode", "GL_LINEAR_MIPMAP_LINEAR" ); ADDRGP4 $2361 ARGP4 ADDRGP4 $2362 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3088 ;3088: break; ADDRGP4 $2347 JUMPV LABELV $2363 line 3090 ;3089: case 1: // normal ;3090: trap_Cvar_SetValue( "r_fullScreen", 1 ); ADDRGP4 $2352 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3091 ;3091: trap_Cvar_SetValue( "r_subdivisions", 12 ); ADDRGP4 $2343 ARGP4 CNSTF4 1094713344 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3092 ;3092: trap_Cvar_SetValue( "r_vertexlight", 0 ); ADDRGP4 $2353 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3093 ;3093: trap_Cvar_SetValue( "r_lodbias", 0 ); ADDRGP4 $2339 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3094 ;3094: trap_Cvar_SetValue( "r_colorbits", 0 ); ADDRGP4 $2327 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3095 ;3095: trap_Cvar_SetValue( "r_depthbits", 24 ); ADDRGP4 $2331 ARGP4 CNSTF4 1103101952 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3096 ;3096: trap_Cvar_SetValue( "r_picmip", 1 ); ADDRGP4 $2354 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3097 ;3097: trap_Cvar_SetValue( "r_mode", 3 ); ADDRGP4 $2355 ARGP4 CNSTF4 1077936128 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3098 ;3098: trap_Cvar_SetValue( "r_texturebits", 0 ); ADDRGP4 $2356 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3099 ;3099: trap_Cvar_SetValue( "r_fastSky", 0 ); ADDRGP4 $2357 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3100 ;3100: trap_Cvar_SetValue( "r_inGameVideo", 1 ); ADDRGP4 $2358 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3101 ;3101: trap_Cvar_SetValue( "cg_brassTime", 2500 ); ADDRGP4 $2360 ARGP4 CNSTF4 1159479296 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3102 ;3102: trap_Cvar_Set( "r_texturemode", "GL_LINEAR_MIPMAP_LINEAR" ); ADDRGP4 $2361 ARGP4 ADDRGP4 $2362 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3103 ;3103: trap_Cvar_SetValue( "cg_shadows", 0 ); ADDRGP4 $2359 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3104 ;3104: break; ADDRGP4 $2347 JUMPV LABELV $2364 line 3106 ;3105: case 2: // fast ;3106: trap_Cvar_SetValue( "r_fullScreen", 1 ); ADDRGP4 $2352 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3107 ;3107: trap_Cvar_SetValue( "r_subdivisions", 8 ); ADDRGP4 $2343 ARGP4 CNSTF4 1090519040 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3108 ;3108: trap_Cvar_SetValue( "r_vertexlight", 0 ); ADDRGP4 $2353 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3109 ;3109: trap_Cvar_SetValue( "r_lodbias", 1 ); ADDRGP4 $2339 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3110 ;3110: trap_Cvar_SetValue( "r_colorbits", 0 ); ADDRGP4 $2327 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3111 ;3111: trap_Cvar_SetValue( "r_depthbits", 0 ); ADDRGP4 $2331 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3112 ;3112: trap_Cvar_SetValue( "r_picmip", 1 ); ADDRGP4 $2354 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3113 ;3113: trap_Cvar_SetValue( "r_mode", 3 ); ADDRGP4 $2355 ARGP4 CNSTF4 1077936128 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3114 ;3114: trap_Cvar_SetValue( "r_texturebits", 0 ); ADDRGP4 $2356 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3115 ;3115: trap_Cvar_SetValue( "cg_shadows", 0 ); ADDRGP4 $2359 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3116 ;3116: trap_Cvar_SetValue( "r_fastSky", 1 ); ADDRGP4 $2357 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3117 ;3117: trap_Cvar_SetValue( "r_inGameVideo", 0 ); ADDRGP4 $2358 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3118 ;3118: trap_Cvar_SetValue( "cg_brassTime", 0 ); ADDRGP4 $2360 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3119 ;3119: trap_Cvar_Set( "r_texturemode", "GL_LINEAR_MIPMAP_NEAREST" ); ADDRGP4 $2361 ARGP4 ADDRGP4 $2365 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3120 ;3120: break; ADDRGP4 $2347 JUMPV LABELV $2366 line 3122 ;3121: case 3: // fastest ;3122: trap_Cvar_SetValue( "r_fullScreen", 1 ); ADDRGP4 $2352 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3123 ;3123: trap_Cvar_SetValue( "r_subdivisions", 20 ); ADDRGP4 $2343 ARGP4 CNSTF4 1101004800 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3124 ;3124: trap_Cvar_SetValue( "r_vertexlight", 1 ); ADDRGP4 $2353 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3125 ;3125: trap_Cvar_SetValue( "r_lodbias", 2 ); ADDRGP4 $2339 ARGP4 CNSTF4 1073741824 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3126 ;3126: trap_Cvar_SetValue( "r_colorbits", 16 ); ADDRGP4 $2327 ARGP4 CNSTF4 1098907648 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3127 ;3127: trap_Cvar_SetValue( "r_depthbits", 16 ); ADDRGP4 $2331 ARGP4 CNSTF4 1098907648 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3128 ;3128: trap_Cvar_SetValue( "r_mode", 3 ); ADDRGP4 $2355 ARGP4 CNSTF4 1077936128 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3129 ;3129: trap_Cvar_SetValue( "r_picmip", 2 ); ADDRGP4 $2354 ARGP4 CNSTF4 1073741824 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3130 ;3130: trap_Cvar_SetValue( "r_texturebits", 16 ); ADDRGP4 $2356 ARGP4 CNSTF4 1098907648 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3131 ;3131: trap_Cvar_SetValue( "cg_shadows", 0 ); ADDRGP4 $2359 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3132 ;3132: trap_Cvar_SetValue( "cg_brassTime", 0 ); ADDRGP4 $2360 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3133 ;3133: trap_Cvar_SetValue( "r_fastSky", 1 ); ADDRGP4 $2357 ARGP4 CNSTF4 1065353216 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3134 ;3134: trap_Cvar_SetValue( "r_inGameVideo", 0 ); ADDRGP4 $2358 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3135 ;3135: trap_Cvar_Set( "r_texturemode", "GL_LINEAR_MIPMAP_NEAREST" ); ADDRGP4 $2361 ARGP4 ADDRGP4 $2365 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3136 ;3136: break; line 3138 ;3137: } ;3138: } else if (Q_stricmp(name, "ui_mousePitch") == 0) { ADDRGP4 $2347 JUMPV LABELV $2346 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 $2370 ARGP4 ADDRLP4 32 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 NEI4 $2368 line 3139 ;3139: if (val == 0) { ADDRLP4 0 INDIRI4 CNSTI4 0 NEI4 $2371 line 3140 ;3140: trap_Cvar_SetValue( "m_pitch", 0.022f ); ADDRGP4 $2373 ARGP4 CNSTF4 1018444120 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3141 ;3141: } else { ADDRGP4 $2372 JUMPV LABELV $2371 line 3142 ;3142: trap_Cvar_SetValue( "m_pitch", -0.022f ); ADDRGP4 $2373 ARGP4 CNSTF4 3165927768 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3143 ;3143: } LABELV $2372 line 3144 ;3144: } LABELV $2368 LABELV $2347 LABELV $2338 LABELV $2326 LABELV $2323 LABELV $2313 LABELV $2309 line 3145 ;3145:} LABELV $2307 endproc UI_Update 36 8 proc UI_RunMenuScript 1304 24 line 3147 ;3146: ;3147:static void UI_RunMenuScript(char **args) { line 3151 ;3148: const char *name, *name2; ;3149: char buff[1024]; ;3150: ;3151: if (String_Parse(args, &name)) { ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1024 ARGP4 ADDRLP4 1032 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 1032 INDIRI4 CNSTI4 0 EQI4 $2375 line 3152 ;3152: if (Q_stricmp(name, "StartServer") == 0) { ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2379 ARGP4 ADDRLP4 1036 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1036 INDIRI4 CNSTI4 0 NEI4 $2377 line 3155 ;3153: int i, clients, oldclients; ;3154: float skill; ;3155: trap_Cvar_Set("cg_thirdPerson", "0"); ADDRGP4 $396 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3156 ;3156: trap_Cvar_Set("cg_cameraOrbit", "0"); ADDRGP4 $394 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3157 ;3157: trap_Cvar_Set("ui_singlePlayerActive", "0"); ADDRGP4 $2240 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3158 ;3158: trap_Cvar_SetValue( "dedicated", Com_Clamp( 0, 2, ui_dedicated.integer ) ); CNSTF4 0 ARGF4 CNSTF4 1073741824 ARGF4 ADDRGP4 ui_dedicated+12 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 1056 ADDRGP4 Com_Clamp CALLF4 ASGNF4 ADDRGP4 $2380 ARGP4 ADDRLP4 1056 INDIRF4 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3159 ;3159: trap_Cvar_SetValue( "g_gametype", Com_Clamp( 0, 8, uiInfo.gameTypes[ui_netGameType.integer].gtEnum ) ); CNSTF4 0 ARGF4 CNSTF4 1090519040 ARGF4 ADDRGP4 ui_netGameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 CVIF4 4 ARGF4 ADDRLP4 1060 ADDRGP4 Com_Clamp CALLF4 ASGNF4 ADDRGP4 $1362 ARGP4 ADDRLP4 1060 INDIRF4 ARGF4 ADDRGP4 trap_Cvar_SetValue CALLV pop line 3160 ;3160: trap_Cvar_Set("g_redTeam", UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 1064 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRGP4 $2255 ARGP4 ADDRLP4 1064 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3161 ;3161: trap_Cvar_Set("g_blueTeam", UI_Cvar_VariableString("ui_opponentName")); ADDRGP4 $1081 ARGP4 ADDRLP4 1068 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRGP4 $2256 ARGP4 ADDRLP4 1068 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3162 ;3162: trap_Cmd_ExecuteText( EXEC_APPEND, va( "wait ; wait ; map %s\n", uiInfo.mapList[ui_currentNetMap.integer].mapLoadName ) ); ADDRGP4 $2233 ARGP4 CNSTI4 100 ADDRGP4 ui_currentNetMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 1072 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1072 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3163 ;3163: skill = trap_Cvar_VariableValue( "g_spSkill" ); ADDRGP4 $827 ARGP4 ADDRLP4 1076 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1048 ADDRLP4 1076 INDIRF4 ASGNF4 line 3165 ;3164: // set max clients based on spots ;3165: oldclients = trap_Cvar_VariableValue( "sv_maxClients" ); ADDRGP4 $2249 ARGP4 ADDRLP4 1080 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1052 ADDRLP4 1080 INDIRF4 CVFI4 4 ASGNI4 line 3166 ;3166: clients = 0; ADDRLP4 1044 CNSTI4 0 ASGNI4 line 3167 ;3167: for (i = 0; i < PLAYERS_PER_TEAM; i++) { ADDRLP4 1040 CNSTI4 0 ASGNI4 LABELV $2388 line 3168 ;3168: int bot = trap_Cvar_VariableValue( va("ui_blueteam%i", i+1)); ADDRGP4 $849 ARGP4 ADDRLP4 1040 INDIRI4 CNSTI4 1 ADDI4 ARGI4 ADDRLP4 1088 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 1088 INDIRP4 ARGP4 ADDRLP4 1092 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1084 ADDRLP4 1092 INDIRF4 CVFI4 4 ASGNI4 line 3169 ;3169: if (bot >= 0) { ADDRLP4 1084 INDIRI4 CNSTI4 0 LTI4 $2392 line 3170 ;3170: clients++; ADDRLP4 1044 ADDRLP4 1044 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3171 ;3171: } LABELV $2392 line 3172 ;3172: bot = trap_Cvar_VariableValue( va("ui_redteam%i", i+1)); ADDRGP4 $850 ARGP4 ADDRLP4 1040 INDIRI4 CNSTI4 1 ADDI4 ARGI4 ADDRLP4 1096 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 1096 INDIRP4 ARGP4 ADDRLP4 1100 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1084 ADDRLP4 1100 INDIRF4 CVFI4 4 ASGNI4 line 3173 ;3173: if (bot >= 0) { ADDRLP4 1084 INDIRI4 CNSTI4 0 LTI4 $2394 line 3174 ;3174: clients++; ADDRLP4 1044 ADDRLP4 1044 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3175 ;3175: } LABELV $2394 line 3176 ;3176: } LABELV $2389 line 3167 ADDRLP4 1040 ADDRLP4 1040 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 1040 INDIRI4 CNSTI4 5 LTI4 $2388 line 3177 ;3177: if (clients == 0) { ADDRLP4 1044 INDIRI4 CNSTI4 0 NEI4 $2396 line 3178 ;3178: clients = 8; ADDRLP4 1044 CNSTI4 8 ASGNI4 line 3179 ;3179: } LABELV $2396 line 3181 ;3180: ;3181: if (oldclients > clients) { ADDRLP4 1052 INDIRI4 ADDRLP4 1044 INDIRI4 LEI4 $2398 line 3182 ;3182: clients = oldclients; ADDRLP4 1044 ADDRLP4 1052 INDIRI4 ASGNI4 line 3183 ;3183: } LABELV $2398 line 3185 ;3184: ;3185: trap_Cvar_Set("sv_maxClients", va("%d",clients)); ADDRGP4 $716 ARGP4 ADDRLP4 1044 INDIRI4 ARGI4 ADDRLP4 1084 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2249 ARGP4 ADDRLP4 1084 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3187 ;3186: ;3187: for (i = 0; i < PLAYERS_PER_TEAM; i++) { ADDRLP4 1040 CNSTI4 0 ASGNI4 LABELV $2400 line 3188 ;3188: int bot = trap_Cvar_VariableValue( va("ui_blueteam%i", i+1)); ADDRGP4 $849 ARGP4 ADDRLP4 1040 INDIRI4 CNSTI4 1 ADDI4 ARGI4 ADDRLP4 1092 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 1092 INDIRP4 ARGP4 ADDRLP4 1096 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1088 ADDRLP4 1096 INDIRF4 CVFI4 4 ASGNI4 line 3189 ;3189: if (bot > 1) { ADDRLP4 1088 INDIRI4 CNSTI4 1 LEI4 $2404 line 3190 ;3190: if (ui_actualNetGameType.integer >= GT_TEAM) { ADDRGP4 ui_actualNetGameType+12 INDIRI4 CNSTI4 3 LTI4 $2406 line 3191 ;3191: Com_sprintf( buff, sizeof(buff), "addbot %s %f %s\n", uiInfo.characterList[bot-2].name, skill, "Blue"); ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2409 ARGP4 CNSTI4 24 ADDRLP4 1088 INDIRI4 MULI4 ADDRGP4 uiInfo+73448-48 ADDP4 INDIRP4 ARGP4 ADDRLP4 1048 INDIRF4 ARGF4 ADDRGP4 $842 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 3192 ;3192: } else { ADDRGP4 $2407 JUMPV LABELV $2406 line 3193 ;3193: Com_sprintf( buff, sizeof(buff), "addbot %s %f \n", UI_GetBotNameByNumber(bot-2), skill); ADDRLP4 1088 INDIRI4 CNSTI4 2 SUBI4 ARGI4 ADDRLP4 1100 ADDRGP4 UI_GetBotNameByNumber CALLP4 ASGNP4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2412 ARGP4 ADDRLP4 1100 INDIRP4 ARGP4 ADDRLP4 1048 INDIRF4 ARGF4 ADDRGP4 Com_sprintf CALLV pop line 3194 ;3194: } LABELV $2407 line 3195 ;3195: trap_Cmd_ExecuteText( EXEC_APPEND, buff ); CNSTI4 2 ARGI4 ADDRLP4 0 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3196 ;3196: } LABELV $2404 line 3197 ;3197: bot = trap_Cvar_VariableValue( va("ui_redteam%i", i+1)); ADDRGP4 $850 ARGP4 ADDRLP4 1040 INDIRI4 CNSTI4 1 ADDI4 ARGI4 ADDRLP4 1100 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 1100 INDIRP4 ARGP4 ADDRLP4 1104 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1088 ADDRLP4 1104 INDIRF4 CVFI4 4 ASGNI4 line 3198 ;3198: if (bot > 1) { ADDRLP4 1088 INDIRI4 CNSTI4 1 LEI4 $2413 line 3199 ;3199: if (ui_actualNetGameType.integer >= GT_TEAM) { ADDRGP4 ui_actualNetGameType+12 INDIRI4 CNSTI4 3 LTI4 $2415 line 3200 ;3200: Com_sprintf( buff, sizeof(buff), "addbot %s %f %s\n", uiInfo.characterList[bot-2].name, skill, "Red"); ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2409 ARGP4 CNSTI4 24 ADDRLP4 1088 INDIRI4 MULI4 ADDRGP4 uiInfo+73448-48 ADDP4 INDIRP4 ARGP4 ADDRLP4 1048 INDIRF4 ARGF4 ADDRGP4 $843 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 3201 ;3201: } else { ADDRGP4 $2416 JUMPV LABELV $2415 line 3202 ;3202: Com_sprintf( buff, sizeof(buff), "addbot %s %f \n", UI_GetBotNameByNumber(bot-2), skill); ADDRLP4 1088 INDIRI4 CNSTI4 2 SUBI4 ARGI4 ADDRLP4 1108 ADDRGP4 UI_GetBotNameByNumber CALLP4 ASGNP4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2412 ARGP4 ADDRLP4 1108 INDIRP4 ARGP4 ADDRLP4 1048 INDIRF4 ARGF4 ADDRGP4 Com_sprintf CALLV pop line 3203 ;3203: } LABELV $2416 line 3204 ;3204: trap_Cmd_ExecuteText( EXEC_APPEND, buff ); CNSTI4 2 ARGI4 ADDRLP4 0 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3205 ;3205: } LABELV $2413 line 3206 ;3206: } LABELV $2401 line 3187 ADDRLP4 1040 ADDRLP4 1040 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 1040 INDIRI4 CNSTI4 5 LTI4 $2400 line 3207 ;3207: } else if (Q_stricmp(name, "updateSPMenu") == 0) { ADDRGP4 $2378 JUMPV LABELV $2377 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2422 ARGP4 ADDRLP4 1040 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1040 INDIRI4 CNSTI4 0 NEI4 $2420 line 3208 ;3208: UI_SetCapFragLimits(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_SetCapFragLimits CALLV pop line 3209 ;3209: UI_MapCountByGameType(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_MapCountByGameType CALLI4 pop line 3210 ;3210: ui_mapIndex.integer = UI_GetIndexFromSelection(ui_currentMap.integer); ADDRGP4 ui_currentMap+12 INDIRI4 ARGI4 ADDRLP4 1044 ADDRGP4 UI_GetIndexFromSelection CALLI4 ASGNI4 ADDRGP4 ui_mapIndex+12 ADDRLP4 1044 INDIRI4 ASGNI4 line 3211 ;3211: trap_Cvar_Set("ui_mapIndex", va("%d", ui_mapIndex.integer)); ADDRGP4 $716 ARGP4 ADDRGP4 ui_mapIndex+12 INDIRI4 ARGI4 ADDRLP4 1048 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2227 ARGP4 ADDRLP4 1048 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3212 ;3212: Menu_SetFeederSelection(NULL, FEEDER_MAPS, ui_mapIndex.integer, "skirmish"); CNSTP4 0 ARGP4 CNSTI4 1 ARGI4 ADDRGP4 ui_mapIndex+12 INDIRI4 ARGI4 ADDRGP4 $2223 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 3213 ;3213: UI_GameType_HandleKey(0, 0, K_MOUSE1, qfalse); ADDRLP4 1052 CNSTI4 0 ASGNI4 ADDRLP4 1052 INDIRI4 ARGI4 CNSTP4 0 ARGP4 CNSTI4 178 ARGI4 ADDRLP4 1052 INDIRI4 ARGI4 ADDRGP4 UI_GameType_HandleKey CALLI4 pop line 3214 ;3214: UI_GameType_HandleKey(0, 0, K_MOUSE2, qfalse); ADDRLP4 1056 CNSTI4 0 ASGNI4 ADDRLP4 1056 INDIRI4 ARGI4 CNSTP4 0 ARGP4 CNSTI4 179 ARGI4 ADDRLP4 1056 INDIRI4 ARGI4 ADDRGP4 UI_GameType_HandleKey CALLI4 pop line 3215 ;3215: } else if (Q_stricmp(name, "resetDefaults") == 0) { ADDRGP4 $2421 JUMPV LABELV $2420 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2429 ARGP4 ADDRLP4 1044 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1044 INDIRI4 CNSTI4 0 NEI4 $2427 line 3216 ;3216: trap_Cmd_ExecuteText( EXEC_APPEND, "exec default.cfg\n"); CNSTI4 2 ARGI4 ADDRGP4 $2430 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3217 ;3217: trap_Cmd_ExecuteText( EXEC_APPEND, "cvar_restart\n"); CNSTI4 2 ARGI4 ADDRGP4 $2431 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3218 ;3218: Controls_SetDefaults(); ADDRGP4 Controls_SetDefaults CALLV pop line 3219 ;3219: trap_Cvar_Set("com_introPlayed", "1" ); ADDRGP4 $2432 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3220 ;3220: trap_Cmd_ExecuteText( EXEC_APPEND, "vid_restart\n" ); CNSTI4 2 ARGI4 ADDRGP4 $2433 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3221 ;3221: } else if (Q_stricmp(name, "getCDKey") == 0) { ADDRGP4 $2428 JUMPV LABELV $2427 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2436 ARGP4 ADDRLP4 1048 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1048 INDIRI4 CNSTI4 0 NEI4 $2434 line 3223 ;3222: char out[17]; ;3223: trap_GetCDKey(buff, 17); ADDRLP4 0 ARGP4 CNSTI4 17 ARGI4 ADDRGP4 trap_GetCDKey CALLV pop line 3224 ;3224: trap_Cvar_Set("cdkey1", ""); ADDRGP4 $2437 ARGP4 ADDRGP4 $112 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3225 ;3225: trap_Cvar_Set("cdkey2", ""); ADDRGP4 $2438 ARGP4 ADDRGP4 $112 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3226 ;3226: trap_Cvar_Set("cdkey3", ""); ADDRGP4 $2439 ARGP4 ADDRGP4 $112 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3227 ;3227: trap_Cvar_Set("cdkey4", ""); ADDRGP4 $2440 ARGP4 ADDRGP4 $112 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3228 ;3228: if (strlen(buff) == CDKEY_LEN) { ADDRLP4 0 ARGP4 ADDRLP4 1072 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 1072 INDIRI4 CNSTI4 16 NEI4 $2435 line 3229 ;3229: Q_strncpyz(out, buff, 5); ADDRLP4 1052 ARGP4 ADDRLP4 0 ARGP4 CNSTI4 5 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3230 ;3230: trap_Cvar_Set("cdkey1", out); ADDRGP4 $2437 ARGP4 ADDRLP4 1052 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3231 ;3231: Q_strncpyz(out, buff + 4, 5); ADDRLP4 1052 ARGP4 ADDRLP4 0+4 ARGP4 CNSTI4 5 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3232 ;3232: trap_Cvar_Set("cdkey2", out); ADDRGP4 $2438 ARGP4 ADDRLP4 1052 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3233 ;3233: Q_strncpyz(out, buff + 8, 5); ADDRLP4 1052 ARGP4 ADDRLP4 0+8 ARGP4 CNSTI4 5 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3234 ;3234: trap_Cvar_Set("cdkey3", out); ADDRGP4 $2439 ARGP4 ADDRLP4 1052 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3235 ;3235: Q_strncpyz(out, buff + 12, 5); ADDRLP4 1052 ARGP4 ADDRLP4 0+12 ARGP4 CNSTI4 5 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3236 ;3236: trap_Cvar_Set("cdkey4", out); ADDRGP4 $2440 ARGP4 ADDRLP4 1052 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3237 ;3237: } line 3239 ;3238: ;3239: } else if (Q_stricmp(name, "verifyCDKey") == 0) { ADDRGP4 $2435 JUMPV LABELV $2434 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2448 ARGP4 ADDRLP4 1052 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1052 INDIRI4 CNSTI4 0 NEI4 $2446 line 3240 ;3240: buff[0] = '\0'; ADDRLP4 0 CNSTI1 0 ASGNI1 line 3241 ;3241: Q_strcat(buff, 1024, UI_Cvar_VariableString("cdkey1")); ADDRGP4 $2437 ARGP4 ADDRLP4 1056 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRLP4 1056 INDIRP4 ARGP4 ADDRGP4 Q_strcat CALLV pop line 3242 ;3242: Q_strcat(buff, 1024, UI_Cvar_VariableString("cdkey2")); ADDRGP4 $2438 ARGP4 ADDRLP4 1060 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRLP4 1060 INDIRP4 ARGP4 ADDRGP4 Q_strcat CALLV pop line 3243 ;3243: Q_strcat(buff, 1024, UI_Cvar_VariableString("cdkey3")); ADDRGP4 $2439 ARGP4 ADDRLP4 1064 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRLP4 1064 INDIRP4 ARGP4 ADDRGP4 Q_strcat CALLV pop line 3244 ;3244: Q_strcat(buff, 1024, UI_Cvar_VariableString("cdkey4")); ADDRGP4 $2440 ARGP4 ADDRLP4 1068 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRLP4 1068 INDIRP4 ARGP4 ADDRGP4 Q_strcat CALLV pop line 3245 ;3245: trap_Cvar_Set("cdkey", buff); ADDRGP4 $2449 ARGP4 ADDRLP4 0 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3246 ;3246: if (trap_VerifyCDKey(buff, UI_Cvar_VariableString("cdkeychecksum"))) { ADDRGP4 $2452 ARGP4 ADDRLP4 1072 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ARGP4 ADDRLP4 1072 INDIRP4 ARGP4 ADDRLP4 1076 ADDRGP4 trap_VerifyCDKey CALLI4 ASGNI4 ADDRLP4 1076 INDIRI4 CNSTI4 0 EQI4 $2450 line 3247 ;3247: trap_Cvar_Set("ui_cdkeyvalid", "CD Key Appears to be valid."); ADDRGP4 $2453 ARGP4 ADDRGP4 $2454 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3248 ;3248: trap_SetCDKey(buff); ADDRLP4 0 ARGP4 ADDRGP4 trap_SetCDKey CALLV pop line 3249 ;3249: } else { ADDRGP4 $2447 JUMPV LABELV $2450 line 3250 ;3250: trap_Cvar_Set("ui_cdkeyvalid", "CD Key does not appear to be valid."); ADDRGP4 $2453 ARGP4 ADDRGP4 $2455 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3251 ;3251: } line 3252 ;3252: } else if (Q_stricmp(name, "loadArenas") == 0) { ADDRGP4 $2447 JUMPV LABELV $2446 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2458 ARGP4 ADDRLP4 1056 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1056 INDIRI4 CNSTI4 0 NEI4 $2456 line 3253 ;3253: UI_LoadArenas(); ADDRGP4 UI_LoadArenas CALLV pop line 3254 ;3254: UI_MapCountByGameType(qfalse); CNSTI4 0 ARGI4 ADDRGP4 UI_MapCountByGameType CALLI4 pop line 3255 ;3255: Menu_SetFeederSelection(NULL, FEEDER_ALLMAPS, 0, "createserver"); CNSTP4 0 ARGP4 CNSTI4 4 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 $2459 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 3256 ;3256: } else if (Q_stricmp(name, "saveControls") == 0) { ADDRGP4 $2457 JUMPV LABELV $2456 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2462 ARGP4 ADDRLP4 1060 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1060 INDIRI4 CNSTI4 0 NEI4 $2460 line 3257 ;3257: Controls_SetConfig(qtrue); CNSTI4 1 ARGI4 ADDRGP4 Controls_SetConfig CALLV pop line 3258 ;3258: } else if (Q_stricmp(name, "loadControls") == 0) { ADDRGP4 $2461 JUMPV LABELV $2460 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2465 ARGP4 ADDRLP4 1064 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1064 INDIRI4 CNSTI4 0 NEI4 $2463 line 3259 ;3259: Controls_GetConfig(); ADDRGP4 Controls_GetConfig CALLV pop line 3260 ;3260: } else if (Q_stricmp(name, "clearError") == 0) { ADDRGP4 $2464 JUMPV LABELV $2463 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2468 ARGP4 ADDRLP4 1068 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1068 INDIRI4 CNSTI4 0 NEI4 $2466 line 3261 ;3261: trap_Cvar_Set("com_errorMessage", ""); ADDRGP4 $2469 ARGP4 ADDRGP4 $112 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3262 ;3262: } else if (Q_stricmp(name, "loadGameInfo") == 0) { ADDRGP4 $2467 JUMPV LABELV $2466 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2472 ARGP4 ADDRLP4 1072 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1072 INDIRI4 CNSTI4 0 NEI4 $2470 line 3266 ;3263:#ifdef PRE_RELEASE_TADEMO ;3264: UI_ParseGameInfo("demogameinfo.txt"); ;3265:#else ;3266: UI_ParseGameInfo("gameinfo.txt"); ADDRGP4 $677 ARGP4 ADDRGP4 UI_ParseGameInfo CALLV pop line 3268 ;3267:#endif ;3268: UI_LoadBestScores(uiInfo.mapList[ui_currentMap.integer].mapLoadName, uiInfo.gameTypes[ui_gameType.integer].gtEnum); CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_LoadBestScores CALLV pop line 3269 ;3269: } else if (Q_stricmp(name, "resetScores") == 0) { ADDRGP4 $2471 JUMPV LABELV $2470 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2481 ARGP4 ADDRLP4 1076 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1076 INDIRI4 CNSTI4 0 NEI4 $2479 line 3270 ;3270: UI_ClearScores(); ADDRGP4 UI_ClearScores CALLV pop line 3271 ;3271: } else if (Q_stricmp(name, "RefreshServers") == 0) { ADDRGP4 $2480 JUMPV LABELV $2479 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2484 ARGP4 ADDRLP4 1080 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1080 INDIRI4 CNSTI4 0 NEI4 $2482 line 3272 ;3272: UI_StartServerRefresh(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_StartServerRefresh CALLV pop line 3273 ;3273: UI_BuildServerDisplayList(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 3274 ;3274: } else if (Q_stricmp(name, "RefreshFilter") == 0) { ADDRGP4 $2483 JUMPV LABELV $2482 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2487 ARGP4 ADDRLP4 1084 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1084 INDIRI4 CNSTI4 0 NEI4 $2485 line 3275 ;3275: UI_StartServerRefresh(qfalse); CNSTI4 0 ARGI4 ADDRGP4 UI_StartServerRefresh CALLV pop line 3276 ;3276: UI_BuildServerDisplayList(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 3277 ;3277: } else if (Q_stricmp(name, "RunSPDemo") == 0) { ADDRGP4 $2486 JUMPV LABELV $2485 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2490 ARGP4 ADDRLP4 1088 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1088 INDIRI4 CNSTI4 0 NEI4 $2488 line 3278 ;3278: if (uiInfo.demoAvailable) { ADDRGP4 uiInfo+73432 INDIRI4 CNSTI4 0 EQI4 $2489 line 3279 ;3279: trap_Cmd_ExecuteText( EXEC_APPEND, va("demo %s_%i\n", uiInfo.mapList[ui_currentMap.integer].mapLoadName, uiInfo.gameTypes[ui_gameType.integer].gtEnum)); ADDRGP4 $2494 ARGP4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ARGI4 ADDRLP4 1092 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1092 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3280 ;3280: } line 3281 ;3281: } else if (Q_stricmp(name, "LoadDemos") == 0) { ADDRGP4 $2489 JUMPV LABELV $2488 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2503 ARGP4 ADDRLP4 1092 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1092 INDIRI4 CNSTI4 0 NEI4 $2501 line 3282 ;3282: UI_LoadDemos(); ADDRGP4 UI_LoadDemos CALLV pop line 3283 ;3283: } else if (Q_stricmp(name, "LoadMovies") == 0) { ADDRGP4 $2502 JUMPV LABELV $2501 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2506 ARGP4 ADDRLP4 1096 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1096 INDIRI4 CNSTI4 0 NEI4 $2504 line 3284 ;3284: UI_LoadMovies(); ADDRGP4 UI_LoadMovies CALLV pop line 3285 ;3285: } else if (Q_stricmp(name, "LoadMods") == 0) { ADDRGP4 $2505 JUMPV LABELV $2504 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2509 ARGP4 ADDRLP4 1100 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1100 INDIRI4 CNSTI4 0 NEI4 $2507 line 3286 ;3286: UI_LoadMods(); ADDRGP4 UI_LoadMods CALLV pop line 3287 ;3287: } else if (Q_stricmp(name, "playMovie") == 0) { ADDRGP4 $2508 JUMPV LABELV $2507 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2512 ARGP4 ADDRLP4 1104 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1104 INDIRI4 CNSTI4 0 NEI4 $2510 line 3288 ;3288: if (uiInfo.previewMovie >= 0) { ADDRGP4 uiInfo+99260 INDIRI4 CNSTI4 0 LTI4 $2513 line 3289 ;3289: trap_CIN_StopCinematic(uiInfo.previewMovie); ADDRGP4 uiInfo+99260 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 3290 ;3290: } LABELV $2513 line 3291 ;3291: trap_Cmd_ExecuteText( EXEC_APPEND, va("cinematic %s.roq 2\n", uiInfo.movieList[uiInfo.movieIndex])); ADDRGP4 $2517 ARGP4 ADDRGP4 uiInfo+99256 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+98228 ADDP4 INDIRP4 ARGP4 ADDRLP4 1108 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1108 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3292 ;3292: } else if (Q_stricmp(name, "RunMod") == 0) { ADDRGP4 $2511 JUMPV LABELV $2510 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2522 ARGP4 ADDRLP4 1108 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1108 INDIRI4 CNSTI4 0 NEI4 $2520 line 3293 ;3293: trap_Cvar_Set( "fs_game", uiInfo.modList[uiInfo.modIndex].modName); ADDRGP4 $2523 ARGP4 ADDRGP4 uiInfo+97192 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+96676 ADDP4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3294 ;3294: trap_Cmd_ExecuteText( EXEC_APPEND, "vid_restart;" ); CNSTI4 2 ARGI4 ADDRGP4 $2526 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3295 ;3295: } else if (Q_stricmp(name, "RunDemo") == 0) { ADDRGP4 $2521 JUMPV LABELV $2520 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2529 ARGP4 ADDRLP4 1112 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1112 INDIRI4 CNSTI4 0 NEI4 $2527 line 3296 ;3296: trap_Cmd_ExecuteText( EXEC_APPEND, va("demo %s\n", uiInfo.demoList[uiInfo.demoIndex])); ADDRGP4 $2530 ARGP4 ADDRGP4 uiInfo+98224 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+97196 ADDP4 INDIRP4 ARGP4 ADDRLP4 1116 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1116 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3297 ;3297: } else if (Q_stricmp(name, "Quake3") == 0) { ADDRGP4 $2528 JUMPV LABELV $2527 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2535 ARGP4 ADDRLP4 1116 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1116 INDIRI4 CNSTI4 0 NEI4 $2533 line 3298 ;3298: trap_Cvar_Set( "fs_game", ""); ADDRGP4 $2523 ARGP4 ADDRGP4 $112 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3299 ;3299: trap_Cmd_ExecuteText( EXEC_APPEND, "vid_restart;" ); CNSTI4 2 ARGI4 ADDRGP4 $2526 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3300 ;3300: } else if (Q_stricmp(name, "closeJoin") == 0) { ADDRGP4 $2534 JUMPV LABELV $2533 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2538 ARGP4 ADDRLP4 1120 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1120 INDIRI4 CNSTI4 0 NEI4 $2536 line 3301 ;3301: if (uiInfo.serverStatus.refreshActive) { ADDRGP4 uiInfo+99264+2212 INDIRI4 CNSTI4 0 EQI4 $2539 line 3302 ;3302: UI_StopServerRefresh(); ADDRGP4 UI_StopServerRefresh CALLV pop line 3303 ;3303: uiInfo.serverStatus.nextDisplayRefresh = 0; ADDRGP4 uiInfo+99264+10420 CNSTI4 0 ASGNI4 line 3304 ;3304: uiInfo.nextServerStatusRefresh = 0; ADDRGP4 uiInfo+114144 CNSTI4 0 ASGNI4 line 3305 ;3305: uiInfo.nextFindPlayerRefresh = 0; ADDRGP4 uiInfo+119472 CNSTI4 0 ASGNI4 line 3306 ;3306: UI_BuildServerDisplayList(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 3307 ;3307: } else { ADDRGP4 $2537 JUMPV LABELV $2539 line 3308 ;3308: Menus_CloseByName("joinserver"); ADDRGP4 $2547 ARGP4 ADDRGP4 Menus_CloseByName CALLV pop line 3309 ;3309: Menus_OpenByName("main"); ADDRGP4 $2548 ARGP4 ADDRGP4 Menus_OpenByName CALLV pop line 3310 ;3310: } line 3311 ;3311: } else if (Q_stricmp(name, "StopRefresh") == 0) { ADDRGP4 $2537 JUMPV LABELV $2536 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2551 ARGP4 ADDRLP4 1124 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1124 INDIRI4 CNSTI4 0 NEI4 $2549 line 3312 ;3312: UI_StopServerRefresh(); ADDRGP4 UI_StopServerRefresh CALLV pop line 3313 ;3313: uiInfo.serverStatus.nextDisplayRefresh = 0; ADDRGP4 uiInfo+99264+10420 CNSTI4 0 ASGNI4 line 3314 ;3314: uiInfo.nextServerStatusRefresh = 0; ADDRGP4 uiInfo+114144 CNSTI4 0 ASGNI4 line 3315 ;3315: uiInfo.nextFindPlayerRefresh = 0; ADDRGP4 uiInfo+119472 CNSTI4 0 ASGNI4 line 3316 ;3316: } else if (Q_stricmp(name, "UpdateFilter") == 0) { ADDRGP4 $2550 JUMPV LABELV $2549 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2558 ARGP4 ADDRLP4 1128 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1128 INDIRI4 CNSTI4 0 NEI4 $2556 line 3317 ;3317: if (ui_netSource.integer == AS_LOCAL) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 0 NEI4 $2559 line 3318 ;3318: UI_StartServerRefresh(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_StartServerRefresh CALLV pop line 3319 ;3319: } LABELV $2559 line 3320 ;3320: UI_BuildServerDisplayList(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 3321 ;3321: UI_FeederSelection(FEEDER_SERVERS, 0); CNSTF4 1073741824 ARGF4 CNSTI4 0 ARGI4 ADDRGP4 UI_FeederSelection CALLV pop line 3322 ;3322: } else if (Q_stricmp(name, "ServerStatus") == 0) { ADDRGP4 $2557 JUMPV LABELV $2556 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2564 ARGP4 ADDRLP4 1132 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1132 INDIRI4 CNSTI4 0 NEI4 $2562 line 3323 ;3323: trap_LAN_GetServerAddressString(ui_netSource.integer, uiInfo.serverStatus.displayServers[uiInfo.serverStatus.currentServer], uiInfo.serverStatusAddress, sizeof(uiInfo.serverStatusAddress)); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+2216 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 ADDRGP4 uiInfo+110748 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 trap_LAN_GetServerAddressString CALLV pop line 3324 ;3324: UI_BuildServerStatus(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerStatus CALLV pop line 3325 ;3325: } else if (Q_stricmp(name, "FoundPlayerServerStatus") == 0) { ADDRGP4 $2563 JUMPV LABELV $2562 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2574 ARGP4 ADDRLP4 1136 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1136 INDIRI4 CNSTI4 0 NEI4 $2572 line 3326 ;3326: Q_strncpyz(uiInfo.serverStatusAddress, uiInfo.foundPlayerServerAddresses[uiInfo.currentFoundPlayerServer], sizeof(uiInfo.serverStatusAddress)); ADDRGP4 uiInfo+110748 ARGP4 ADDRGP4 uiInfo+119464 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+117416 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3327 ;3327: UI_BuildServerStatus(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerStatus CALLV pop line 3328 ;3328: Menu_SetFeederSelection(NULL, FEEDER_FINDPLAYER, 0, NULL); CNSTP4 0 ARGP4 CNSTI4 14 ARGI4 CNSTI4 0 ARGI4 CNSTP4 0 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 3329 ;3329: } else if (Q_stricmp(name, "FindPlayer") == 0) { ADDRGP4 $2573 JUMPV LABELV $2572 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2581 ARGP4 ADDRLP4 1140 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1140 INDIRI4 CNSTI4 0 NEI4 $2579 line 3330 ;3330: UI_BuildFindPlayerList(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildFindPlayerList CALLV pop line 3332 ;3331: // clear the displayed server status info ;3332: uiInfo.serverStatusInfo.numLines = 0; ADDRGP4 uiInfo+110812+3328 CNSTI4 0 ASGNI4 line 3333 ;3333: Menu_SetFeederSelection(NULL, FEEDER_FINDPLAYER, 0, NULL); CNSTP4 0 ARGP4 CNSTI4 14 ARGI4 CNSTI4 0 ARGI4 CNSTP4 0 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 3334 ;3334: } else if (Q_stricmp(name, "JoinServer") == 0) { ADDRGP4 $2580 JUMPV LABELV $2579 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2586 ARGP4 ADDRLP4 1144 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1144 INDIRI4 CNSTI4 0 NEI4 $2584 line 3335 ;3335: trap_Cvar_Set("cg_thirdPerson", "0"); ADDRGP4 $396 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3336 ;3336: trap_Cvar_Set("cg_cameraOrbit", "0"); ADDRGP4 $394 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3337 ;3337: trap_Cvar_Set("ui_singlePlayerActive", "0"); ADDRGP4 $2240 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3338 ;3338: if (uiInfo.serverStatus.currentServer >= 0 && uiInfo.serverStatus.currentServer < uiInfo.serverStatus.numDisplayServers) { ADDRGP4 uiInfo+99264+2216 INDIRI4 CNSTI4 0 LTI4 $2585 ADDRGP4 uiInfo+99264+2216 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 GEI4 $2585 line 3339 ;3339: trap_LAN_GetServerAddressString(ui_netSource.integer, uiInfo.serverStatus.displayServers[uiInfo.serverStatus.currentServer], buff, 1024); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+2216 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_LAN_GetServerAddressString CALLV pop line 3340 ;3340: trap_Cmd_ExecuteText( EXEC_APPEND, va( "connect %s\n", buff ) ); ADDRGP4 $2600 ARGP4 ADDRLP4 0 ARGP4 ADDRLP4 1148 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1148 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3341 ;3341: } line 3342 ;3342: } else if (Q_stricmp(name, "FoundPlayerJoinServer") == 0) { ADDRGP4 $2585 JUMPV LABELV $2584 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2603 ARGP4 ADDRLP4 1148 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1148 INDIRI4 CNSTI4 0 NEI4 $2601 line 3343 ;3343: trap_Cvar_Set("ui_singlePlayerActive", "0"); ADDRGP4 $2240 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3344 ;3344: if (uiInfo.currentFoundPlayerServer >= 0 && uiInfo.currentFoundPlayerServer < uiInfo.numFoundPlayerServers) { ADDRGP4 uiInfo+119464 INDIRI4 CNSTI4 0 LTI4 $2602 ADDRGP4 uiInfo+119464 INDIRI4 ADDRGP4 uiInfo+119468 INDIRI4 GEI4 $2602 line 3345 ;3345: trap_Cmd_ExecuteText( EXEC_APPEND, va( "connect %s\n", uiInfo.foundPlayerServerAddresses[uiInfo.currentFoundPlayerServer] ) ); ADDRGP4 $2600 ARGP4 ADDRGP4 uiInfo+119464 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+117416 ADDP4 ARGP4 ADDRLP4 1152 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1152 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3346 ;3346: } line 3347 ;3347: } else if (Q_stricmp(name, "Quit") == 0) { ADDRGP4 $2602 JUMPV LABELV $2601 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2613 ARGP4 ADDRLP4 1152 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1152 INDIRI4 CNSTI4 0 NEI4 $2611 line 3348 ;3348: trap_Cvar_Set("ui_singlePlayerActive", "0"); ADDRGP4 $2240 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3349 ;3349: trap_Cmd_ExecuteText( EXEC_NOW, "quit"); CNSTI4 0 ARGI4 ADDRGP4 $2614 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3350 ;3350: } else if (Q_stricmp(name, "Controls") == 0) { ADDRGP4 $2612 JUMPV LABELV $2611 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2617 ARGP4 ADDRLP4 1156 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1156 INDIRI4 CNSTI4 0 NEI4 $2615 line 3351 ;3351: trap_Cvar_Set( "cl_paused", "1" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3352 ;3352: trap_Key_SetCatcher( KEYCATCH_UI ); CNSTI4 2 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 3353 ;3353: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 3354 ;3354: Menus_ActivateByName("setup_menu2"); ADDRGP4 $2619 ARGP4 ADDRGP4 Menus_ActivateByName CALLP4 pop line 3355 ;3355: } else if (Q_stricmp(name, "Leave") == 0) { ADDRGP4 $2616 JUMPV LABELV $2615 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2622 ARGP4 ADDRLP4 1160 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1160 INDIRI4 CNSTI4 0 NEI4 $2620 line 3356 ;3356: trap_Cmd_ExecuteText( EXEC_APPEND, "disconnect\n" ); CNSTI4 2 ARGI4 ADDRGP4 $2623 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3357 ;3357: trap_Key_SetCatcher( KEYCATCH_UI ); CNSTI4 2 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 3358 ;3358: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 3359 ;3359: Menus_ActivateByName("main"); ADDRGP4 $2548 ARGP4 ADDRGP4 Menus_ActivateByName CALLP4 pop line 3360 ;3360: } else if (Q_stricmp(name, "ServerSort") == 0) { ADDRGP4 $2621 JUMPV LABELV $2620 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2626 ARGP4 ADDRLP4 1164 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1164 INDIRI4 CNSTI4 0 NEI4 $2624 line 3362 ;3361: int sortColumn; ;3362: if (Int_Parse(args, &sortColumn)) { ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1168 ARGP4 ADDRLP4 1172 ADDRGP4 Int_Parse CALLI4 ASGNI4 ADDRLP4 1172 INDIRI4 CNSTI4 0 EQI4 $2625 line 3364 ;3363: // if same column we're already sorting on then flip the direction ;3364: if (sortColumn == uiInfo.serverStatus.sortKey) { ADDRLP4 1168 INDIRI4 ADDRGP4 uiInfo+99264+2200 INDIRI4 NEI4 $2629 line 3365 ;3365: uiInfo.serverStatus.sortDir = !uiInfo.serverStatus.sortDir; ADDRGP4 uiInfo+99264+2204 INDIRI4 CNSTI4 0 NEI4 $2638 ADDRLP4 1176 CNSTI4 1 ASGNI4 ADDRGP4 $2639 JUMPV LABELV $2638 ADDRLP4 1176 CNSTI4 0 ASGNI4 LABELV $2639 ADDRGP4 uiInfo+99264+2204 ADDRLP4 1176 INDIRI4 ASGNI4 line 3366 ;3366: } LABELV $2629 line 3368 ;3367: // make sure we sort again ;3368: UI_ServersSort(sortColumn, qtrue); ADDRLP4 1168 INDIRI4 ARGI4 CNSTI4 1 ARGI4 ADDRGP4 UI_ServersSort CALLV pop line 3369 ;3369: } line 3370 ;3370: } else if (Q_stricmp(name, "nextSkirmish") == 0) { ADDRGP4 $2625 JUMPV LABELV $2624 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2642 ARGP4 ADDRLP4 1168 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1168 INDIRI4 CNSTI4 0 NEI4 $2640 line 3371 ;3371: UI_StartSkirmish(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_StartSkirmish CALLV pop line 3372 ;3372: } else if (Q_stricmp(name, "SkirmishStart") == 0) { ADDRGP4 $2641 JUMPV LABELV $2640 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2645 ARGP4 ADDRLP4 1172 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1172 INDIRI4 CNSTI4 0 NEI4 $2643 line 3373 ;3373: UI_StartSkirmish(qfalse); CNSTI4 0 ARGI4 ADDRGP4 UI_StartSkirmish CALLV pop line 3374 ;3374: } else if (Q_stricmp(name, "closeingame") == 0) { ADDRGP4 $2644 JUMPV LABELV $2643 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2648 ARGP4 ADDRLP4 1176 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1176 INDIRI4 CNSTI4 0 NEI4 $2646 line 3375 ;3375: trap_Key_SetCatcher( trap_Key_GetCatcher() & ~KEYCATCH_UI ); ADDRLP4 1180 ADDRGP4 trap_Key_GetCatcher CALLI4 ASGNI4 ADDRLP4 1180 INDIRI4 CNSTI4 -3 BANDI4 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 3376 ;3376: trap_Key_ClearStates(); ADDRGP4 trap_Key_ClearStates CALLV pop line 3377 ;3377: trap_Cvar_Set( "cl_paused", "0" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3378 ;3378: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 3379 ;3379: } else if (Q_stricmp(name, "voteMap") == 0) { ADDRGP4 $2647 JUMPV LABELV $2646 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2651 ARGP4 ADDRLP4 1180 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1180 INDIRI4 CNSTI4 0 NEI4 $2649 line 3380 ;3380: if (ui_currentNetMap.integer >=0 && ui_currentNetMap.integer < uiInfo.mapCount) { ADDRGP4 ui_currentNetMap+12 INDIRI4 CNSTI4 0 LTI4 $2650 ADDRGP4 ui_currentNetMap+12 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 GEI4 $2650 line 3381 ;3381: trap_Cmd_ExecuteText( EXEC_APPEND, va("callvote map %s\n",uiInfo.mapList[ui_currentNetMap.integer].mapLoadName) ); ADDRGP4 $2657 ARGP4 CNSTI4 100 ADDRGP4 ui_currentNetMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 1184 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1184 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3382 ;3382: } line 3383 ;3383: } else if (Q_stricmp(name, "voteKick") == 0) { ADDRGP4 $2650 JUMPV LABELV $2649 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2663 ARGP4 ADDRLP4 1184 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1184 INDIRI4 CNSTI4 0 NEI4 $2661 line 3384 ;3384: if (uiInfo.playerIndex >= 0 && uiInfo.playerIndex < uiInfo.playerCount) { ADDRGP4 uiInfo+78860 INDIRI4 CNSTI4 0 LTI4 $2662 ADDRGP4 uiInfo+78860 INDIRI4 ADDRGP4 uiInfo+78844 INDIRI4 GEI4 $2662 line 3385 ;3385: trap_Cmd_ExecuteText( EXEC_APPEND, va("callvote kick %s\n",uiInfo.playerNames[uiInfo.playerIndex]) ); ADDRGP4 $2669 ARGP4 ADDRGP4 uiInfo+78860 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+78872 ADDP4 ARGP4 ADDRLP4 1188 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1188 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3386 ;3386: } line 3387 ;3387: } else if (Q_stricmp(name, "voteGame") == 0) { ADDRGP4 $2662 JUMPV LABELV $2661 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2674 ARGP4 ADDRLP4 1188 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1188 INDIRI4 CNSTI4 0 NEI4 $2672 line 3388 ;3388: if (ui_netGameType.integer >= 0 && ui_netGameType.integer < uiInfo.numGameTypes) { ADDRGP4 ui_netGameType+12 INDIRI4 CNSTI4 0 LTI4 $2673 ADDRGP4 ui_netGameType+12 INDIRI4 ADDRGP4 uiInfo+78576 INDIRI4 GEI4 $2673 line 3389 ;3389: trap_Cmd_ExecuteText( EXEC_APPEND, va("callvote g_gametype %i\n",uiInfo.gameTypes[ui_netGameType.integer].gtEnum) ); ADDRGP4 $2680 ARGP4 ADDRGP4 ui_netGameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ARGI4 ADDRLP4 1192 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1192 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3390 ;3390: } line 3391 ;3391: } else if (Q_stricmp(name, "voteLeader") == 0) { ADDRGP4 $2673 JUMPV LABELV $2672 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2686 ARGP4 ADDRLP4 1192 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1192 INDIRI4 CNSTI4 0 NEI4 $2684 line 3392 ;3392: if (uiInfo.teamIndex >= 0 && uiInfo.teamIndex < uiInfo.myTeamCount) { ADDRGP4 uiInfo+78852 INDIRI4 CNSTI4 0 LTI4 $2685 ADDRGP4 uiInfo+78852 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 GEI4 $2685 line 3393 ;3393: trap_Cmd_ExecuteText( EXEC_APPEND, va("callteamvote leader %s\n",uiInfo.teamNames[uiInfo.teamIndex]) ); ADDRGP4 $2692 ARGP4 ADDRGP4 uiInfo+78852 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+80920 ADDP4 ARGP4 ADDRLP4 1196 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1196 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3394 ;3394: } line 3395 ;3395: } else if (Q_stricmp(name, "addBot") == 0) { ADDRGP4 $2685 JUMPV LABELV $2684 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2697 ARGP4 ADDRLP4 1196 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1196 INDIRI4 CNSTI4 0 NEI4 $2695 line 3396 ;3396: if (trap_Cvar_VariableValue("g_gametype") >= GT_TEAM) { ADDRGP4 $1362 ARGP4 ADDRLP4 1200 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1200 INDIRF4 CNSTF4 1077936128 LTF4 $2698 line 3397 ;3397: trap_Cmd_ExecuteText( EXEC_APPEND, va("addbot %s %i %s\n", uiInfo.characterList[uiInfo.botIndex].name, uiInfo.skillIndex+1, (uiInfo.redBlue == 0) ? "Red" : "Blue") ); ADDRGP4 $2700 ARGP4 CNSTI4 24 ADDRGP4 uiInfo+73444 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 ARGP4 ADDRGP4 uiInfo+96672 INDIRI4 CNSTI4 1 ADDI4 ARGI4 ADDRGP4 uiInfo+78840 INDIRI4 CNSTI4 0 NEI4 $2706 ADDRLP4 1204 ADDRGP4 $843 ASGNP4 ADDRGP4 $2707 JUMPV LABELV $2706 ADDRLP4 1204 ADDRGP4 $842 ASGNP4 LABELV $2707 ADDRLP4 1204 INDIRP4 ARGP4 ADDRLP4 1208 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1208 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3398 ;3398: } else { ADDRGP4 $2696 JUMPV LABELV $2698 line 3399 ;3399: trap_Cmd_ExecuteText( EXEC_APPEND, va("addbot %s %i %s\n", UI_GetBotNameByNumber(uiInfo.botIndex), uiInfo.skillIndex+1, (uiInfo.redBlue == 0) ? "Red" : "Blue") ); ADDRGP4 uiInfo+73444 INDIRI4 ARGI4 ADDRLP4 1208 ADDRGP4 UI_GetBotNameByNumber CALLP4 ASGNP4 ADDRGP4 $2700 ARGP4 ADDRLP4 1208 INDIRP4 ARGP4 ADDRGP4 uiInfo+96672 INDIRI4 CNSTI4 1 ADDI4 ARGI4 ADDRGP4 uiInfo+78840 INDIRI4 CNSTI4 0 NEI4 $2712 ADDRLP4 1204 ADDRGP4 $843 ASGNP4 ADDRGP4 $2713 JUMPV LABELV $2712 ADDRLP4 1204 ADDRGP4 $842 ASGNP4 LABELV $2713 ADDRLP4 1204 INDIRP4 ARGP4 ADDRLP4 1212 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1212 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3400 ;3400: } line 3401 ;3401: } else if (Q_stricmp(name, "addFavorite") == 0) { ADDRGP4 $2696 JUMPV LABELV $2695 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2716 ARGP4 ADDRLP4 1200 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1200 INDIRI4 CNSTI4 0 NEI4 $2714 line 3402 ;3402: if (ui_netSource.integer != AS_FAVORITES) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 3 EQI4 $2715 line 3407 ;3403: char name[MAX_NAME_LENGTH]; ;3404: char addr[MAX_NAME_LENGTH]; ;3405: int res; ;3406: ;3407: trap_LAN_GetServerInfo(ui_netSource.integer, uiInfo.serverStatus.displayServers[uiInfo.serverStatus.currentServer], buff, MAX_STRING_CHARS); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+2216 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_LAN_GetServerInfo CALLV pop line 3408 ;3408: name[0] = addr[0] = '\0'; ADDRLP4 1272 CNSTI1 0 ASGNI1 ADDRLP4 1204 ADDRLP4 1272 INDIRI1 ASGNI1 ADDRLP4 1236 ADDRLP4 1272 INDIRI1 ASGNI1 line 3409 ;3409: Q_strncpyz(name, Info_ValueForKey(buff, "hostname"), MAX_NAME_LENGTH); ADDRLP4 0 ARGP4 ADDRGP4 $2725 ARGP4 ADDRLP4 1276 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 1236 ARGP4 ADDRLP4 1276 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3410 ;3410: Q_strncpyz(addr, Info_ValueForKey(buff, "addr"), MAX_NAME_LENGTH); ADDRLP4 0 ARGP4 ADDRGP4 $2726 ARGP4 ADDRLP4 1280 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 1204 ARGP4 ADDRLP4 1280 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3411 ;3411: if (strlen(name) > 0 && strlen(addr) > 0) { ADDRLP4 1236 ARGP4 ADDRLP4 1284 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 1284 INDIRI4 CNSTI4 0 LEI4 $2715 ADDRLP4 1204 ARGP4 ADDRLP4 1288 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 1288 INDIRI4 CNSTI4 0 LEI4 $2715 line 3412 ;3412: res = trap_LAN_AddServer(AS_FAVORITES, name, addr); CNSTI4 3 ARGI4 ADDRLP4 1236 ARGP4 ADDRLP4 1204 ARGP4 ADDRLP4 1292 ADDRGP4 trap_LAN_AddServer CALLI4 ASGNI4 ADDRLP4 1268 ADDRLP4 1292 INDIRI4 ASGNI4 line 3413 ;3413: if (res == 0) { ADDRLP4 1268 INDIRI4 CNSTI4 0 NEI4 $2729 line 3415 ;3414: // server already in the list ;3415: Com_Printf("Favorite already in list\n"); ADDRGP4 $2731 ARGP4 ADDRGP4 Com_Printf CALLV pop line 3416 ;3416: } ADDRGP4 $2715 JUMPV LABELV $2729 line 3417 ;3417: else if (res == -1) { ADDRLP4 1268 INDIRI4 CNSTI4 -1 NEI4 $2732 line 3419 ;3418: // list full ;3419: Com_Printf("Favorite list full\n"); ADDRGP4 $2734 ARGP4 ADDRGP4 Com_Printf CALLV pop line 3420 ;3420: } ADDRGP4 $2715 JUMPV LABELV $2732 line 3421 ;3421: else { line 3423 ;3422: // successfully added ;3423: Com_Printf("Added favorite server %s\n", addr); ADDRGP4 $2735 ARGP4 ADDRLP4 1204 ARGP4 ADDRGP4 Com_Printf CALLV pop line 3424 ;3424: } line 3425 ;3425: } line 3426 ;3426: } line 3427 ;3427: } else if (Q_stricmp(name, "deleteFavorite") == 0) { ADDRGP4 $2715 JUMPV LABELV $2714 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2738 ARGP4 ADDRLP4 1204 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1204 INDIRI4 CNSTI4 0 NEI4 $2736 line 3428 ;3428: if (ui_netSource.integer == AS_FAVORITES) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 3 NEI4 $2737 line 3430 ;3429: char addr[MAX_NAME_LENGTH]; ;3430: trap_LAN_GetServerInfo(ui_netSource.integer, uiInfo.serverStatus.displayServers[uiInfo.serverStatus.currentServer], buff, MAX_STRING_CHARS); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+2216 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_LAN_GetServerInfo CALLV pop line 3431 ;3431: addr[0] = '\0'; ADDRLP4 1208 CNSTI1 0 ASGNI1 line 3432 ;3432: Q_strncpyz(addr, Info_ValueForKey(buff, "addr"), MAX_NAME_LENGTH); ADDRLP4 0 ARGP4 ADDRGP4 $2726 ARGP4 ADDRLP4 1240 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 1208 ARGP4 ADDRLP4 1240 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3433 ;3433: if (strlen(addr) > 0) { ADDRLP4 1208 ARGP4 ADDRLP4 1244 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 1244 INDIRI4 CNSTI4 0 LEI4 $2737 line 3434 ;3434: trap_LAN_RemoveServer(AS_FAVORITES, addr); CNSTI4 3 ARGI4 ADDRLP4 1208 ARGP4 ADDRGP4 trap_LAN_RemoveServer CALLV pop line 3435 ;3435: } line 3436 ;3436: } line 3437 ;3437: } else if (Q_stricmp(name, "createFavorite") == 0) { ADDRGP4 $2737 JUMPV LABELV $2736 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2751 ARGP4 ADDRLP4 1208 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1208 INDIRI4 CNSTI4 0 NEI4 $2749 line 3438 ;3438: if (ui_netSource.integer == AS_FAVORITES) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 3 NEI4 $2750 line 3443 ;3439: char name[MAX_NAME_LENGTH]; ;3440: char addr[MAX_NAME_LENGTH]; ;3441: int res; ;3442: ;3443: name[0] = addr[0] = '\0'; ADDRLP4 1280 CNSTI1 0 ASGNI1 ADDRLP4 1212 ADDRLP4 1280 INDIRI1 ASGNI1 ADDRLP4 1244 ADDRLP4 1280 INDIRI1 ASGNI1 line 3444 ;3444: Q_strncpyz(name, UI_Cvar_VariableString("ui_favoriteName"), MAX_NAME_LENGTH); ADDRGP4 $2755 ARGP4 ADDRLP4 1284 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 1244 ARGP4 ADDRLP4 1284 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3445 ;3445: Q_strncpyz(addr, UI_Cvar_VariableString("ui_favoriteAddress"), MAX_NAME_LENGTH); ADDRGP4 $2756 ARGP4 ADDRLP4 1288 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 1212 ARGP4 ADDRLP4 1288 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3446 ;3446: if (strlen(name) > 0 && strlen(addr) > 0) { ADDRLP4 1244 ARGP4 ADDRLP4 1292 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 1292 INDIRI4 CNSTI4 0 LEI4 $2750 ADDRLP4 1212 ARGP4 ADDRLP4 1296 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 1296 INDIRI4 CNSTI4 0 LEI4 $2750 line 3447 ;3447: res = trap_LAN_AddServer(AS_FAVORITES, name, addr); CNSTI4 3 ARGI4 ADDRLP4 1244 ARGP4 ADDRLP4 1212 ARGP4 ADDRLP4 1300 ADDRGP4 trap_LAN_AddServer CALLI4 ASGNI4 ADDRLP4 1276 ADDRLP4 1300 INDIRI4 ASGNI4 line 3448 ;3448: if (res == 0) { ADDRLP4 1276 INDIRI4 CNSTI4 0 NEI4 $2759 line 3450 ;3449: // server already in the list ;3450: Com_Printf("Favorite already in list\n"); ADDRGP4 $2731 ARGP4 ADDRGP4 Com_Printf CALLV pop line 3451 ;3451: } ADDRGP4 $2750 JUMPV LABELV $2759 line 3452 ;3452: else if (res == -1) { ADDRLP4 1276 INDIRI4 CNSTI4 -1 NEI4 $2761 line 3454 ;3453: // list full ;3454: Com_Printf("Favorite list full\n"); ADDRGP4 $2734 ARGP4 ADDRGP4 Com_Printf CALLV pop line 3455 ;3455: } ADDRGP4 $2750 JUMPV LABELV $2761 line 3456 ;3456: else { line 3458 ;3457: // successfully added ;3458: Com_Printf("Added favorite server %s\n", addr); ADDRGP4 $2735 ARGP4 ADDRLP4 1212 ARGP4 ADDRGP4 Com_Printf CALLV pop line 3459 ;3459: } line 3460 ;3460: } line 3461 ;3461: } line 3462 ;3462: } else if (Q_stricmp(name, "orders") == 0) { ADDRGP4 $2750 JUMPV LABELV $2749 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2765 ARGP4 ADDRLP4 1212 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1212 INDIRI4 CNSTI4 0 NEI4 $2763 line 3464 ;3463: const char *orders; ;3464: if (String_Parse(args, &orders)) { ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1216 ARGP4 ADDRLP4 1220 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 1220 INDIRI4 CNSTI4 0 EQI4 $2764 line 3465 ;3465: int selectedPlayer = trap_Cvar_VariableValue("cg_selectedPlayer"); ADDRGP4 $1430 ARGP4 ADDRLP4 1228 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1224 ADDRLP4 1228 INDIRF4 CVFI4 4 ASGNI4 line 3466 ;3466: if (selectedPlayer < uiInfo.myTeamCount) { ADDRLP4 1224 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 GEI4 $2768 line 3467 ;3467: strcpy(buff, orders); ADDRLP4 0 ARGP4 ADDRLP4 1216 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 3468 ;3468: trap_Cmd_ExecuteText( EXEC_APPEND, va(buff, uiInfo.teamClientNums[selectedPlayer]) ); ADDRLP4 0 ARGP4 ADDRLP4 1224 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+82968 ADDP4 INDIRI4 ARGI4 ADDRLP4 1232 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1232 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3469 ;3469: trap_Cmd_ExecuteText( EXEC_APPEND, "\n" ); CNSTI4 2 ARGI4 ADDRGP4 $2772 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3470 ;3470: } else { ADDRGP4 $2769 JUMPV LABELV $2768 line 3472 ;3471: int i; ;3472: for (i = 0; i < uiInfo.myTeamCount; i++) { ADDRLP4 1232 CNSTI4 0 ASGNI4 ADDRGP4 $2776 JUMPV LABELV $2773 line 3473 ;3473: if (Q_stricmp(UI_Cvar_VariableString("name"), uiInfo.teamNames[i]) == 0) { ADDRGP4 $1448 ARGP4 ADDRLP4 1236 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 1236 INDIRP4 ARGP4 ADDRLP4 1232 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+80920 ADDP4 ARGP4 ADDRLP4 1240 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1240 INDIRI4 CNSTI4 0 NEI4 $2778 line 3474 ;3474: continue; ADDRGP4 $2774 JUMPV LABELV $2778 line 3476 ;3475: } ;3476: strcpy(buff, orders); ADDRLP4 0 ARGP4 ADDRLP4 1216 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 3477 ;3477: trap_Cmd_ExecuteText( EXEC_APPEND, va(buff, uiInfo.teamNames[i]) ); ADDRLP4 0 ARGP4 ADDRLP4 1232 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+80920 ADDP4 ARGP4 ADDRLP4 1244 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1244 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3478 ;3478: trap_Cmd_ExecuteText( EXEC_APPEND, "\n" ); CNSTI4 2 ARGI4 ADDRGP4 $2772 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3479 ;3479: } LABELV $2774 line 3472 ADDRLP4 1232 ADDRLP4 1232 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2776 ADDRLP4 1232 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 LTI4 $2773 line 3480 ;3480: } LABELV $2769 line 3481 ;3481: trap_Key_SetCatcher( trap_Key_GetCatcher() & ~KEYCATCH_UI ); ADDRLP4 1232 ADDRGP4 trap_Key_GetCatcher CALLI4 ASGNI4 ADDRLP4 1232 INDIRI4 CNSTI4 -3 BANDI4 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 3482 ;3482: trap_Key_ClearStates(); ADDRGP4 trap_Key_ClearStates CALLV pop line 3483 ;3483: trap_Cvar_Set( "cl_paused", "0" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3484 ;3484: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 3485 ;3485: } line 3486 ;3486: } else if (Q_stricmp(name, "voiceOrdersTeam") == 0) { ADDRGP4 $2764 JUMPV LABELV $2763 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2784 ARGP4 ADDRLP4 1216 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1216 INDIRI4 CNSTI4 0 NEI4 $2782 line 3488 ;3487: const char *orders; ;3488: if (String_Parse(args, &orders)) { ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1220 ARGP4 ADDRLP4 1224 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 1224 INDIRI4 CNSTI4 0 EQI4 $2783 line 3489 ;3489: int selectedPlayer = trap_Cvar_VariableValue("cg_selectedPlayer"); ADDRGP4 $1430 ARGP4 ADDRLP4 1232 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1228 ADDRLP4 1232 INDIRF4 CVFI4 4 ASGNI4 line 3490 ;3490: if (selectedPlayer == uiInfo.myTeamCount) { ADDRLP4 1228 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 NEI4 $2787 line 3491 ;3491: trap_Cmd_ExecuteText( EXEC_APPEND, orders ); CNSTI4 2 ARGI4 ADDRLP4 1220 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3492 ;3492: trap_Cmd_ExecuteText( EXEC_APPEND, "\n" ); CNSTI4 2 ARGI4 ADDRGP4 $2772 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3493 ;3493: } LABELV $2787 line 3494 ;3494: trap_Key_SetCatcher( trap_Key_GetCatcher() & ~KEYCATCH_UI ); ADDRLP4 1236 ADDRGP4 trap_Key_GetCatcher CALLI4 ASGNI4 ADDRLP4 1236 INDIRI4 CNSTI4 -3 BANDI4 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 3495 ;3495: trap_Key_ClearStates(); ADDRGP4 trap_Key_ClearStates CALLV pop line 3496 ;3496: trap_Cvar_Set( "cl_paused", "0" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3497 ;3497: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 3498 ;3498: } line 3499 ;3499: } else if (Q_stricmp(name, "voiceOrders") == 0) { ADDRGP4 $2783 JUMPV LABELV $2782 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2792 ARGP4 ADDRLP4 1220 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1220 INDIRI4 CNSTI4 0 NEI4 $2790 line 3501 ;3500: const char *orders; ;3501: if (String_Parse(args, &orders)) { ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1224 ARGP4 ADDRLP4 1228 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 1228 INDIRI4 CNSTI4 0 EQI4 $2791 line 3502 ;3502: int selectedPlayer = trap_Cvar_VariableValue("cg_selectedPlayer"); ADDRGP4 $1430 ARGP4 ADDRLP4 1236 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 1232 ADDRLP4 1236 INDIRF4 CVFI4 4 ASGNI4 line 3503 ;3503: if (selectedPlayer < uiInfo.myTeamCount) { ADDRLP4 1232 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 GEI4 $2795 line 3504 ;3504: strcpy(buff, orders); ADDRLP4 0 ARGP4 ADDRLP4 1224 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 3505 ;3505: trap_Cmd_ExecuteText( EXEC_APPEND, va(buff, uiInfo.teamClientNums[selectedPlayer]) ); ADDRLP4 0 ARGP4 ADDRLP4 1232 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+82968 ADDP4 INDIRI4 ARGI4 ADDRLP4 1240 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 2 ARGI4 ADDRLP4 1240 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3506 ;3506: trap_Cmd_ExecuteText( EXEC_APPEND, "\n" ); CNSTI4 2 ARGI4 ADDRGP4 $2772 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 3507 ;3507: } LABELV $2795 line 3508 ;3508: trap_Key_SetCatcher( trap_Key_GetCatcher() & ~KEYCATCH_UI ); ADDRLP4 1240 ADDRGP4 trap_Key_GetCatcher CALLI4 ASGNI4 ADDRLP4 1240 INDIRI4 CNSTI4 -3 BANDI4 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 3509 ;3509: trap_Key_ClearStates(); ADDRGP4 trap_Key_ClearStates CALLV pop line 3510 ;3510: trap_Cvar_Set( "cl_paused", "0" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3511 ;3511: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 3512 ;3512: } line 3513 ;3513: } else if (Q_stricmp(name, "glCustom") == 0) { ADDRGP4 $2791 JUMPV LABELV $2790 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2801 ARGP4 ADDRLP4 1224 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1224 INDIRI4 CNSTI4 0 NEI4 $2799 line 3514 ;3514: trap_Cvar_Set("ui_glCustom", "4"); ADDRGP4 $2348 ARGP4 ADDRGP4 $2802 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 3515 ;3515: } else if (Q_stricmp(name, "update") == 0) { ADDRGP4 $2800 JUMPV LABELV $2799 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 $2805 ARGP4 ADDRLP4 1228 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1228 INDIRI4 CNSTI4 0 NEI4 $2803 line 3516 ;3516: if (String_Parse(args, &name2)) { ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 1028 ARGP4 ADDRLP4 1232 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 1232 INDIRI4 CNSTI4 0 EQI4 $2806 line 3517 ;3517: UI_Update(name2); ADDRLP4 1028 INDIRP4 ARGP4 ADDRGP4 UI_Update CALLV pop line 3518 ;3518: } ADDRGP4 $2807 JUMPV LABELV $2806 line 3519 ;3519: else { line 3520 ;3520: Com_Printf("unknown UI script %s\n", name); ADDRGP4 $2808 ARGP4 ADDRLP4 1024 INDIRP4 ARGP4 ADDRGP4 Com_Printf CALLV pop line 3521 ;3521: } LABELV $2807 line 3522 ;3522: } LABELV $2803 LABELV $2800 LABELV $2791 LABELV $2783 LABELV $2764 LABELV $2750 LABELV $2737 LABELV $2715 LABELV $2696 LABELV $2685 LABELV $2673 LABELV $2662 LABELV $2650 LABELV $2647 LABELV $2644 LABELV $2641 LABELV $2625 LABELV $2621 LABELV $2616 LABELV $2612 LABELV $2602 LABELV $2585 LABELV $2580 LABELV $2573 LABELV $2563 LABELV $2557 LABELV $2550 LABELV $2537 LABELV $2534 LABELV $2528 LABELV $2521 LABELV $2511 LABELV $2508 LABELV $2505 LABELV $2502 LABELV $2489 LABELV $2486 LABELV $2483 LABELV $2480 LABELV $2471 LABELV $2467 LABELV $2464 LABELV $2461 LABELV $2457 LABELV $2447 LABELV $2435 LABELV $2428 LABELV $2421 LABELV $2378 line 3523 ;3523: } LABELV $2375 line 3524 ;3524:} LABELV $2374 endproc UI_RunMenuScript 1304 24 proc UI_GetTeamColor 0 0 line 3526 ;3525: ;3526:static void UI_GetTeamColor(vec4_t *color) { line 3527 ;3527:} LABELV $2809 endproc UI_GetTeamColor 0 0 proc UI_MapCountByGameType 16 0 line 3534 ;3528: ;3529:/* ;3530:================== ;3531:UI_MapCountByGameType ;3532:================== ;3533:*/ ;3534:static int UI_MapCountByGameType(qboolean singlePlayer) { line 3536 ;3535: int i, c, game; ;3536: c = 0; ADDRLP4 8 CNSTI4 0 ASGNI4 line 3537 ;3537: game = singlePlayer ? uiInfo.gameTypes[ui_gameType.integer].gtEnum : uiInfo.gameTypes[ui_netGameType.integer].gtEnum; ADDRFP4 0 INDIRI4 CNSTI4 0 EQI4 $2818 ADDRLP4 12 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ASGNI4 ADDRGP4 $2819 JUMPV LABELV $2818 ADDRLP4 12 ADDRGP4 ui_netGameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ASGNI4 LABELV $2819 ADDRLP4 4 ADDRLP4 12 INDIRI4 ASGNI4 line 3538 ;3538: if (game == GT_SINGLE_PLAYER) { ADDRLP4 4 INDIRI4 CNSTI4 2 NEI4 $2820 line 3539 ;3539: game++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3540 ;3540: } LABELV $2820 line 3541 ;3541: if (game == GT_TEAM) { ADDRLP4 4 INDIRI4 CNSTI4 3 NEI4 $2822 line 3542 ;3542: game = GT_FFA; ADDRLP4 4 CNSTI4 0 ASGNI4 line 3543 ;3543: } LABELV $2822 line 3545 ;3544: ;3545: for (i = 0; i < uiInfo.mapCount; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $2827 JUMPV LABELV $2824 line 3546 ;3546: uiInfo.mapList[i].active = qfalse; CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+96 ADDP4 CNSTI4 0 ASGNI4 line 3547 ;3547: if ( uiInfo.mapList[i].typeBits & (1 << game)) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+20 ADDP4 INDIRI4 CNSTI4 1 ADDRLP4 4 INDIRI4 LSHI4 BANDI4 CNSTI4 0 EQI4 $2831 line 3548 ;3548: if (singlePlayer) { ADDRFP4 0 INDIRI4 CNSTI4 0 EQI4 $2835 line 3549 ;3549: if (!(uiInfo.mapList[i].typeBits & (1 << GT_SINGLE_PLAYER))) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+20 ADDP4 INDIRI4 CNSTI4 4 BANDI4 CNSTI4 0 NEI4 $2837 line 3550 ;3550: continue; ADDRGP4 $2825 JUMPV LABELV $2837 line 3552 ;3551: } ;3552: } LABELV $2835 line 3553 ;3553: c++; ADDRLP4 8 ADDRLP4 8 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3554 ;3554: uiInfo.mapList[i].active = qtrue; CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+96 ADDP4 CNSTI4 1 ASGNI4 line 3555 ;3555: } LABELV $2831 line 3556 ;3556: } LABELV $2825 line 3545 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2827 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LTI4 $2824 line 3557 ;3557: return c; ADDRLP4 8 INDIRI4 RETI4 LABELV $2810 endproc UI_MapCountByGameType 16 0 export UI_hasSkinForBase proc UI_hasSkinForBase 1032 20 line 3560 ;3558:} ;3559: ;3560:qboolean UI_hasSkinForBase(const char *base, const char *team) { line 3563 ;3561: char test[1024]; ;3562: ;3563: Com_sprintf( test, sizeof( test ), "models/players/%s/%s/lower_default.skin", base, team ); ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2844 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 3565 ;3564: ;3565: if (trap_FS_FOpenFile(test, 0, FS_READ)) { ADDRLP4 0 ARGP4 CNSTP4 0 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 1024 ADDRGP4 trap_FS_FOpenFile CALLI4 ASGNI4 ADDRLP4 1024 INDIRI4 CNSTI4 0 EQI4 $2845 line 3566 ;3566: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $2843 JUMPV LABELV $2845 line 3568 ;3567: } ;3568: Com_sprintf( test, sizeof( test ), "models/players/characters/%s/%s/lower_default.skin", base, team ); ADDRLP4 0 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $2847 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 3570 ;3569: ;3570: if (trap_FS_FOpenFile(test, 0, FS_READ)) { ADDRLP4 0 ARGP4 CNSTP4 0 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 1028 ADDRGP4 trap_FS_FOpenFile CALLI4 ASGNI4 ADDRLP4 1028 INDIRI4 CNSTI4 0 EQI4 $2848 line 3571 ;3571: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $2843 JUMPV LABELV $2848 line 3573 ;3572: } ;3573: return qfalse; CNSTI4 0 RETI4 LABELV $2843 endproc UI_hasSkinForBase 1032 20 data align 4 LABELV $2851 byte 4 0 code proc UI_HeadCountByTeam 40 8 line 3581 ;3574:} ;3575: ;3576:/* ;3577:================== ;3578:UI_MapCountByTeam ;3579:================== ;3580:*/ ;3581:static int UI_HeadCountByTeam() { line 3585 ;3582: static int init = 0; ;3583: int i, j, k, c, tIndex; ;3584: ;3585: c = 0; ADDRLP4 16 CNSTI4 0 ASGNI4 line 3586 ;3586: if (!init) { ADDRGP4 $2851 INDIRI4 CNSTI4 0 NEI4 $2852 line 3587 ;3587: for (i = 0; i < uiInfo.characterCount; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $2857 JUMPV LABELV $2854 line 3588 ;3588: uiInfo.characterList[i].reference = 0; CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+20 ADDP4 CNSTI4 0 ASGNI4 line 3589 ;3589: for (j = 0; j < uiInfo.teamCount; j++) { ADDRLP4 8 CNSTI4 0 ASGNI4 ADDRGP4 $2864 JUMPV LABELV $2861 line 3590 ;3590: if (UI_hasSkinForBase(uiInfo.characterList[i].base, uiInfo.teamList[j].teamName)) { CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+12 ADDP4 INDIRP4 ARGP4 CNSTI4 44 ADDRLP4 8 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRLP4 20 ADDRGP4 UI_hasSkinForBase CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 CNSTI4 0 EQI4 $2866 line 3591 ;3591: uiInfo.characterList[i].reference |= (1< uiInfo.serverStatus.numDisplayServers ) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $2936 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 LEI4 $2932 LABELV $2936 line 3644 ;3644: return; ADDRGP4 $2931 JUMPV LABELV $2932 line 3647 ;3645: } ;3646: // ;3647: uiInfo.serverStatus.numDisplayServers++; ADDRLP4 8 ADDRGP4 uiInfo+99264+10412 ASGNP4 ADDRLP4 8 INDIRP4 ADDRLP4 8 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3648 ;3648: for (i = uiInfo.serverStatus.numDisplayServers; i > position; i--) { ADDRLP4 0 ADDRGP4 uiInfo+99264+10412 INDIRI4 ASGNI4 ADDRGP4 $2942 JUMPV LABELV $2939 line 3649 ;3649: uiInfo.serverStatus.displayServers[i] = uiInfo.serverStatus.displayServers[i-1]; ADDRLP4 12 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+99264+2220 ADDP4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+99264+2220-4 ADDP4 INDIRI4 ASGNI4 line 3650 ;3650: } LABELV $2940 line 3648 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 LABELV $2942 ADDRLP4 0 INDIRI4 ADDRFP4 4 INDIRI4 GTI4 $2939 line 3651 ;3651: uiInfo.serverStatus.displayServers[position] = num; ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 ADDRFP4 0 INDIRI4 ASGNI4 line 3652 ;3652:} LABELV $2931 endproc UI_InsertServerIntoDisplayList 16 0 proc UI_RemoveServerFromDisplayList 16 0 line 3659 ;3653: ;3654:/* ;3655:================== ;3656:UI_RemoveServerFromDisplayList ;3657:================== ;3658:*/ ;3659:static void UI_RemoveServerFromDisplayList(int num) { line 3662 ;3660: int i, j; ;3661: ;3662: for (i = 0; i < uiInfo.serverStatus.numDisplayServers; i++) { ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRGP4 $2956 JUMPV LABELV $2953 line 3663 ;3663: if (uiInfo.serverStatus.displayServers[i] == num) { ADDRLP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ADDRFP4 0 INDIRI4 NEI4 $2959 line 3664 ;3664: uiInfo.serverStatus.numDisplayServers--; ADDRLP4 8 ADDRGP4 uiInfo+99264+10412 ASGNP4 ADDRLP4 8 INDIRP4 ADDRLP4 8 INDIRP4 INDIRI4 CNSTI4 1 SUBI4 ASGNI4 line 3665 ;3665: for (j = i; j < uiInfo.serverStatus.numDisplayServers; j++) { ADDRLP4 0 ADDRLP4 4 INDIRI4 ASGNI4 ADDRGP4 $2968 JUMPV LABELV $2965 line 3666 ;3666: uiInfo.serverStatus.displayServers[j] = uiInfo.serverStatus.displayServers[j+1]; ADDRLP4 12 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+99264+2220 ADDP4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+99264+2220+4 ADDP4 INDIRI4 ASGNI4 line 3667 ;3667: } LABELV $2966 line 3665 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2968 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 LTI4 $2965 line 3668 ;3668: return; ADDRGP4 $2952 JUMPV LABELV $2959 line 3670 ;3669: } ;3670: } LABELV $2954 line 3662 ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $2956 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 LTI4 $2953 line 3671 ;3671:} LABELV $2952 endproc UI_RemoveServerFromDisplayList 16 0 proc UI_BinaryServerInsertion 20 20 line 3678 ;3672: ;3673:/* ;3674:================== ;3675:UI_BinaryServerInsertion ;3676:================== ;3677:*/ ;3678:static void UI_BinaryServerInsertion(int num) { line 3682 ;3679: int mid, offset, res, len; ;3680: ;3681: // use binary search to insert server ;3682: len = uiInfo.serverStatus.numDisplayServers; ADDRLP4 12 ADDRGP4 uiInfo+99264+10412 INDIRI4 ASGNI4 line 3683 ;3683: mid = len; ADDRLP4 0 ADDRLP4 12 INDIRI4 ASGNI4 line 3684 ;3684: offset = 0; ADDRLP4 8 CNSTI4 0 ASGNI4 line 3685 ;3685: res = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRGP4 $2980 JUMPV LABELV $2979 line 3686 ;3686: while(mid > 0) { line 3687 ;3687: mid = len >> 1; ADDRLP4 0 ADDRLP4 12 INDIRI4 CNSTI4 1 RSHI4 ASGNI4 line 3689 ;3688: // ;3689: res = trap_LAN_CompareServers( ui_netSource.integer, uiInfo.serverStatus.sortKey, ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+2200 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+2204 INDIRI4 ARGI4 ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 8 INDIRI4 ADDRLP4 0 INDIRI4 ADDI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 ADDRLP4 16 ADDRGP4 trap_LAN_CompareServers CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 16 INDIRI4 ASGNI4 line 3692 ;3690: uiInfo.serverStatus.sortDir, num, uiInfo.serverStatus.displayServers[offset+mid]); ;3691: // if equal ;3692: if (res == 0) { ADDRLP4 4 INDIRI4 CNSTI4 0 NEI4 $2989 line 3693 ;3693: UI_InsertServerIntoDisplayList(num, offset+mid); ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 8 INDIRI4 ADDRLP4 0 INDIRI4 ADDI4 ARGI4 ADDRGP4 UI_InsertServerIntoDisplayList CALLV pop line 3694 ;3694: return; ADDRGP4 $2976 JUMPV LABELV $2989 line 3697 ;3695: } ;3696: // if larger ;3697: else if (res == 1) { ADDRLP4 4 INDIRI4 CNSTI4 1 NEI4 $2991 line 3698 ;3698: offset += mid; ADDRLP4 8 ADDRLP4 8 INDIRI4 ADDRLP4 0 INDIRI4 ADDI4 ASGNI4 line 3699 ;3699: len -= mid; ADDRLP4 12 ADDRLP4 12 INDIRI4 ADDRLP4 0 INDIRI4 SUBI4 ASGNI4 line 3700 ;3700: } ADDRGP4 $2992 JUMPV LABELV $2991 line 3702 ;3701: // if smaller ;3702: else { line 3703 ;3703: len -= mid; ADDRLP4 12 ADDRLP4 12 INDIRI4 ADDRLP4 0 INDIRI4 SUBI4 ASGNI4 line 3704 ;3704: } LABELV $2992 line 3705 ;3705: } LABELV $2980 line 3686 ADDRLP4 0 INDIRI4 CNSTI4 0 GTI4 $2979 line 3706 ;3706: if (res == 1) { ADDRLP4 4 INDIRI4 CNSTI4 1 NEI4 $2993 line 3707 ;3707: offset++; ADDRLP4 8 ADDRLP4 8 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3708 ;3708: } LABELV $2993 line 3709 ;3709: UI_InsertServerIntoDisplayList(num, offset); ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 8 INDIRI4 ARGI4 ADDRGP4 UI_InsertServerIntoDisplayList CALLV pop line 3710 ;3710:} LABELV $2976 endproc UI_BinaryServerInsertion 20 20 bss align 4 LABELV $2996 skip 4 code proc UI_BuildServerDisplayList 1100 16 line 3717 ;3711: ;3712:/* ;3713:================== ;3714:UI_BuildServerDisplayList ;3715:================== ;3716:*/ ;3717:static void UI_BuildServerDisplayList(qboolean force) { line 3723 ;3718: int i, count, clients, maxClients, ping, game, len, visible; ;3719: char info[MAX_STRING_CHARS]; ;3720:// qboolean startRefresh = qtrue; TTimo: unused ;3721: static int numinvisible; ;3722: ;3723: if (!(force || uiInfo.uiDC.realTime > uiInfo.serverStatus.nextDisplayRefresh)) { ADDRFP4 0 INDIRI4 CNSTI4 0 NEI4 $2997 ADDRGP4 uiInfo+208 INDIRI4 ADDRGP4 uiInfo+99264+10420 INDIRI4 GTI4 $2997 line 3724 ;3724: return; ADDRGP4 $2995 JUMPV LABELV $2997 line 3727 ;3725: } ;3726: // if we shouldn't reset ;3727: if ( force == 2 ) { ADDRFP4 0 INDIRI4 CNSTI4 2 NEI4 $3002 line 3728 ;3728: force = 0; ADDRFP4 0 CNSTI4 0 ASGNI4 line 3729 ;3729: } LABELV $3002 line 3732 ;3730: ;3731: // do motd updates here too ;3732: trap_Cvar_VariableStringBuffer( "cl_motdString", uiInfo.serverStatus.motd, sizeof(uiInfo.serverStatus.motd) ); ADDRGP4 $3004 ARGP4 ADDRGP4 uiInfo+99264+10460 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_Cvar_VariableStringBuffer CALLV pop line 3733 ;3733: len = strlen(uiInfo.serverStatus.motd); ADDRGP4 uiInfo+99264+10460 ARGP4 ADDRLP4 1056 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 1052 ADDRLP4 1056 INDIRI4 ASGNI4 line 3734 ;3734: if (len == 0) { ADDRLP4 1052 INDIRI4 CNSTI4 0 NEI4 $3011 line 3735 ;3735: strcpy(uiInfo.serverStatus.motd, "Welcome to Team Arena!"); ADDRGP4 uiInfo+99264+10460 ARGP4 ADDRGP4 $3015 ARGP4 ADDRGP4 strcpy CALLP4 pop line 3736 ;3736: len = strlen(uiInfo.serverStatus.motd); ADDRGP4 uiInfo+99264+10460 ARGP4 ADDRLP4 1060 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 1052 ADDRLP4 1060 INDIRI4 ASGNI4 line 3737 ;3737: } LABELV $3011 line 3738 ;3738: if (len != uiInfo.serverStatus.motdLen) { ADDRLP4 1052 INDIRI4 ADDRGP4 uiInfo+99264+10436 INDIRI4 EQI4 $3018 line 3739 ;3739: uiInfo.serverStatus.motdLen = len; ADDRGP4 uiInfo+99264+10436 ADDRLP4 1052 INDIRI4 ASGNI4 line 3740 ;3740: uiInfo.serverStatus.motdWidth = -1; ADDRGP4 uiInfo+99264+10440 CNSTI4 -1 ASGNI4 line 3741 ;3741: } LABELV $3018 line 3743 ;3742: ;3743: if (force) { ADDRFP4 0 INDIRI4 CNSTI4 0 EQI4 $3026 line 3744 ;3744: numinvisible = 0; ADDRGP4 $2996 CNSTI4 0 ASGNI4 line 3746 ;3745: // clear number of displayed servers ;3746: uiInfo.serverStatus.numDisplayServers = 0; ADDRGP4 uiInfo+99264+10412 CNSTI4 0 ASGNI4 line 3747 ;3747: uiInfo.serverStatus.numPlayersOnServers = 0; ADDRGP4 uiInfo+99264+10416 CNSTI4 0 ASGNI4 line 3749 ;3748: // set list box index to zero ;3749: Menu_SetFeederSelection(NULL, FEEDER_SERVERS, 0, NULL); CNSTP4 0 ARGP4 CNSTI4 2 ARGI4 CNSTI4 0 ARGI4 CNSTP4 0 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 3751 ;3750: // mark all servers as visible so we store ping updates for them ;3751: trap_LAN_MarkServerVisible(ui_netSource.integer, -1, qtrue); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 CNSTI4 -1 ARGI4 CNSTI4 1 ARGI4 ADDRGP4 trap_LAN_MarkServerVisible CALLV pop line 3752 ;3752: } LABELV $3026 line 3755 ;3753: ;3754: // get the server count (comes from the master) ;3755: count = trap_LAN_GetServerCount(ui_netSource.integer); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 1060 ADDRGP4 trap_LAN_GetServerCount CALLI4 ASGNI4 ADDRLP4 1036 ADDRLP4 1060 INDIRI4 ASGNI4 line 3756 ;3756: if (count == -1 || (ui_netSource.integer == AS_LOCAL && count == 0) ) { ADDRLP4 1036 INDIRI4 CNSTI4 -1 EQI4 $3037 ADDRLP4 1068 CNSTI4 0 ASGNI4 ADDRGP4 ui_netSource+12 INDIRI4 ADDRLP4 1068 INDIRI4 NEI4 $3034 ADDRLP4 1036 INDIRI4 ADDRLP4 1068 INDIRI4 NEI4 $3034 LABELV $3037 line 3758 ;3757: // still waiting on a response from the master ;3758: uiInfo.serverStatus.numDisplayServers = 0; ADDRGP4 uiInfo+99264+10412 CNSTI4 0 ASGNI4 line 3759 ;3759: uiInfo.serverStatus.numPlayersOnServers = 0; ADDRGP4 uiInfo+99264+10416 CNSTI4 0 ASGNI4 line 3760 ;3760: uiInfo.serverStatus.nextDisplayRefresh = uiInfo.uiDC.realTime + 500; ADDRGP4 uiInfo+99264+10420 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 500 ADDI4 ASGNI4 line 3761 ;3761: return; ADDRGP4 $2995 JUMPV LABELV $3034 line 3764 ;3762: } ;3763: ;3764: visible = qfalse; ADDRLP4 1040 CNSTI4 0 ASGNI4 line 3765 ;3765: for (i = 0; i < count; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $3048 JUMPV LABELV $3045 line 3767 ;3766: // if we already got info for this server ;3767: if (!trap_LAN_ServerIsVisible(ui_netSource.integer, i)) { ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 ADDRLP4 1072 ADDRGP4 trap_LAN_ServerIsVisible CALLI4 ASGNI4 ADDRLP4 1072 INDIRI4 CNSTI4 0 NEI4 $3049 line 3768 ;3768: continue; ADDRGP4 $3046 JUMPV LABELV $3049 line 3770 ;3769: } ;3770: visible = qtrue; ADDRLP4 1040 CNSTI4 1 ASGNI4 line 3772 ;3771: // get the ping for this server ;3772: ping = trap_LAN_GetServerPing(ui_netSource.integer, i); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 ADDRLP4 1076 ADDRGP4 trap_LAN_GetServerPing CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 1076 INDIRI4 ASGNI4 line 3773 ;3773: if (ping > 0 || ui_netSource.integer == AS_FAVORITES) { ADDRLP4 4 INDIRI4 CNSTI4 0 GTI4 $3056 ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 3 NEI4 $3053 LABELV $3056 line 3775 ;3774: ;3775: trap_LAN_GetServerInfo(ui_netSource.integer, i, info, MAX_STRING_CHARS); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 ADDRLP4 8 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_LAN_GetServerInfo CALLV pop line 3777 ;3776: ;3777: clients = atoi(Info_ValueForKey(info, "clients")); ADDRLP4 8 ARGP4 ADDRGP4 $3058 ARGP4 ADDRLP4 1080 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 1080 INDIRP4 ARGP4 ADDRLP4 1084 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 1032 ADDRLP4 1084 INDIRI4 ASGNI4 line 3778 ;3778: uiInfo.serverStatus.numPlayersOnServers += clients; ADDRLP4 1088 ADDRGP4 uiInfo+99264+10416 ASGNP4 ADDRLP4 1088 INDIRP4 ADDRLP4 1088 INDIRP4 INDIRI4 ADDRLP4 1032 INDIRI4 ADDI4 ASGNI4 line 3780 ;3779: ;3780: if (ui_browserShowEmpty.integer == 0) { ADDRGP4 ui_browserShowEmpty+12 INDIRI4 CNSTI4 0 NEI4 $3061 line 3781 ;3781: if (clients == 0) { ADDRLP4 1032 INDIRI4 CNSTI4 0 NEI4 $3064 line 3782 ;3782: trap_LAN_MarkServerVisible(ui_netSource.integer, i, qfalse); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 trap_LAN_MarkServerVisible CALLV pop line 3783 ;3783: continue; ADDRGP4 $3046 JUMPV LABELV $3064 line 3785 ;3784: } ;3785: } LABELV $3061 line 3787 ;3786: ;3787: if (ui_browserShowFull.integer == 0) { ADDRGP4 ui_browserShowFull+12 INDIRI4 CNSTI4 0 NEI4 $3067 line 3788 ;3788: maxClients = atoi(Info_ValueForKey(info, "sv_maxclients")); ADDRLP4 8 ARGP4 ADDRGP4 $1399 ARGP4 ADDRLP4 1092 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 1092 INDIRP4 ARGP4 ADDRLP4 1096 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 1044 ADDRLP4 1096 INDIRI4 ASGNI4 line 3789 ;3789: if (clients == maxClients) { ADDRLP4 1032 INDIRI4 ADDRLP4 1044 INDIRI4 NEI4 $3070 line 3790 ;3790: trap_LAN_MarkServerVisible(ui_netSource.integer, i, qfalse); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 trap_LAN_MarkServerVisible CALLV pop line 3791 ;3791: continue; ADDRGP4 $3046 JUMPV LABELV $3070 line 3793 ;3792: } ;3793: } LABELV $3067 line 3795 ;3794: ;3795: if (uiInfo.joinGameTypes[ui_joinGameType.integer].gtEnum != -1) { ADDRGP4 ui_joinGameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78712+4 ADDP4 INDIRI4 CNSTI4 -1 EQI4 $3073 line 3796 ;3796: game = atoi(Info_ValueForKey(info, "gametype")); ADDRLP4 8 ARGP4 ADDRGP4 $3078 ARGP4 ADDRLP4 1092 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 1092 INDIRP4 ARGP4 ADDRLP4 1096 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 1048 ADDRLP4 1096 INDIRI4 ASGNI4 line 3797 ;3797: if (game != uiInfo.joinGameTypes[ui_joinGameType.integer].gtEnum) { ADDRLP4 1048 INDIRI4 ADDRGP4 ui_joinGameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78712+4 ADDP4 INDIRI4 EQI4 $3079 line 3798 ;3798: trap_LAN_MarkServerVisible(ui_netSource.integer, i, qfalse); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 trap_LAN_MarkServerVisible CALLV pop line 3799 ;3799: continue; ADDRGP4 $3046 JUMPV LABELV $3079 line 3801 ;3800: } ;3801: } LABELV $3073 line 3803 ;3802: ;3803: if (ui_serverFilterType.integer > 0) { ADDRGP4 ui_serverFilterType+12 INDIRI4 CNSTI4 0 LEI4 $3085 line 3804 ;3804: if (Q_stricmp(Info_ValueForKey(info, "game"), serverFilters[ui_serverFilterType.integer].basedir) != 0) { ADDRLP4 8 ARGP4 ADDRGP4 $3090 ARGP4 ADDRLP4 1092 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 1092 INDIRP4 ARGP4 ADDRGP4 ui_serverFilterType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 serverFilters+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 1096 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 1096 INDIRI4 CNSTI4 0 EQI4 $3088 line 3805 ;3805: trap_LAN_MarkServerVisible(ui_netSource.integer, i, qfalse); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 trap_LAN_MarkServerVisible CALLV pop line 3806 ;3806: continue; ADDRGP4 $3046 JUMPV LABELV $3088 line 3808 ;3807: } ;3808: } LABELV $3085 line 3810 ;3809: // make sure we never add a favorite server twice ;3810: if (ui_netSource.integer == AS_FAVORITES) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 3 NEI4 $3094 line 3811 ;3811: UI_RemoveServerFromDisplayList(i); ADDRLP4 0 INDIRI4 ARGI4 ADDRGP4 UI_RemoveServerFromDisplayList CALLV pop line 3812 ;3812: } LABELV $3094 line 3814 ;3813: // insert the server into the list ;3814: UI_BinaryServerInsertion(i); ADDRLP4 0 INDIRI4 ARGI4 ADDRGP4 UI_BinaryServerInsertion CALLV pop line 3816 ;3815: // done with this server ;3816: if (ping > 0) { ADDRLP4 4 INDIRI4 CNSTI4 0 LEI4 $3097 line 3817 ;3817: trap_LAN_MarkServerVisible(ui_netSource.integer, i, qfalse); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 CNSTI4 0 ARGI4 ADDRGP4 trap_LAN_MarkServerVisible CALLV pop line 3818 ;3818: numinvisible++; ADDRLP4 1092 ADDRGP4 $2996 ASGNP4 ADDRLP4 1092 INDIRP4 ADDRLP4 1092 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3819 ;3819: } LABELV $3097 line 3820 ;3820: } LABELV $3053 line 3821 ;3821: } LABELV $3046 line 3765 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $3048 ADDRLP4 0 INDIRI4 ADDRLP4 1036 INDIRI4 LTI4 $3045 line 3823 ;3822: ;3823: uiInfo.serverStatus.refreshtime = uiInfo.uiDC.realTime; ADDRGP4 uiInfo+99264+2192 ADDRGP4 uiInfo+208 INDIRI4 ASGNI4 line 3826 ;3824: ;3825: // if there were no servers visible for ping updates ;3826: if (!visible) { ADDRLP4 1040 INDIRI4 CNSTI4 0 NEI4 $3103 line 3829 ;3827:// UI_StopServerRefresh(); ;3828:// uiInfo.serverStatus.nextDisplayRefresh = 0; ;3829: } LABELV $3103 line 3830 ;3830:} LABELV $2995 endproc UI_BuildServerDisplayList 1100 16 data export serverStatusCvars align 4 LABELV serverStatusCvars address $3106 address $3107 address $3108 address $112 address $3109 address $3110 address $1362 address $3111 address $3112 address $3113 address $3114 address $112 address $2194 address $112 address $3115 address $112 address $719 address $112 byte 4 0 byte 4 0 code proc UI_SortServerStatusInfo 56 8 line 3855 ;3831: ;3832:typedef struct ;3833:{ ;3834: char *name, *altName; ;3835:} serverStatusCvar_t; ;3836: ;3837:serverStatusCvar_t serverStatusCvars[] = { ;3838: {"sv_hostname", "Name"}, ;3839: {"Address", ""}, ;3840: {"gamename", "Game name"}, ;3841: {"g_gametype", "Game type"}, ;3842: {"mapname", "Map"}, ;3843: {"version", ""}, ;3844: {"protocol", ""}, ;3845: {"timelimit", ""}, ;3846: {"fraglimit", ""}, ;3847: {NULL, NULL} ;3848:}; ;3849: ;3850:/* ;3851:================== ;3852:UI_SortServerStatusInfo ;3853:================== ;3854:*/ ;3855:static void UI_SortServerStatusInfo( serverStatusInfo_t *info ) { line 3862 ;3856: int i, j, index; ;3857: char *tmp1, *tmp2; ;3858: ;3859: // FIXME: if "gamename" == "baseq3" or "missionpack" then ;3860: // replace the gametype number by FFA, CTF etc. ;3861: // ;3862: index = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 3863 ;3863: for (i = 0; serverStatusCvars[i].name; i++) { ADDRLP4 8 CNSTI4 0 ASGNI4 ADDRGP4 $3120 JUMPV LABELV $3117 line 3864 ;3864: for (j = 0; j < info->numLines; j++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $3124 JUMPV LABELV $3121 line 3865 ;3865: if ( !info->lines[j][1] || info->lines[j][1][0] ) { ADDRLP4 20 CNSTI4 4 ASGNI4 ADDRLP4 24 ADDRLP4 0 INDIRI4 ADDRLP4 20 INDIRI4 LSHI4 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 20 INDIRI4 ADDP4 INDIRP4 ASGNP4 ADDRLP4 24 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3127 ADDRLP4 24 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $3125 LABELV $3127 line 3866 ;3866: continue; ADDRGP4 $3122 JUMPV LABELV $3125 line 3868 ;3867: } ;3868: if ( !Q_stricmp(serverStatusCvars[i].name, info->lines[j][0]) ) { ADDRLP4 8 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 serverStatusCvars ADDP4 INDIRP4 ARGP4 ADDRLP4 0 INDIRI4 CNSTI4 4 LSHI4 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ADDP4 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 NEI4 $3128 line 3870 ;3869: // swap lines ;3870: tmp1 = info->lines[index][0]; ADDRLP4 12 ADDRLP4 4 INDIRI4 CNSTI4 4 LSHI4 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ADDP4 INDIRP4 ASGNP4 line 3871 ;3871: tmp2 = info->lines[index][3]; ADDRLP4 16 ADDRLP4 4 INDIRI4 CNSTI4 4 LSHI4 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 12 ADDP4 INDIRP4 ASGNP4 line 3872 ;3872: info->lines[index][0] = info->lines[j][0]; ADDRLP4 32 CNSTI4 4 ASGNI4 ADDRLP4 36 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ASGNP4 ADDRLP4 4 INDIRI4 ADDRLP4 32 INDIRI4 LSHI4 ADDRLP4 36 INDIRP4 ADDP4 ADDRLP4 0 INDIRI4 ADDRLP4 32 INDIRI4 LSHI4 ADDRLP4 36 INDIRP4 ADDP4 INDIRP4 ASGNP4 line 3873 ;3873: info->lines[index][3] = info->lines[j][3]; ADDRLP4 40 CNSTI4 4 ASGNI4 ADDRLP4 44 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ASGNP4 ADDRLP4 48 CNSTI4 12 ASGNI4 ADDRLP4 4 INDIRI4 ADDRLP4 40 INDIRI4 LSHI4 ADDRLP4 44 INDIRP4 ADDP4 ADDRLP4 48 INDIRI4 ADDP4 ADDRLP4 0 INDIRI4 ADDRLP4 40 INDIRI4 LSHI4 ADDRLP4 44 INDIRP4 ADDP4 ADDRLP4 48 INDIRI4 ADDP4 INDIRP4 ASGNP4 line 3874 ;3874: info->lines[j][0] = tmp1; ADDRLP4 0 INDIRI4 CNSTI4 4 LSHI4 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 12 INDIRP4 ASGNP4 line 3875 ;3875: info->lines[j][3] = tmp2; ADDRLP4 0 INDIRI4 CNSTI4 4 LSHI4 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 12 ADDP4 ADDRLP4 16 INDIRP4 ASGNP4 line 3877 ;3876: // ;3877: if ( strlen(serverStatusCvars[i].altName) ) { ADDRLP4 8 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 serverStatusCvars+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 52 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 52 INDIRI4 CNSTI4 0 EQI4 $3130 line 3878 ;3878: info->lines[index][0] = serverStatusCvars[i].altName; ADDRLP4 4 INDIRI4 CNSTI4 4 LSHI4 ADDRFP4 0 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 8 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 serverStatusCvars+4 ADDP4 INDIRP4 ASGNP4 line 3879 ;3879: } LABELV $3130 line 3880 ;3880: index++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3881 ;3881: } LABELV $3128 line 3882 ;3882: } LABELV $3122 line 3864 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $3124 ADDRLP4 0 INDIRI4 ADDRFP4 0 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 LTI4 $3121 line 3883 ;3883: } LABELV $3118 line 3863 ADDRLP4 8 ADDRLP4 8 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $3120 ADDRLP4 8 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 serverStatusCvars ADDP4 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3117 line 3884 ;3884:} LABELV $3116 endproc UI_SortServerStatusInfo 56 8 proc UI_GetServerStatusInfo 168 16 line 3891 ;3885: ;3886:/* ;3887:================== ;3888:UI_GetServerStatusInfo ;3889:================== ;3890:*/ ;3891:static int UI_GetServerStatusInfo( const char *serverAddress, serverStatusInfo_t *info ) { line 3895 ;3892: char *p, *score, *ping, *name; ;3893: int i, len; ;3894: ;3895: if (!info) { ADDRFP4 4 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3135 line 3896 ;3896: trap_LAN_ServerStatus( serverAddress, NULL, 0); ADDRFP4 0 INDIRP4 ARGP4 CNSTP4 0 ARGP4 CNSTI4 0 ARGI4 ADDRGP4 trap_LAN_ServerStatus CALLI4 pop line 3897 ;3897: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3134 JUMPV LABELV $3135 line 3899 ;3898: } ;3899: memset(info, 0, sizeof(*info)); ADDRFP4 4 INDIRP4 ARGP4 CNSTI4 0 ARGI4 CNSTI4 3332 ARGI4 ADDRGP4 memset CALLP4 pop line 3900 ;3900: if ( trap_LAN_ServerStatus( serverAddress, info->text, sizeof(info->text)) ) { ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRP4 CNSTI4 2112 ADDP4 ARGP4 CNSTI4 1024 ARGI4 ADDRLP4 24 ADDRGP4 trap_LAN_ServerStatus CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 EQI4 $3137 line 3901 ;3901: Q_strncpyz(info->address, serverAddress, sizeof(info->address)); ADDRFP4 4 INDIRP4 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 3902 ;3902: p = info->text; ADDRLP4 0 ADDRFP4 4 INDIRP4 CNSTI4 2112 ADDP4 ASGNP4 line 3903 ;3903: info->numLines = 0; ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 CNSTI4 0 ASGNI4 line 3904 ;3904: info->lines[info->numLines][0] = "Address"; ADDRLP4 28 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 28 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 28 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRGP4 $3108 ASGNP4 line 3905 ;3905: info->lines[info->numLines][1] = ""; ADDRLP4 32 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 36 CNSTI4 4 ASGNI4 ADDRLP4 32 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 ADDRLP4 36 INDIRI4 LSHI4 ADDRLP4 32 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 36 INDIRI4 ADDP4 ADDRGP4 $112 ASGNP4 line 3906 ;3906: info->lines[info->numLines][2] = ""; ADDRLP4 40 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 40 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 40 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 8 ADDP4 ADDRGP4 $112 ASGNP4 line 3907 ;3907: info->lines[info->numLines][3] = info->address; ADDRLP4 44 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 44 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 44 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 12 ADDP4 ADDRLP4 44 INDIRP4 ASGNP4 line 3908 ;3908: info->numLines++; ADDRLP4 48 ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 ASGNP4 ADDRLP4 48 INDIRP4 ADDRLP4 48 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRGP4 $3140 JUMPV LABELV $3139 line 3910 ;3909: // get the cvars ;3910: while (p && *p) { line 3911 ;3911: p = strchr(p, '\\'); ADDRLP4 0 INDIRP4 ARGP4 CNSTI4 92 ARGI4 ADDRLP4 52 ADDRGP4 strchr CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 52 INDIRP4 ASGNP4 line 3912 ;3912: if (!p) break; ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3142 ADDRGP4 $3141 JUMPV LABELV $3142 line 3913 ;3913: *p++ = '\0'; ADDRLP4 56 ADDRLP4 0 INDIRP4 ASGNP4 ADDRLP4 0 ADDRLP4 56 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 ADDRLP4 56 INDIRP4 CNSTI1 0 ASGNI1 line 3914 ;3914: if (*p == '\\') ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 92 NEI4 $3144 line 3915 ;3915: break; ADDRGP4 $3141 JUMPV LABELV $3144 line 3916 ;3916: info->lines[info->numLines][0] = p; ADDRLP4 60 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 60 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 60 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 0 INDIRP4 ASGNP4 line 3917 ;3917: info->lines[info->numLines][1] = ""; ADDRLP4 64 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 68 CNSTI4 4 ASGNI4 ADDRLP4 64 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 ADDRLP4 68 INDIRI4 LSHI4 ADDRLP4 64 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 68 INDIRI4 ADDP4 ADDRGP4 $112 ASGNP4 line 3918 ;3918: info->lines[info->numLines][2] = ""; ADDRLP4 72 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 72 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 72 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 8 ADDP4 ADDRGP4 $112 ASGNP4 line 3919 ;3919: p = strchr(p, '\\'); ADDRLP4 0 INDIRP4 ARGP4 CNSTI4 92 ARGI4 ADDRLP4 76 ADDRGP4 strchr CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 76 INDIRP4 ASGNP4 line 3920 ;3920: if (!p) break; ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3146 ADDRGP4 $3141 JUMPV LABELV $3146 line 3921 ;3921: *p++ = '\0'; ADDRLP4 80 ADDRLP4 0 INDIRP4 ASGNP4 ADDRLP4 0 ADDRLP4 80 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 ADDRLP4 80 INDIRP4 CNSTI1 0 ASGNI1 line 3922 ;3922: info->lines[info->numLines][3] = p; ADDRLP4 84 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 84 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 84 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 12 ADDP4 ADDRLP4 0 INDIRP4 ASGNP4 line 3924 ;3923: ;3924: info->numLines++; ADDRLP4 88 ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 ASGNP4 ADDRLP4 88 INDIRP4 ADDRLP4 88 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3925 ;3925: if (info->numLines >= MAX_SERVERSTATUS_LINES) ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 128 LTI4 $3148 line 3926 ;3926: break; ADDRGP4 $3141 JUMPV LABELV $3148 line 3927 ;3927: } LABELV $3140 line 3910 ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3150 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3139 LABELV $3150 LABELV $3141 line 3929 ;3928: // get the player list ;3929: if (info->numLines < MAX_SERVERSTATUS_LINES-3) { ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 125 GEI4 $3151 line 3931 ;3930: // empty line ;3931: info->lines[info->numLines][0] = ""; ADDRLP4 56 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 56 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 56 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRGP4 $112 ASGNP4 line 3932 ;3932: info->lines[info->numLines][1] = ""; ADDRLP4 60 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 64 CNSTI4 4 ASGNI4 ADDRLP4 60 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 ADDRLP4 64 INDIRI4 LSHI4 ADDRLP4 60 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 64 INDIRI4 ADDP4 ADDRGP4 $112 ASGNP4 line 3933 ;3933: info->lines[info->numLines][2] = ""; ADDRLP4 68 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 68 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 68 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 8 ADDP4 ADDRGP4 $112 ASGNP4 line 3934 ;3934: info->lines[info->numLines][3] = ""; ADDRLP4 72 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 72 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 72 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 12 ADDP4 ADDRGP4 $112 ASGNP4 line 3935 ;3935: info->numLines++; ADDRLP4 76 ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 ASGNP4 ADDRLP4 76 INDIRP4 ADDRLP4 76 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3937 ;3936: // header ;3937: info->lines[info->numLines][0] = "num"; ADDRLP4 80 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 80 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 80 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRGP4 $3153 ASGNP4 line 3938 ;3938: info->lines[info->numLines][1] = "score"; ADDRLP4 84 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 88 CNSTI4 4 ASGNI4 ADDRLP4 84 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 ADDRLP4 88 INDIRI4 LSHI4 ADDRLP4 84 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 88 INDIRI4 ADDP4 ADDRGP4 $3154 ASGNP4 line 3939 ;3939: info->lines[info->numLines][2] = "ping"; ADDRLP4 92 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 92 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 92 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 8 ADDP4 ADDRGP4 $3155 ASGNP4 line 3940 ;3940: info->lines[info->numLines][3] = "name"; ADDRLP4 96 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 96 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 96 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 12 ADDP4 ADDRGP4 $1448 ASGNP4 line 3941 ;3941: info->numLines++; ADDRLP4 100 ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 ASGNP4 ADDRLP4 100 INDIRP4 ADDRLP4 100 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3943 ;3942: // parse players ;3943: i = 0; ADDRLP4 8 CNSTI4 0 ASGNI4 line 3944 ;3944: len = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRGP4 $3157 JUMPV LABELV $3156 line 3945 ;3945: while (p && *p) { line 3946 ;3946: if (*p == '\\') ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 92 NEI4 $3159 line 3947 ;3947: *p++ = '\0'; ADDRLP4 104 ADDRLP4 0 INDIRP4 ASGNP4 ADDRLP4 0 ADDRLP4 104 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 ADDRLP4 104 INDIRP4 CNSTI1 0 ASGNI1 LABELV $3159 line 3948 ;3948: if (!p) ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3161 line 3949 ;3949: break; ADDRGP4 $3158 JUMPV LABELV $3161 line 3950 ;3950: score = p; ADDRLP4 12 ADDRLP4 0 INDIRP4 ASGNP4 line 3951 ;3951: p = strchr(p, ' '); ADDRLP4 0 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRLP4 108 ADDRGP4 strchr CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 108 INDIRP4 ASGNP4 line 3952 ;3952: if (!p) ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3163 line 3953 ;3953: break; ADDRGP4 $3158 JUMPV LABELV $3163 line 3954 ;3954: *p++ = '\0'; ADDRLP4 112 ADDRLP4 0 INDIRP4 ASGNP4 ADDRLP4 0 ADDRLP4 112 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 ADDRLP4 112 INDIRP4 CNSTI1 0 ASGNI1 line 3955 ;3955: ping = p; ADDRLP4 16 ADDRLP4 0 INDIRP4 ASGNP4 line 3956 ;3956: p = strchr(p, ' '); ADDRLP4 0 INDIRP4 ARGP4 CNSTI4 32 ARGI4 ADDRLP4 116 ADDRGP4 strchr CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 116 INDIRP4 ASGNP4 line 3957 ;3957: if (!p) ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3165 line 3958 ;3958: break; ADDRGP4 $3158 JUMPV LABELV $3165 line 3959 ;3959: *p++ = '\0'; ADDRLP4 120 ADDRLP4 0 INDIRP4 ASGNP4 ADDRLP4 0 ADDRLP4 120 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 ADDRLP4 120 INDIRP4 CNSTI1 0 ASGNI1 line 3960 ;3960: name = p; ADDRLP4 20 ADDRLP4 0 INDIRP4 ASGNP4 line 3961 ;3961: Com_sprintf(&info->pings[len], sizeof(info->pings)-len, "%d", i); ADDRLP4 4 INDIRI4 ADDRFP4 4 INDIRP4 CNSTI4 3136 ADDP4 ADDP4 ARGP4 CNSTU4 192 ADDRLP4 4 INDIRI4 CVIU4 4 SUBU4 CVUI4 4 ARGI4 ADDRGP4 $716 ARGP4 ADDRLP4 8 INDIRI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 3962 ;3962: info->lines[info->numLines][0] = &info->pings[len]; ADDRLP4 128 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 128 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 128 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 4 INDIRI4 ADDRLP4 128 INDIRP4 CNSTI4 3136 ADDP4 ADDP4 ASGNP4 line 3963 ;3963: len += strlen(&info->pings[len]) + 1; ADDRLP4 4 INDIRI4 ADDRFP4 4 INDIRP4 CNSTI4 3136 ADDP4 ADDP4 ARGP4 ADDRLP4 136 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 4 INDIRI4 ADDRLP4 136 INDIRI4 CNSTI4 1 ADDI4 ADDI4 ASGNI4 line 3964 ;3964: info->lines[info->numLines][1] = score; ADDRLP4 140 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 144 CNSTI4 4 ASGNI4 ADDRLP4 140 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 ADDRLP4 144 INDIRI4 LSHI4 ADDRLP4 140 INDIRP4 CNSTI4 64 ADDP4 ADDP4 ADDRLP4 144 INDIRI4 ADDP4 ADDRLP4 12 INDIRP4 ASGNP4 line 3965 ;3965: info->lines[info->numLines][2] = ping; ADDRLP4 148 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 148 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 148 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 8 ADDP4 ADDRLP4 16 INDIRP4 ASGNP4 line 3966 ;3966: info->lines[info->numLines][3] = name; ADDRLP4 152 ADDRFP4 4 INDIRP4 ASGNP4 ADDRLP4 152 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 152 INDIRP4 CNSTI4 64 ADDP4 ADDP4 CNSTI4 12 ADDP4 ADDRLP4 20 INDIRP4 ASGNP4 line 3967 ;3967: info->numLines++; ADDRLP4 156 ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 ASGNP4 ADDRLP4 156 INDIRP4 ADDRLP4 156 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3968 ;3968: if (info->numLines >= MAX_SERVERSTATUS_LINES) ADDRFP4 4 INDIRP4 CNSTI4 3328 ADDP4 INDIRI4 CNSTI4 128 LTI4 $3167 line 3969 ;3969: break; ADDRGP4 $3158 JUMPV LABELV $3167 line 3970 ;3970: p = strchr(p, '\\'); ADDRLP4 0 INDIRP4 ARGP4 CNSTI4 92 ARGI4 ADDRLP4 160 ADDRGP4 strchr CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 160 INDIRP4 ASGNP4 line 3971 ;3971: if (!p) ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3169 line 3972 ;3972: break; ADDRGP4 $3158 JUMPV LABELV $3169 line 3973 ;3973: *p++ = '\0'; ADDRLP4 164 ADDRLP4 0 INDIRP4 ASGNP4 ADDRLP4 0 ADDRLP4 164 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 ADDRLP4 164 INDIRP4 CNSTI1 0 ASGNI1 line 3975 ;3974: // ;3975: i++; ADDRLP4 8 ADDRLP4 8 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 3976 ;3976: } LABELV $3157 line 3945 ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3171 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3156 LABELV $3171 LABELV $3158 line 3977 ;3977: } LABELV $3151 line 3978 ;3978: UI_SortServerStatusInfo( info ); ADDRFP4 4 INDIRP4 ARGP4 ADDRGP4 UI_SortServerStatusInfo CALLV pop line 3979 ;3979: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $3134 JUMPV LABELV $3137 line 3981 ;3980: } ;3981: return qfalse; CNSTI4 0 RETI4 LABELV $3134 endproc UI_GetServerStatusInfo 168 16 proc stristr 12 4 line 3989 ;3982:} ;3983: ;3984:/* ;3985:================== ;3986:stristr ;3987:================== ;3988:*/ ;3989:static char *stristr(char *str, char *charset) { ADDRGP4 $3174 JUMPV LABELV $3173 line 3992 ;3990: int i; ;3991: ;3992: while(*str) { line 3993 ;3993: for (i = 0; charset[i] && str[i]; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $3179 JUMPV LABELV $3176 line 3994 ;3994: if (toupper(charset[i]) != toupper(str[i])) break; ADDRLP4 0 INDIRI4 ADDRFP4 4 INDIRP4 ADDP4 INDIRI1 CVII4 1 ARGI4 ADDRLP4 4 ADDRGP4 toupper CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 ADDRFP4 0 INDIRP4 ADDP4 INDIRI1 CVII4 1 ARGI4 ADDRLP4 8 ADDRGP4 toupper CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 ADDRLP4 8 INDIRI4 EQI4 $3180 ADDRGP4 $3178 JUMPV LABELV $3180 line 3995 ;3995: } LABELV $3177 line 3993 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $3179 ADDRLP4 8 CNSTI4 0 ASGNI4 ADDRLP4 0 INDIRI4 ADDRFP4 4 INDIRP4 ADDP4 INDIRI1 CVII4 1 ADDRLP4 8 INDIRI4 EQI4 $3182 ADDRLP4 0 INDIRI4 ADDRFP4 0 INDIRP4 ADDP4 INDIRI1 CVII4 1 ADDRLP4 8 INDIRI4 NEI4 $3176 LABELV $3182 LABELV $3178 line 3996 ;3996: if (!charset[i]) return str; ADDRLP4 0 INDIRI4 ADDRFP4 4 INDIRP4 ADDP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3183 ADDRFP4 0 INDIRP4 RETP4 ADDRGP4 $3172 JUMPV LABELV $3183 line 3997 ;3997: str++; ADDRFP4 0 ADDRFP4 0 INDIRP4 CNSTI4 1 ADDP4 ASGNP4 line 3998 ;3998: } LABELV $3174 line 3992 ADDRFP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3173 line 3999 ;3999: return NULL; CNSTP4 0 RETP4 LABELV $3172 endproc stristr 12 4 bss align 4 LABELV $3186 skip 4 align 4 LABELV $3187 skip 4 code proc UI_BuildFindPlayerList 4424 24 line 4007 ;4000:} ;4001: ;4002:/* ;4003:================== ;4004:UI_BuildFindPlayerList ;4005:================== ;4006:*/ ;4007:static void UI_BuildFindPlayerList(qboolean force) { line 4014 ;4008: static int numFound, numTimeOuts; ;4009: int i, j, resend; ;4010: serverStatusInfo_t info; ;4011: char name[MAX_NAME_LENGTH+2]; ;4012: char infoString[MAX_STRING_CHARS]; ;4013: ;4014: if (!force) { ADDRFP4 0 INDIRI4 CNSTI4 0 NEI4 $3188 line 4015 ;4015: if (!uiInfo.nextFindPlayerRefresh || uiInfo.nextFindPlayerRefresh > uiInfo.uiDC.realTime) { ADDRGP4 uiInfo+119472 INDIRI4 CNSTI4 0 EQI4 $3195 ADDRGP4 uiInfo+119472 INDIRI4 ADDRGP4 uiInfo+208 INDIRI4 LEI4 $3189 LABELV $3195 line 4016 ;4016: return; ADDRGP4 $3185 JUMPV line 4018 ;4017: } ;4018: } LABELV $3188 line 4019 ;4019: else { line 4020 ;4020: memset(&uiInfo.pendingServerStatus, 0, sizeof(uiInfo.pendingServerStatus)); ADDRGP4 uiInfo+114148 ARGP4 CNSTI4 0 ARGI4 CNSTI4 2244 ARGI4 ADDRGP4 memset CALLP4 pop line 4021 ;4021: uiInfo.numFoundPlayerServers = 0; ADDRGP4 uiInfo+119468 CNSTI4 0 ASGNI4 line 4022 ;4022: uiInfo.currentFoundPlayerServer = 0; ADDRGP4 uiInfo+119464 CNSTI4 0 ASGNI4 line 4023 ;4023: trap_Cvar_VariableStringBuffer( "ui_findPlayer", uiInfo.findPlayerName, sizeof(uiInfo.findPlayerName)); ADDRGP4 $3200 ARGP4 ADDRGP4 uiInfo+116392 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_Cvar_VariableStringBuffer CALLV pop line 4024 ;4024: Q_CleanStr(uiInfo.findPlayerName); ADDRGP4 uiInfo+116392 ARGP4 ADDRGP4 Q_CleanStr CALLP4 pop line 4026 ;4025: // should have a string of some length ;4026: if (!strlen(uiInfo.findPlayerName)) { ADDRGP4 uiInfo+116392 ARGP4 ADDRLP4 4404 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 4404 INDIRI4 CNSTI4 0 NEI4 $3204 line 4027 ;4027: uiInfo.nextFindPlayerRefresh = 0; ADDRGP4 uiInfo+119472 CNSTI4 0 ASGNI4 line 4028 ;4028: return; ADDRGP4 $3185 JUMPV LABELV $3204 line 4031 ;4029: } ;4030: // set resend time ;4031: resend = ui_serverStatusTimeOut.integer / 2 - 10; ADDRLP4 4400 ADDRGP4 ui_serverStatusTimeOut+12 INDIRI4 CNSTI4 2 DIVI4 CNSTI4 10 SUBI4 ASGNI4 line 4032 ;4032: if (resend < 50) { ADDRLP4 4400 INDIRI4 CNSTI4 50 GEI4 $3209 line 4033 ;4033: resend = 50; ADDRLP4 4400 CNSTI4 50 ASGNI4 line 4034 ;4034: } LABELV $3209 line 4035 ;4035: trap_Cvar_Set("cl_serverStatusResendTime", va("%d", resend)); ADDRGP4 $716 ARGP4 ADDRLP4 4400 INDIRI4 ARGI4 ADDRLP4 4408 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $3211 ARGP4 ADDRLP4 4408 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4037 ;4036: // reset all server status requests ;4037: trap_LAN_ServerStatus( NULL, NULL, 0); CNSTP4 0 ARGP4 CNSTP4 0 ARGP4 CNSTI4 0 ARGI4 ADDRGP4 trap_LAN_ServerStatus CALLI4 pop line 4039 ;4038: // ;4039: uiInfo.numFoundPlayerServers = 1; ADDRGP4 uiInfo+119468 CNSTI4 1 ASGNI4 line 4040 ;4040: Com_sprintf(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1], ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+118440-64 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 $3219 ARGP4 ADDRGP4 uiInfo+114148 INDIRI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 4043 ;4041: sizeof(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1]), ;4042: "searching %d...", uiInfo.pendingServerStatus.num); ;4043: numFound = 0; ADDRGP4 $3186 CNSTI4 0 ASGNI4 line 4044 ;4044: numTimeOuts++; ADDRLP4 4412 ADDRGP4 $3187 ASGNP4 ADDRLP4 4412 INDIRP4 ADDRLP4 4412 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4045 ;4045: } LABELV $3189 line 4046 ;4046: for (i = 0; i < MAX_SERVERSTATUSREQUESTS; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 LABELV $3221 line 4048 ;4047: // if this pending server is valid ;4048: if (uiInfo.pendingServerStatus.server[i].valid) { CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+136 ADDP4 INDIRI4 CNSTI4 0 EQI4 $3225 line 4050 ;4049: // try to get the server status for this server ;4050: if (UI_GetServerStatusInfo( uiInfo.pendingServerStatus.server[i].adrstr, &info ) ) { CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4 ADDP4 ARGP4 ADDRLP4 8 ARGP4 ADDRLP4 4404 ADDRGP4 UI_GetServerStatusInfo CALLI4 ASGNI4 ADDRLP4 4404 INDIRI4 CNSTI4 0 EQI4 $3230 line 4052 ;4051: // ;4052: numFound++; ADDRLP4 4408 ADDRGP4 $3186 ASGNP4 ADDRLP4 4408 INDIRP4 ADDRLP4 4408 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4054 ;4053: // parse through the server status lines ;4054: for (j = 0; j < info.numLines; j++) { ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRGP4 $3237 JUMPV LABELV $3234 line 4056 ;4055: // should have ping info ;4056: if ( !info.lines[j][2] || !info.lines[j][2][0] ) { ADDRLP4 4412 ADDRLP4 4 INDIRI4 CNSTI4 4 LSHI4 ASGNI4 ADDRLP4 4412 INDIRI4 ADDRLP4 8+64+8 ADDP4 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3245 ADDRLP4 4412 INDIRI4 ADDRLP4 8+64+8 ADDP4 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3239 LABELV $3245 line 4057 ;4057: continue; ADDRGP4 $3235 JUMPV LABELV $3239 line 4060 ;4058: } ;4059: // clean string first ;4060: Q_strncpyz(name, info.lines[j][3], sizeof(name)); ADDRLP4 3340 ARGP4 ADDRLP4 4 INDIRI4 CNSTI4 4 LSHI4 ADDRLP4 8+64+12 ADDP4 INDIRP4 ARGP4 CNSTI4 34 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 4061 ;4061: Q_CleanStr(name); ADDRLP4 3340 ARGP4 ADDRGP4 Q_CleanStr CALLP4 pop line 4063 ;4062: // if the player name is a substring ;4063: if (stristr(name, uiInfo.findPlayerName)) { ADDRLP4 3340 ARGP4 ADDRGP4 uiInfo+116392 ARGP4 ADDRLP4 4416 ADDRGP4 stristr CALLP4 ASGNP4 ADDRLP4 4416 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3248 line 4065 ;4064: // add to found server list if we have space (always leave space for a line with the number found) ;4065: if (uiInfo.numFoundPlayerServers < MAX_FOUNDPLAYER_SERVERS-1) { ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 15 GEI4 $3251 line 4067 ;4066: // ;4067: Q_strncpyz(uiInfo.foundPlayerServerAddresses[uiInfo.numFoundPlayerServers-1], ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+117416-64 ADDP4 ARGP4 CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 4070 ;4068: uiInfo.pendingServerStatus.server[i].adrstr, ;4069: sizeof(uiInfo.foundPlayerServerAddresses[0])); ;4070: Q_strncpyz(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1], ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+118440-64 ADDP4 ARGP4 CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+64 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 4073 ;4071: uiInfo.pendingServerStatus.server[i].name, ;4072: sizeof(uiInfo.foundPlayerServerNames[0])); ;4073: uiInfo.numFoundPlayerServers++; ADDRLP4 4420 ADDRGP4 uiInfo+119468 ASGNP4 ADDRLP4 4420 INDIRP4 ADDRLP4 4420 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4074 ;4074: } ADDRGP4 $3252 JUMPV LABELV $3251 line 4075 ;4075: else { line 4077 ;4076: // can't add any more so we're done ;4077: uiInfo.pendingServerStatus.num = uiInfo.serverStatus.numDisplayServers; ADDRGP4 uiInfo+114148 ADDRGP4 uiInfo+99264+10412 INDIRI4 ASGNI4 line 4078 ;4078: } LABELV $3252 line 4079 ;4079: } LABELV $3248 line 4080 ;4080: } LABELV $3235 line 4054 ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $3237 ADDRLP4 4 INDIRI4 ADDRLP4 8+3328 INDIRI4 LTI4 $3234 line 4081 ;4081: Com_sprintf(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1], ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+118440-64 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 $3277 ARGP4 ADDRGP4 uiInfo+114148 INDIRI4 ARGI4 ADDRGP4 $3186 INDIRI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 4085 ;4082: sizeof(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1]), ;4083: "searching %d/%d...", uiInfo.pendingServerStatus.num, numFound); ;4084: // retrieved the server status so reuse this spot ;4085: uiInfo.pendingServerStatus.server[i].valid = qfalse; CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+136 ADDP4 CNSTI4 0 ASGNI4 line 4086 ;4086: } LABELV $3230 line 4087 ;4087: } LABELV $3225 line 4089 ;4088: // if empty pending slot or timed out ;4089: if (!uiInfo.pendingServerStatus.server[i].valid || ADDRLP4 4404 CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ASGNI4 ADDRLP4 4404 INDIRI4 ADDRGP4 uiInfo+114148+4+136 ADDP4 INDIRI4 CNSTI4 0 EQI4 $3292 ADDRLP4 4404 INDIRI4 ADDRGP4 uiInfo+114148+4+128 ADDP4 INDIRI4 ADDRGP4 uiInfo+208 INDIRI4 ADDRGP4 ui_serverStatusTimeOut+12 INDIRI4 SUBI4 GEI4 $3282 LABELV $3292 line 4090 ;4090: uiInfo.pendingServerStatus.server[i].startTime < uiInfo.uiDC.realTime - ui_serverStatusTimeOut.integer) { line 4091 ;4091: if (uiInfo.pendingServerStatus.server[i].valid) { CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+136 ADDP4 INDIRI4 CNSTI4 0 EQI4 $3293 line 4092 ;4092: numTimeOuts++; ADDRLP4 4408 ADDRGP4 $3187 ASGNP4 ADDRLP4 4408 INDIRP4 ADDRLP4 4408 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4093 ;4093: } LABELV $3293 line 4095 ;4094: // reset server status request for this address ;4095: UI_GetServerStatusInfo( uiInfo.pendingServerStatus.server[i].adrstr, NULL ); CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4 ADDP4 ARGP4 CNSTP4 0 ARGP4 ADDRGP4 UI_GetServerStatusInfo CALLI4 pop line 4097 ;4096: // reuse pending slot ;4097: uiInfo.pendingServerStatus.server[i].valid = qfalse; CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+136 ADDP4 CNSTI4 0 ASGNI4 line 4099 ;4098: // if we didn't try to get the status of all servers in the main browser yet ;4099: if (uiInfo.pendingServerStatus.num < uiInfo.serverStatus.numDisplayServers) { ADDRGP4 uiInfo+114148 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 GEI4 $3303 line 4100 ;4100: uiInfo.pendingServerStatus.server[i].startTime = uiInfo.uiDC.realTime; CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+128 ADDP4 ADDRGP4 uiInfo+208 INDIRI4 ASGNI4 line 4101 ;4101: trap_LAN_GetServerAddressString(ui_netSource.integer, uiInfo.serverStatus.displayServers[uiInfo.pendingServerStatus.num], ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 uiInfo+114148 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 trap_LAN_GetServerAddressString CALLV pop line 4103 ;4102: uiInfo.pendingServerStatus.server[i].adrstr, sizeof(uiInfo.pendingServerStatus.server[i].adrstr)); ;4103: trap_LAN_GetServerInfo(ui_netSource.integer, uiInfo.serverStatus.displayServers[uiInfo.pendingServerStatus.num], infoString, sizeof(infoString)); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 uiInfo+114148 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 ADDRLP4 3374 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_LAN_GetServerInfo CALLV pop line 4104 ;4104: Q_strncpyz(uiInfo.pendingServerStatus.server[i].name, Info_ValueForKey(infoString, "hostname"), sizeof(uiInfo.pendingServerStatus.server[0].name)); ADDRLP4 3374 ARGP4 ADDRGP4 $2725 ARGP4 ADDRLP4 4408 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+64 ADDP4 ARGP4 ADDRLP4 4408 INDIRP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 4105 ;4105: uiInfo.pendingServerStatus.server[i].valid = qtrue; CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+136 ADDP4 CNSTI4 1 ASGNI4 line 4106 ;4106: uiInfo.pendingServerStatus.num++; ADDRLP4 4412 ADDRGP4 uiInfo+114148 ASGNP4 ADDRLP4 4412 INDIRP4 ADDRLP4 4412 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4107 ;4107: Com_sprintf(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1], ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+118440-64 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 $3277 ARGP4 ADDRGP4 uiInfo+114148 INDIRI4 ARGI4 ADDRGP4 $3186 INDIRI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 4110 ;4108: sizeof(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1]), ;4109: "searching %d/%d...", uiInfo.pendingServerStatus.num, numFound); ;4110: } LABELV $3303 line 4111 ;4111: } LABELV $3282 line 4112 ;4112: } LABELV $3222 line 4046 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 16 LTI4 $3221 line 4113 ;4113: for (i = 0; i < MAX_SERVERSTATUSREQUESTS; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 LABELV $3341 line 4114 ;4114: if (uiInfo.pendingServerStatus.server[i].valid) { CNSTI4 140 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+114148+4+136 ADDP4 INDIRI4 CNSTI4 0 EQI4 $3345 line 4115 ;4115: break; ADDRGP4 $3343 JUMPV LABELV $3345 line 4117 ;4116: } ;4117: } LABELV $3342 line 4113 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 16 LTI4 $3341 LABELV $3343 line 4119 ;4118: // if still trying to retrieve server status info ;4119: if (i < MAX_SERVERSTATUSREQUESTS) { ADDRLP4 0 INDIRI4 CNSTI4 16 GEI4 $3350 line 4120 ;4120: uiInfo.nextFindPlayerRefresh = uiInfo.uiDC.realTime + 25; ADDRGP4 uiInfo+119472 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 25 ADDI4 ASGNI4 line 4121 ;4121: } ADDRGP4 $3351 JUMPV LABELV $3350 line 4122 ;4122: else { line 4124 ;4123: // add a line that shows the number of servers found ;4124: if (!uiInfo.numFoundPlayerServers) { ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 0 NEI4 $3354 line 4125 ;4125: Com_sprintf(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1], sizeof(uiInfo.foundPlayerServerAddresses[0]), "no servers found"); ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+118440-64 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 $3361 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 4126 ;4126: } ADDRGP4 $3355 JUMPV LABELV $3354 line 4127 ;4127: else { line 4128 ;4128: Com_sprintf(uiInfo.foundPlayerServerNames[uiInfo.numFoundPlayerServers-1], sizeof(uiInfo.foundPlayerServerAddresses[0]), ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+118440-64 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 $3366 ARGP4 ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 1 SUBI4 ARGI4 ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 2 NEI4 $3372 ADDRLP4 4404 ADDRGP4 $112 ASGNP4 ADDRGP4 $3373 JUMPV LABELV $3372 ADDRLP4 4404 ADDRGP4 $3369 ASGNP4 LABELV $3373 ADDRLP4 4404 INDIRP4 ARGP4 ADDRGP4 uiInfo+116392 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 4131 ;4129: "%d server%s found with player %s", uiInfo.numFoundPlayerServers-1, ;4130: uiInfo.numFoundPlayerServers == 2 ? "":"s", uiInfo.findPlayerName); ;4131: } LABELV $3355 line 4132 ;4132: uiInfo.nextFindPlayerRefresh = 0; ADDRGP4 uiInfo+119472 CNSTI4 0 ASGNI4 line 4134 ;4133: // show the server status info for the selected server ;4134: UI_FeederSelection(FEEDER_FINDPLAYER, uiInfo.currentFoundPlayerServer); CNSTF4 1096810496 ARGF4 ADDRGP4 uiInfo+119464 INDIRI4 ARGI4 ADDRGP4 UI_FeederSelection CALLV pop line 4135 ;4135: } LABELV $3351 line 4136 ;4136:} LABELV $3185 endproc UI_BuildFindPlayerList 4424 24 proc UI_BuildServerStatus 8 16 line 4143 ;4137: ;4138:/* ;4139:================== ;4140:UI_BuildServerStatus ;4141:================== ;4142:*/ ;4143:static void UI_BuildServerStatus(qboolean force) { line 4145 ;4144: ;4145: if (uiInfo.nextFindPlayerRefresh) { ADDRGP4 uiInfo+119472 INDIRI4 CNSTI4 0 EQI4 $3377 line 4146 ;4146: return; ADDRGP4 $3376 JUMPV LABELV $3377 line 4148 ;4147: } ;4148: if (!force) { ADDRFP4 0 INDIRI4 CNSTI4 0 NEI4 $3380 line 4149 ;4149: if (!uiInfo.nextServerStatusRefresh || uiInfo.nextServerStatusRefresh > uiInfo.uiDC.realTime) { ADDRGP4 uiInfo+114144 INDIRI4 CNSTI4 0 EQI4 $3387 ADDRGP4 uiInfo+114144 INDIRI4 ADDRGP4 uiInfo+208 INDIRI4 LEI4 $3381 LABELV $3387 line 4150 ;4150: return; ADDRGP4 $3376 JUMPV line 4152 ;4151: } ;4152: } LABELV $3380 line 4153 ;4153: else { line 4154 ;4154: Menu_SetFeederSelection(NULL, FEEDER_SERVERSTATUS, 0, NULL); CNSTP4 0 ARGP4 CNSTI4 13 ARGI4 CNSTI4 0 ARGI4 CNSTP4 0 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 4155 ;4155: uiInfo.serverStatusInfo.numLines = 0; ADDRGP4 uiInfo+110812+3328 CNSTI4 0 ASGNI4 line 4157 ;4156: // reset all server status requests ;4157: trap_LAN_ServerStatus( NULL, NULL, 0); CNSTP4 0 ARGP4 CNSTP4 0 ARGP4 CNSTI4 0 ARGI4 ADDRGP4 trap_LAN_ServerStatus CALLI4 pop line 4158 ;4158: } LABELV $3381 line 4159 ;4159: if (uiInfo.serverStatus.currentServer < 0 || uiInfo.serverStatus.currentServer > uiInfo.serverStatus.numDisplayServers || uiInfo.serverStatus.numDisplayServers == 0) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 uiInfo+99264+2216 INDIRI4 ADDRLP4 0 INDIRI4 LTI4 $3401 ADDRGP4 uiInfo+99264+2216 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 GTI4 $3401 ADDRGP4 uiInfo+99264+10412 INDIRI4 ADDRLP4 0 INDIRI4 NEI4 $3390 LABELV $3401 line 4160 ;4160: return; ADDRGP4 $3376 JUMPV LABELV $3390 line 4162 ;4161: } ;4162: if (UI_GetServerStatusInfo( uiInfo.serverStatusAddress, &uiInfo.serverStatusInfo ) ) { ADDRGP4 uiInfo+110748 ARGP4 ADDRGP4 uiInfo+110812 ARGP4 ADDRLP4 4 ADDRGP4 UI_GetServerStatusInfo CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 EQI4 $3402 line 4163 ;4163: uiInfo.nextServerStatusRefresh = 0; ADDRGP4 uiInfo+114144 CNSTI4 0 ASGNI4 line 4164 ;4164: UI_GetServerStatusInfo( uiInfo.serverStatusAddress, NULL ); ADDRGP4 uiInfo+110748 ARGP4 CNSTP4 0 ARGP4 ADDRGP4 UI_GetServerStatusInfo CALLI4 pop line 4165 ;4165: } ADDRGP4 $3403 JUMPV LABELV $3402 line 4166 ;4166: else { line 4167 ;4167: uiInfo.nextServerStatusRefresh = uiInfo.uiDC.realTime + 500; ADDRGP4 uiInfo+114144 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 500 ADDI4 ASGNI4 line 4168 ;4168: } LABELV $3403 line 4169 ;4169:} LABELV $3376 endproc UI_BuildServerStatus 8 16 proc UI_FeederCount 12 4 line 4176 ;4170: ;4171:/* ;4172:================== ;4173:UI_FeederCount ;4174:================== ;4175:*/ ;4176:static int UI_FeederCount(float feederID) { line 4177 ;4177: if (feederID == FEEDER_HEADS) { ADDRFP4 0 INDIRF4 CNSTF4 0 NEF4 $3411 line 4178 ;4178: return UI_HeadCountByTeam(); ADDRLP4 0 ADDRGP4 UI_HeadCountByTeam CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3411 line 4179 ;4179: } else if (feederID == FEEDER_Q3HEADS) { ADDRFP4 0 INDIRF4 CNSTF4 1094713344 NEF4 $3413 line 4180 ;4180: return uiInfo.q3HeadCount; ADDRGP4 uiInfo+119488 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3413 line 4181 ;4181: } else if (feederID == FEEDER_CINEMATICS) { ADDRFP4 0 INDIRF4 CNSTF4 1097859072 NEF4 $3416 line 4182 ;4182: return uiInfo.movieCount; ADDRGP4 uiInfo+99252 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3416 line 4183 ;4183: } else if (feederID == FEEDER_MAPS || feederID == FEEDER_ALLMAPS) { ADDRLP4 0 ADDRFP4 0 INDIRF4 ASGNF4 ADDRLP4 0 INDIRF4 CNSTF4 1065353216 EQF4 $3421 ADDRLP4 0 INDIRF4 CNSTF4 1082130432 NEF4 $3419 LABELV $3421 line 4184 ;4184: return UI_MapCountByGameType(feederID == FEEDER_MAPS ? qtrue : qfalse); ADDRFP4 0 INDIRF4 CNSTF4 1065353216 NEF4 $3423 ADDRLP4 4 CNSTI4 1 ASGNI4 ADDRGP4 $3424 JUMPV LABELV $3423 ADDRLP4 4 CNSTI4 0 ASGNI4 LABELV $3424 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 8 ADDRGP4 UI_MapCountByGameType CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3419 line 4185 ;4185: } else if (feederID == FEEDER_SERVERS) { ADDRFP4 0 INDIRF4 CNSTF4 1073741824 NEF4 $3425 line 4186 ;4186: return uiInfo.serverStatus.numDisplayServers; ADDRGP4 uiInfo+99264+10412 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3425 line 4187 ;4187: } else if (feederID == FEEDER_SERVERSTATUS) { ADDRFP4 0 INDIRF4 CNSTF4 1095761920 NEF4 $3429 line 4188 ;4188: return uiInfo.serverStatusInfo.numLines; ADDRGP4 uiInfo+110812+3328 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3429 line 4189 ;4189: } else if (feederID == FEEDER_FINDPLAYER) { ADDRFP4 0 INDIRF4 CNSTF4 1096810496 NEF4 $3433 line 4190 ;4190: return uiInfo.numFoundPlayerServers; ADDRGP4 uiInfo+119468 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3433 line 4191 ;4191: } else if (feederID == FEEDER_PLAYER_LIST) { ADDRFP4 0 INDIRF4 CNSTF4 1088421888 NEF4 $3436 line 4192 ;4192: if (uiInfo.uiDC.realTime > uiInfo.playerRefresh) { ADDRGP4 uiInfo+208 INDIRI4 ADDRGP4 uiInfo+78856 INDIRI4 LEI4 $3438 line 4193 ;4193: uiInfo.playerRefresh = uiInfo.uiDC.realTime + 3000; ADDRGP4 uiInfo+78856 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 3000 ADDI4 ASGNI4 line 4194 ;4194: UI_BuildPlayerList(); ADDRGP4 UI_BuildPlayerList CALLV pop line 4195 ;4195: } LABELV $3438 line 4196 ;4196: return uiInfo.playerCount; ADDRGP4 uiInfo+78844 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3436 line 4197 ;4197: } else if (feederID == FEEDER_TEAM_LIST) { ADDRFP4 0 INDIRF4 CNSTF4 1090519040 NEF4 $3445 line 4198 ;4198: if (uiInfo.uiDC.realTime > uiInfo.playerRefresh) { ADDRGP4 uiInfo+208 INDIRI4 ADDRGP4 uiInfo+78856 INDIRI4 LEI4 $3447 line 4199 ;4199: uiInfo.playerRefresh = uiInfo.uiDC.realTime + 3000; ADDRGP4 uiInfo+78856 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 3000 ADDI4 ASGNI4 line 4200 ;4200: UI_BuildPlayerList(); ADDRGP4 UI_BuildPlayerList CALLV pop line 4201 ;4201: } LABELV $3447 line 4202 ;4202: return uiInfo.myTeamCount; ADDRGP4 uiInfo+78848 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3445 line 4203 ;4203: } else if (feederID == FEEDER_MODS) { ADDRFP4 0 INDIRF4 CNSTF4 1091567616 NEF4 $3454 line 4204 ;4204: return uiInfo.modCount; ADDRGP4 uiInfo+97188 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3454 line 4205 ;4205: } else if (feederID == FEEDER_DEMOS) { ADDRFP4 0 INDIRF4 CNSTF4 1092616192 NEF4 $3457 line 4206 ;4206: return uiInfo.demoCount; ADDRGP4 uiInfo+98220 INDIRI4 RETI4 ADDRGP4 $3410 JUMPV LABELV $3457 line 4208 ;4207: } ;4208: return 0; CNSTI4 0 RETI4 LABELV $3410 endproc UI_FeederCount 12 4 proc UI_SelectedMap 8 0 line 4211 ;4209:} ;4210: ;4211:static const char *UI_SelectedMap(int index, int *actual) { line 4213 ;4212: int i, c; ;4213: c = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 4214 ;4214: *actual = 0; ADDRFP4 4 INDIRP4 CNSTI4 0 ASGNI4 line 4215 ;4215: for (i = 0; i < uiInfo.mapCount; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $3464 JUMPV LABELV $3461 line 4216 ;4216: if (uiInfo.mapList[i].active) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+96 ADDP4 INDIRI4 CNSTI4 0 EQI4 $3466 line 4217 ;4217: if (c == index) { ADDRLP4 4 INDIRI4 ADDRFP4 0 INDIRI4 NEI4 $3470 line 4218 ;4218: *actual = i; ADDRFP4 4 INDIRP4 ADDRLP4 0 INDIRI4 ASGNI4 line 4219 ;4219: return uiInfo.mapList[i].mapName; CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228 ADDP4 INDIRP4 RETP4 ADDRGP4 $3460 JUMPV LABELV $3470 line 4220 ;4220: } else { line 4221 ;4221: c++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4222 ;4222: } line 4223 ;4223: } LABELV $3466 line 4224 ;4224: } LABELV $3462 line 4215 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $3464 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LTI4 $3461 line 4225 ;4225: return ""; ADDRGP4 $112 RETP4 LABELV $3460 endproc UI_SelectedMap 8 0 proc UI_SelectedHead 8 0 line 4228 ;4226:} ;4227: ;4228:static const char *UI_SelectedHead(int index, int *actual) { line 4230 ;4229: int i, c; ;4230: c = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 4231 ;4231: *actual = 0; ADDRFP4 4 INDIRP4 CNSTI4 0 ASGNI4 line 4232 ;4232: for (i = 0; i < uiInfo.characterCount; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $3477 JUMPV LABELV $3474 line 4233 ;4233: if (uiInfo.characterList[i].active) { CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+16 ADDP4 INDIRI4 CNSTI4 0 EQI4 $3479 line 4234 ;4234: if (c == index) { ADDRLP4 4 INDIRI4 ADDRFP4 0 INDIRI4 NEI4 $3483 line 4235 ;4235: *actual = i; ADDRFP4 4 INDIRP4 ADDRLP4 0 INDIRI4 ASGNI4 line 4236 ;4236: return uiInfo.characterList[i].name; CNSTI4 24 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 RETP4 ADDRGP4 $3473 JUMPV LABELV $3483 line 4237 ;4237: } else { line 4238 ;4238: c++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4239 ;4239: } line 4240 ;4240: } LABELV $3479 line 4241 ;4241: } LABELV $3475 line 4232 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $3477 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 LTI4 $3474 line 4242 ;4242: return ""; ADDRGP4 $112 RETP4 LABELV $3473 endproc UI_SelectedHead 8 0 proc UI_GetIndexFromSelection 8 0 line 4245 ;4243:} ;4244: ;4245:static int UI_GetIndexFromSelection(int actual) { line 4247 ;4246: int i, c; ;4247: c = 0; ADDRLP4 4 CNSTI4 0 ASGNI4 line 4248 ;4248: for (i = 0; i < uiInfo.mapCount; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRGP4 $3490 JUMPV LABELV $3487 line 4249 ;4249: if (uiInfo.mapList[i].active) { CNSTI4 100 ADDRLP4 0 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+96 ADDP4 INDIRI4 CNSTI4 0 EQI4 $3492 line 4250 ;4250: if (i == actual) { ADDRLP4 0 INDIRI4 ADDRFP4 0 INDIRI4 NEI4 $3496 line 4251 ;4251: return c; ADDRLP4 4 INDIRI4 RETI4 ADDRGP4 $3486 JUMPV LABELV $3496 line 4253 ;4252: } ;4253: c++; ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4254 ;4254: } LABELV $3492 line 4255 ;4255: } LABELV $3488 line 4248 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 LABELV $3490 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 LTI4 $3487 line 4256 ;4256: return 0; CNSTI4 0 RETI4 LABELV $3486 endproc UI_GetIndexFromSelection 8 0 proc UI_UpdatePendingPings 0 4 line 4259 ;4257:} ;4258: ;4259:static void UI_UpdatePendingPings() { line 4260 ;4260: trap_LAN_ResetPings(ui_netSource.integer); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 trap_LAN_ResetPings CALLV pop line 4261 ;4261: uiInfo.serverStatus.refreshActive = qtrue; ADDRGP4 uiInfo+99264+2212 CNSTI4 1 ASGNI4 line 4262 ;4262: uiInfo.serverStatus.refreshtime = uiInfo.uiDC.realTime + 1000; ADDRGP4 uiInfo+99264+2192 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 1000 ADDI4 ASGNI4 line 4264 ;4263: ;4264:} LABELV $3498 endproc UI_UpdatePendingPings 0 4 bss align 1 LABELV $3506 skip 1024 align 1 LABELV $3507 skip 1024 align 1 LABELV $3508 skip 32 data align 4 LABELV $3509 byte 4 -1 align 4 LABELV $3510 byte 4 0 code proc UI_FeederItemText 56 20 line 4266 ;4265: ;4266:static const char *UI_FeederItemText(float feederID, int index, int column, qhandle_t *handle) { line 4272 ;4267: static char info[MAX_STRING_CHARS]; ;4268: static char hostname[1024]; ;4269: static char clientBuff[32]; ;4270: static int lastColumn = -1; ;4271: static int lastTime = 0; ;4272: *handle = -1; ADDRFP4 12 INDIRP4 CNSTI4 -1 ASGNI4 line 4273 ;4273: if (feederID == FEEDER_HEADS) { ADDRFP4 0 INDIRF4 CNSTF4 0 NEF4 $3511 line 4275 ;4274: int actual; ;4275: return UI_SelectedHead(index, &actual); ADDRFP4 4 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRLP4 4 ADDRGP4 UI_SelectedHead CALLP4 ASGNP4 ADDRLP4 4 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV LABELV $3511 line 4276 ;4276: } else if (feederID == FEEDER_Q3HEADS) { ADDRFP4 0 INDIRF4 CNSTF4 1094713344 NEF4 $3513 line 4277 ;4277: if (index >= 0 && index < uiInfo.q3HeadCount) { ADDRLP4 0 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $3514 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+119488 INDIRI4 GEI4 $3514 line 4278 ;4278: return uiInfo.q3HeadNames[index]; ADDRFP4 4 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+119492 ADDP4 RETP4 ADDRGP4 $3505 JUMPV line 4280 ;4279: } ;4280: } else if (feederID == FEEDER_MAPS || feederID == FEEDER_ALLMAPS) { LABELV $3513 ADDRLP4 0 ADDRFP4 0 INDIRF4 ASGNF4 ADDRLP4 0 INDIRF4 CNSTF4 1065353216 EQF4 $3521 ADDRLP4 0 INDIRF4 CNSTF4 1082130432 NEF4 $3519 LABELV $3521 line 4282 ;4281: int actual; ;4282: return UI_SelectedMap(index, &actual); ADDRFP4 4 INDIRI4 ARGI4 ADDRLP4 4 ARGP4 ADDRLP4 8 ADDRGP4 UI_SelectedMap CALLP4 ASGNP4 ADDRLP4 8 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV LABELV $3519 line 4283 ;4283: } else if (feederID == FEEDER_SERVERS) { ADDRFP4 0 INDIRF4 CNSTF4 1073741824 NEF4 $3522 line 4284 ;4284: if (index >= 0 && index < uiInfo.serverStatus.numDisplayServers) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3523 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 GEI4 $3523 line 4286 ;4285: int ping, game; ;4286: if (lastColumn != column || lastTime > uiInfo.uiDC.realTime + 5000) { ADDRGP4 $3509 INDIRI4 ADDRFP4 8 INDIRI4 NEI4 $3531 ADDRGP4 $3510 INDIRI4 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 5000 ADDI4 LEI4 $3528 LABELV $3531 line 4287 ;4287: trap_LAN_GetServerInfo(ui_netSource.integer, uiInfo.serverStatus.displayServers[index], info, MAX_STRING_CHARS); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 ADDRGP4 $3506 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_LAN_GetServerInfo CALLV pop line 4288 ;4288: lastColumn = column; ADDRGP4 $3509 ADDRFP4 8 INDIRI4 ASGNI4 line 4289 ;4289: lastTime = uiInfo.uiDC.realTime; ADDRGP4 $3510 ADDRGP4 uiInfo+208 INDIRI4 ASGNI4 line 4290 ;4290: } LABELV $3528 line 4291 ;4291: ping = atoi(Info_ValueForKey(info, "ping")); ADDRGP4 $3506 ARGP4 ADDRGP4 $3155 ARGP4 ADDRLP4 16 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 16 INDIRP4 ARGP4 ADDRLP4 20 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 8 ADDRLP4 20 INDIRI4 ASGNI4 line 4292 ;4292: if (ping == -1) { ADDRLP4 8 INDIRI4 CNSTI4 -1 NEI4 $3536 line 4295 ;4293: // if we ever see a ping that is out of date, do a server refresh ;4294: // UI_UpdatePendingPings(); ;4295: } LABELV $3536 line 4296 ;4296: switch (column) { ADDRLP4 24 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 LTI4 $3523 ADDRLP4 24 INDIRI4 CNSTI4 4 GTI4 $3523 ADDRLP4 24 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $3564 ADDP4 INDIRP4 JUMPV lit align 4 LABELV $3564 address $3540 address $3553 address $3554 address $3556 address $3560 code LABELV $3540 line 4298 ;4297: case SORT_HOST : ;4298: if (ping <= 0) { ADDRLP4 8 INDIRI4 CNSTI4 0 GTI4 $3541 line 4299 ;4299: return Info_ValueForKey(info, "addr"); ADDRGP4 $3506 ARGP4 ADDRGP4 $2726 ARGP4 ADDRLP4 28 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 28 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV LABELV $3541 line 4300 ;4300: } else { line 4301 ;4301: if ( ui_netSource.integer == AS_LOCAL ) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 0 NEI4 $3543 line 4302 ;4302: Com_sprintf( hostname, sizeof(hostname), "%s [%s]", ADDRGP4 $3506 ARGP4 ADDRGP4 $2725 ARGP4 ADDRLP4 28 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 $3506 ARGP4 ADDRGP4 $3547 ARGP4 ADDRLP4 32 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 32 INDIRP4 ARGP4 ADDRLP4 36 ADDRGP4 atoi CALLI4 ASGNI4 ADDRGP4 $3507 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $3546 ARGP4 ADDRLP4 28 INDIRP4 ARGP4 ADDRLP4 36 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 netnames ADDP4 INDIRP4 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 4305 ;4303: Info_ValueForKey(info, "hostname"), ;4304: netnames[atoi(Info_ValueForKey(info, "nettype"))] ); ;4305: return hostname; ADDRGP4 $3507 RETP4 ADDRGP4 $3505 JUMPV LABELV $3543 line 4307 ;4306: } ;4307: else { line 4308 ;4308: if (atoi(Info_ValueForKey(info, "sv_allowAnonymous")) != 0) { // anonymous server ADDRGP4 $3506 ARGP4 ADDRGP4 $3550 ARGP4 ADDRLP4 28 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 28 INDIRP4 ARGP4 ADDRLP4 32 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 EQI4 $3548 line 4309 ;4309: Com_sprintf( hostname, sizeof(hostname), "(A) %s", ADDRGP4 $3506 ARGP4 ADDRGP4 $2725 ARGP4 ADDRLP4 36 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 $3507 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $3551 ARGP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 4311 ;4310: Info_ValueForKey(info, "hostname")); ;4311: } else { ADDRGP4 $3549 JUMPV LABELV $3548 line 4312 ;4312: Com_sprintf( hostname, sizeof(hostname), "%s", ADDRGP4 $3506 ARGP4 ADDRGP4 $2725 ARGP4 ADDRLP4 36 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 $3507 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 $3552 ARGP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 4314 ;4313: Info_ValueForKey(info, "hostname")); ;4314: } LABELV $3549 line 4315 ;4315: return hostname; ADDRGP4 $3507 RETP4 ADDRGP4 $3505 JUMPV LABELV $3553 line 4318 ;4316: } ;4317: } ;4318: case SORT_MAP : return Info_ValueForKey(info, "mapname"); ADDRGP4 $3506 ARGP4 ADDRGP4 $3112 ARGP4 ADDRLP4 28 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 28 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV LABELV $3554 line 4320 ;4319: case SORT_CLIENTS : ;4320: Com_sprintf( clientBuff, sizeof(clientBuff), "%s (%s)", Info_ValueForKey(info, "clients"), Info_ValueForKey(info, "sv_maxclients")); ADDRGP4 $3506 ARGP4 ADDRGP4 $3058 ARGP4 ADDRLP4 32 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 $3506 ARGP4 ADDRGP4 $1399 ARGP4 ADDRLP4 36 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 $3508 ARGP4 CNSTI4 32 ARGI4 ADDRGP4 $3555 ARGP4 ADDRLP4 32 INDIRP4 ARGP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRGP4 Com_sprintf CALLV pop line 4321 ;4321: return clientBuff; ADDRGP4 $3508 RETP4 ADDRGP4 $3505 JUMPV LABELV $3556 line 4323 ;4322: case SORT_GAME : ;4323: game = atoi(Info_ValueForKey(info, "gametype")); ADDRGP4 $3506 ARGP4 ADDRGP4 $3078 ARGP4 ADDRLP4 40 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 40 INDIRP4 ARGP4 ADDRLP4 44 ADDRGP4 atoi CALLI4 ASGNI4 ADDRLP4 12 ADDRLP4 44 INDIRI4 ASGNI4 line 4324 ;4324: if (game >= 0 && game < numTeamArenaGameTypes) { ADDRLP4 48 ADDRLP4 12 INDIRI4 ASGNI4 ADDRLP4 48 INDIRI4 CNSTI4 0 LTI4 $3557 ADDRLP4 48 INDIRI4 ADDRGP4 numTeamArenaGameTypes INDIRI4 GEI4 $3557 line 4325 ;4325: return teamArenaGameTypes[game]; ADDRLP4 12 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 teamArenaGameTypes ADDP4 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV LABELV $3557 line 4326 ;4326: } else { line 4327 ;4327: return "Unknown"; ADDRGP4 $3559 RETP4 ADDRGP4 $3505 JUMPV LABELV $3560 line 4330 ;4328: } ;4329: case SORT_PING : ;4330: if (ping <= 0) { ADDRLP4 8 INDIRI4 CNSTI4 0 GTI4 $3561 line 4331 ;4331: return "..."; ADDRGP4 $3563 RETP4 ADDRGP4 $3505 JUMPV LABELV $3561 line 4332 ;4332: } else { line 4333 ;4333: return Info_ValueForKey(info, "ping"); ADDRGP4 $3506 ARGP4 ADDRGP4 $3155 ARGP4 ADDRLP4 52 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 52 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV line 4336 ;4334: } ;4335: } ;4336: } line 4337 ;4337: } else if (feederID == FEEDER_SERVERSTATUS) { LABELV $3522 ADDRFP4 0 INDIRF4 CNSTF4 1095761920 NEF4 $3565 line 4338 ;4338: if ( index >= 0 && index < uiInfo.serverStatusInfo.numLines ) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3566 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+110812+3328 INDIRI4 GEI4 $3566 line 4339 ;4339: if ( column >= 0 && column < 4 ) { ADDRLP4 8 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 8 INDIRI4 CNSTI4 0 LTI4 $3566 ADDRLP4 8 INDIRI4 CNSTI4 4 GEI4 $3566 line 4340 ;4340: return uiInfo.serverStatusInfo.lines[index][column]; ADDRFP4 8 INDIRI4 CNSTI4 2 LSHI4 ADDRFP4 4 INDIRI4 CNSTI4 4 LSHI4 ADDRGP4 uiInfo+110812+64 ADDP4 ADDP4 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV line 4342 ;4341: } ;4342: } line 4343 ;4343: } else if (feederID == FEEDER_FINDPLAYER) { LABELV $3565 ADDRFP4 0 INDIRF4 CNSTF4 1096810496 NEF4 $3575 line 4344 ;4344: if ( index >= 0 && index < uiInfo.numFoundPlayerServers ) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3576 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+119468 INDIRI4 GEI4 $3576 line 4346 ;4345: //return uiInfo.foundPlayerServerAddresses[index]; ;4346: return uiInfo.foundPlayerServerNames[index]; ADDRFP4 4 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+118440 ADDP4 RETP4 ADDRGP4 $3505 JUMPV line 4348 ;4347: } ;4348: } else if (feederID == FEEDER_PLAYER_LIST) { LABELV $3575 ADDRFP4 0 INDIRF4 CNSTF4 1088421888 NEF4 $3581 line 4349 ;4349: if (index >= 0 && index < uiInfo.playerCount) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3582 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+78844 INDIRI4 GEI4 $3582 line 4350 ;4350: return uiInfo.playerNames[index]; ADDRFP4 4 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+78872 ADDP4 RETP4 ADDRGP4 $3505 JUMPV line 4352 ;4351: } ;4352: } else if (feederID == FEEDER_TEAM_LIST) { LABELV $3581 ADDRFP4 0 INDIRF4 CNSTF4 1090519040 NEF4 $3587 line 4353 ;4353: if (index >= 0 && index < uiInfo.myTeamCount) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3588 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+78848 INDIRI4 GEI4 $3588 line 4354 ;4354: return uiInfo.teamNames[index]; ADDRFP4 4 INDIRI4 CNSTI4 5 LSHI4 ADDRGP4 uiInfo+80920 ADDP4 RETP4 ADDRGP4 $3505 JUMPV line 4356 ;4355: } ;4356: } else if (feederID == FEEDER_MODS) { LABELV $3587 ADDRFP4 0 INDIRF4 CNSTF4 1091567616 NEF4 $3593 line 4357 ;4357: if (index >= 0 && index < uiInfo.modCount) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3594 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+97188 INDIRI4 GEI4 $3594 line 4358 ;4358: if (uiInfo.modList[index].modDescr && *uiInfo.modList[index].modDescr) { ADDRLP4 8 ADDRFP4 4 INDIRI4 CNSTI4 3 LSHI4 ASGNI4 ADDRLP4 8 INDIRI4 ADDRGP4 uiInfo+96676+4 ADDP4 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3598 ADDRLP4 8 INDIRI4 ADDRGP4 uiInfo+96676+4 ADDP4 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $3598 line 4359 ;4359: return uiInfo.modList[index].modDescr; ADDRFP4 4 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+96676+4 ADDP4 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV LABELV $3598 line 4360 ;4360: } else { line 4361 ;4361: return uiInfo.modList[index].modName; ADDRFP4 4 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+96676 ADDP4 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV line 4364 ;4362: } ;4363: } ;4364: } else if (feederID == FEEDER_CINEMATICS) { LABELV $3593 ADDRFP4 0 INDIRF4 CNSTF4 1097859072 NEF4 $3607 line 4365 ;4365: if (index >= 0 && index < uiInfo.movieCount) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3608 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+99252 INDIRI4 GEI4 $3608 line 4366 ;4366: return uiInfo.movieList[index]; ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+98228 ADDP4 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV line 4368 ;4367: } ;4368: } else if (feederID == FEEDER_DEMOS) { LABELV $3607 ADDRFP4 0 INDIRF4 CNSTF4 1092616192 NEF4 $3613 line 4369 ;4369: if (index >= 0 && index < uiInfo.demoCount) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3615 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+98220 INDIRI4 GEI4 $3615 line 4370 ;4370: return uiInfo.demoList[index]; ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+97196 ADDP4 INDIRP4 RETP4 ADDRGP4 $3505 JUMPV LABELV $3615 line 4372 ;4371: } ;4372: } LABELV $3613 LABELV $3608 LABELV $3594 LABELV $3588 LABELV $3582 LABELV $3576 LABELV $3566 LABELV $3523 LABELV $3514 line 4373 ;4373: return ""; ADDRGP4 $112 RETP4 LABELV $3505 endproc UI_FeederItemText 56 20 proc UI_FeederItemImage 20 8 line 4377 ;4374:} ;4375: ;4376: ;4377:static qhandle_t UI_FeederItemImage(float feederID, int index) { line 4378 ;4378: if (feederID == FEEDER_HEADS) { ADDRFP4 0 INDIRF4 CNSTF4 0 NEF4 $3620 line 4380 ;4379: int actual; ;4380: UI_SelectedHead(index, &actual); ADDRFP4 4 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRGP4 UI_SelectedHead CALLP4 pop line 4381 ;4381: index = actual; ADDRFP4 4 ADDRLP4 0 INDIRI4 ASGNI4 line 4382 ;4382: if (index >= 0 && index < uiInfo.characterCount) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3621 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 GEI4 $3621 line 4383 ;4383: if (uiInfo.characterList[index].headImage == -1) { CNSTI4 24 ADDRFP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+8 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $3625 line 4384 ;4384: uiInfo.characterList[index].headImage = trap_R_RegisterShaderNoMip(uiInfo.characterList[index].imageName); ADDRLP4 8 CNSTI4 24 ADDRFP4 4 INDIRI4 MULI4 ASGNI4 ADDRLP4 8 INDIRI4 ADDRGP4 uiInfo+73448+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 ADDRGP4 uiInfo+73448+8 ADDP4 ADDRLP4 12 INDIRI4 ASGNI4 line 4385 ;4385: } LABELV $3625 line 4386 ;4386: return uiInfo.characterList[index].headImage; CNSTI4 24 ADDRFP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+8 ADDP4 INDIRI4 RETI4 ADDRGP4 $3619 JUMPV line 4388 ;4387: } ;4388: } else if (feederID == FEEDER_Q3HEADS) { LABELV $3620 ADDRFP4 0 INDIRF4 CNSTF4 1094713344 NEF4 $3635 line 4389 ;4389: if (index >= 0 && index < uiInfo.q3HeadCount) { ADDRLP4 0 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $3636 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+119488 INDIRI4 GEI4 $3636 line 4390 ;4390: return uiInfo.q3HeadIcons[index]; ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+135876 ADDP4 INDIRI4 RETI4 ADDRGP4 $3619 JUMPV line 4392 ;4391: } ;4392: } else if (feederID == FEEDER_ALLMAPS || feederID == FEEDER_MAPS) { LABELV $3635 ADDRLP4 0 ADDRFP4 0 INDIRF4 ASGNF4 ADDRLP4 0 INDIRF4 CNSTF4 1082130432 EQF4 $3643 ADDRLP4 0 INDIRF4 CNSTF4 1065353216 NEF4 $3641 LABELV $3643 line 4394 ;4393: int actual; ;4394: UI_SelectedMap(index, &actual); ADDRFP4 4 INDIRI4 ARGI4 ADDRLP4 4 ARGP4 ADDRGP4 UI_SelectedMap CALLP4 pop line 4395 ;4395: index = actual; ADDRFP4 4 ADDRLP4 4 INDIRI4 ASGNI4 line 4396 ;4396: if (index >= 0 && index < uiInfo.mapCount) { ADDRLP4 8 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 8 INDIRI4 CNSTI4 0 LTI4 $3644 ADDRLP4 8 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 GEI4 $3644 line 4397 ;4397: if (uiInfo.mapList[index].levelShot == -1) { CNSTI4 100 ADDRFP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+92 ADDP4 INDIRI4 CNSTI4 -1 NEI4 $3647 line 4398 ;4398: uiInfo.mapList[index].levelShot = trap_R_RegisterShaderNoMip(uiInfo.mapList[index].imageName); ADDRLP4 12 CNSTI4 100 ADDRFP4 4 INDIRI4 MULI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+83228+8 ADDP4 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 ADDRGP4 uiInfo+83228+92 ADDP4 ADDRLP4 16 INDIRI4 ASGNI4 line 4399 ;4399: } LABELV $3647 line 4400 ;4400: return uiInfo.mapList[index].levelShot; CNSTI4 100 ADDRFP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+92 ADDP4 INDIRI4 RETI4 ADDRGP4 $3619 JUMPV LABELV $3644 line 4402 ;4401: } ;4402: } LABELV $3641 LABELV $3636 LABELV $3621 line 4403 ;4403: return 0; CNSTI4 0 RETI4 LABELV $3619 endproc UI_FeederItemImage 20 8 bss align 1 LABELV $3658 skip 1024 code proc UI_FeederSelection 40 24 line 4406 ;4404:} ;4405: ;4406:static void UI_FeederSelection(float feederID, int index) { line 4408 ;4407: static char info[MAX_STRING_CHARS]; ;4408: if (feederID == FEEDER_HEADS) { ADDRFP4 0 INDIRF4 CNSTF4 0 NEF4 $3659 line 4410 ;4409: int actual; ;4410: UI_SelectedHead(index, &actual); ADDRFP4 4 INDIRI4 ARGI4 ADDRLP4 0 ARGP4 ADDRGP4 UI_SelectedHead CALLP4 pop line 4411 ;4411: index = actual; ADDRFP4 4 ADDRLP4 0 INDIRI4 ASGNI4 line 4412 ;4412: if (index >= 0 && index < uiInfo.characterCount) { ADDRLP4 4 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 LTI4 $3660 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 GEI4 $3660 line 4413 ;4413: trap_Cvar_Set( "team_model", va("%s", uiInfo.characterList[index].base)); ADDRGP4 $3552 ARGP4 CNSTI4 24 ADDRFP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+12 ADDP4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $969 ARGP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4414 ;4414: trap_Cvar_Set( "team_headmodel", va("*%s", uiInfo.characterList[index].name)); ADDRGP4 $3666 ARGP4 CNSTI4 24 ADDRFP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $970 ARGP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4415 ;4415: updateModel = qtrue; ADDRGP4 updateModel CNSTI4 1 ASGNI4 line 4416 ;4416: } line 4417 ;4417: } else if (feederID == FEEDER_Q3HEADS) { ADDRGP4 $3660 JUMPV LABELV $3659 ADDRFP4 0 INDIRF4 CNSTF4 1094713344 NEF4 $3668 line 4418 ;4418: if (index >= 0 && index < uiInfo.q3HeadCount) { ADDRLP4 0 ADDRFP4 4 INDIRI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 0 LTI4 $3669 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+119488 INDIRI4 GEI4 $3669 line 4419 ;4419: trap_Cvar_Set( "model", uiInfo.q3HeadNames[index]); ADDRGP4 $965 ARGP4 ADDRFP4 4 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+119492 ADDP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4420 ;4420: trap_Cvar_Set( "headmodel", uiInfo.q3HeadNames[index]); ADDRGP4 $966 ARGP4 ADDRFP4 4 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+119492 ADDP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4421 ;4421: updateModel = qtrue; ADDRGP4 updateModel CNSTI4 1 ASGNI4 line 4422 ;4422: } line 4423 ;4423: } else if (feederID == FEEDER_MAPS || feederID == FEEDER_ALLMAPS) { ADDRGP4 $3669 JUMPV LABELV $3668 ADDRLP4 0 ADDRFP4 0 INDIRF4 ASGNF4 ADDRLP4 0 INDIRF4 CNSTF4 1065353216 EQF4 $3677 ADDRLP4 0 INDIRF4 CNSTF4 1082130432 NEF4 $3675 LABELV $3677 line 4425 ;4424: int actual, map; ;4425: map = (feederID == FEEDER_ALLMAPS) ? ui_currentNetMap.integer : ui_currentMap.integer; ADDRFP4 0 INDIRF4 CNSTF4 1082130432 NEF4 $3681 ADDRLP4 12 ADDRGP4 ui_currentNetMap+12 INDIRI4 ASGNI4 ADDRGP4 $3682 JUMPV LABELV $3681 ADDRLP4 12 ADDRGP4 ui_currentMap+12 INDIRI4 ASGNI4 LABELV $3682 ADDRLP4 8 ADDRLP4 12 INDIRI4 ASGNI4 line 4426 ;4426: if (uiInfo.mapList[map].cinematic >= 0) { CNSTI4 100 ADDRLP4 8 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 CNSTI4 0 LTI4 $3683 line 4427 ;4427: trap_CIN_StopCinematic(uiInfo.mapList[map].cinematic); CNSTI4 100 ADDRLP4 8 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 4428 ;4428: uiInfo.mapList[map].cinematic = -1; CNSTI4 100 ADDRLP4 8 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 CNSTI4 -1 ASGNI4 line 4429 ;4429: } LABELV $3683 line 4430 ;4430: UI_SelectedMap(index, &actual); ADDRFP4 4 INDIRI4 ARGI4 ADDRLP4 4 ARGP4 ADDRGP4 UI_SelectedMap CALLP4 pop line 4431 ;4431: trap_Cvar_Set("ui_mapIndex", va("%d", index)); ADDRGP4 $716 ARGP4 ADDRFP4 4 INDIRI4 ARGI4 ADDRLP4 16 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $2227 ARGP4 ADDRLP4 16 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4432 ;4432: ui_mapIndex.integer = index; ADDRGP4 ui_mapIndex+12 ADDRFP4 4 INDIRI4 ASGNI4 line 4434 ;4433: ;4434: if (feederID == FEEDER_MAPS) { ADDRFP4 0 INDIRF4 CNSTF4 1065353216 NEF4 $3692 line 4435 ;4435: ui_currentMap.integer = actual; ADDRGP4 ui_currentMap+12 ADDRLP4 4 INDIRI4 ASGNI4 line 4436 ;4436: trap_Cvar_Set("ui_currentMap", va("%d", actual)); ADDRGP4 $716 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 20 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $891 ARGP4 ADDRLP4 20 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4437 ;4437: uiInfo.mapList[ui_currentMap.integer].cinematic = trap_CIN_PlayCinematic(va("%s.roq", uiInfo.mapList[ui_currentMap.integer].mapLoadName), 0, 0, 0, 0, (CIN_loop | CIN_silent) ); ADDRGP4 $793 ARGP4 ADDRLP4 24 CNSTI4 100 ASGNI4 ADDRLP4 24 INDIRI4 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 28 INDIRP4 ARGP4 ADDRLP4 32 CNSTI4 0 ASGNI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 CNSTI4 10 ARGI4 ADDRLP4 36 ADDRGP4 trap_CIN_PlayCinematic CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 ADDRLP4 36 INDIRI4 ASGNI4 line 4438 ;4438: UI_LoadBestScores(uiInfo.mapList[ui_currentMap.integer].mapLoadName, uiInfo.gameTypes[ui_gameType.integer].gtEnum); CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_LoadBestScores CALLV pop line 4439 ;4439: trap_Cvar_Set("ui_opponentModel", uiInfo.mapList[ui_currentMap.integer].opponentName); ADDRGP4 $1132 ARGP4 CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+12 ADDP4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4440 ;4440: updateOpponentModel = qtrue; ADDRGP4 updateOpponentModel CNSTI4 1 ASGNI4 line 4441 ;4441: } else { ADDRGP4 $3676 JUMPV LABELV $3692 line 4442 ;4442: ui_currentNetMap.integer = actual; ADDRGP4 ui_currentNetMap+12 ADDRLP4 4 INDIRI4 ASGNI4 line 4443 ;4443: trap_Cvar_Set("ui_currentNetMap", va("%d", actual)); ADDRGP4 $716 ARGP4 ADDRLP4 4 INDIRI4 ARGI4 ADDRLP4 20 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $889 ARGP4 ADDRLP4 20 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4444 ;4444: uiInfo.mapList[ui_currentNetMap.integer].cinematic = trap_CIN_PlayCinematic(va("%s.roq", uiInfo.mapList[ui_currentNetMap.integer].mapLoadName), 0, 0, 0, 0, (CIN_loop | CIN_silent) ); ADDRGP4 $793 ARGP4 ADDRLP4 24 CNSTI4 100 ASGNI4 ADDRLP4 24 INDIRI4 ADDRGP4 ui_currentNetMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 28 INDIRP4 ARGP4 ADDRLP4 32 CNSTI4 0 ASGNI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 CNSTI4 10 ARGI4 ADDRLP4 36 ADDRGP4 trap_CIN_PlayCinematic CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 ADDRGP4 ui_currentNetMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 ADDRLP4 36 INDIRI4 ASGNI4 line 4445 ;4445: } line 4447 ;4446: ;4447: } else if (feederID == FEEDER_SERVERS) { ADDRGP4 $3676 JUMPV LABELV $3675 ADDRFP4 0 INDIRF4 CNSTF4 1073741824 NEF4 $3717 line 4448 ;4448: const char *mapName = NULL; ADDRLP4 4 CNSTP4 0 ASGNP4 line 4449 ;4449: uiInfo.serverStatus.currentServer = index; ADDRGP4 uiInfo+99264+2216 ADDRFP4 4 INDIRI4 ASGNI4 line 4450 ;4450: trap_LAN_GetServerInfo(ui_netSource.integer, uiInfo.serverStatus.displayServers[index], info, MAX_STRING_CHARS); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRFP4 4 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 uiInfo+99264+2220 ADDP4 INDIRI4 ARGI4 ADDRGP4 $3658 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_LAN_GetServerInfo CALLV pop line 4451 ;4451: uiInfo.serverStatus.currentServerPreview = trap_R_RegisterShaderNoMip(va("levelshots/%s", Info_ValueForKey(info, "mapname"))); ADDRGP4 $3658 ARGP4 ADDRGP4 $3112 ARGP4 ADDRLP4 8 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 $1043 ARGP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 12 INDIRP4 ARGP4 ADDRLP4 16 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+99264+10428 ADDRLP4 16 INDIRI4 ASGNI4 line 4452 ;4452: if (uiInfo.serverStatus.currentServerCinematic >= 0) { ADDRGP4 uiInfo+99264+10432 INDIRI4 CNSTI4 0 LTI4 $3726 line 4453 ;4453: trap_CIN_StopCinematic(uiInfo.serverStatus.currentServerCinematic); ADDRGP4 uiInfo+99264+10432 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 4454 ;4454: uiInfo.serverStatus.currentServerCinematic = -1; ADDRGP4 uiInfo+99264+10432 CNSTI4 -1 ASGNI4 line 4455 ;4455: } LABELV $3726 line 4456 ;4456: mapName = Info_ValueForKey(info, "mapname"); ADDRGP4 $3658 ARGP4 ADDRGP4 $3112 ARGP4 ADDRLP4 20 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 20 INDIRP4 ASGNP4 line 4457 ;4457: if (mapName && *mapName) { ADDRLP4 24 ADDRLP4 4 INDIRP4 ASGNP4 ADDRLP4 24 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3718 ADDRLP4 24 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $3718 line 4458 ;4458: uiInfo.serverStatus.currentServerCinematic = trap_CIN_PlayCinematic(va("%s.roq", mapName), 0, 0, 0, 0, (CIN_loop | CIN_silent) ); ADDRGP4 $793 ARGP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 28 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 28 INDIRP4 ARGP4 ADDRLP4 32 CNSTI4 0 ASGNI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 ADDRLP4 32 INDIRI4 ARGI4 CNSTI4 10 ARGI4 ADDRLP4 36 ADDRGP4 trap_CIN_PlayCinematic CALLI4 ASGNI4 ADDRGP4 uiInfo+99264+10432 ADDRLP4 36 INDIRI4 ASGNI4 line 4459 ;4459: } line 4460 ;4460: } else if (feederID == FEEDER_SERVERSTATUS) { ADDRGP4 $3718 JUMPV LABELV $3717 ADDRFP4 0 INDIRF4 CNSTF4 1095761920 NEF4 $3738 line 4462 ;4461: // ;4462: } else if (feederID == FEEDER_FINDPLAYER) { ADDRGP4 $3739 JUMPV LABELV $3738 ADDRFP4 0 INDIRF4 CNSTF4 1096810496 NEF4 $3740 line 4463 ;4463: uiInfo.currentFoundPlayerServer = index; ADDRGP4 uiInfo+119464 ADDRFP4 4 INDIRI4 ASGNI4 line 4465 ;4464: // ;4465: if ( index < uiInfo.numFoundPlayerServers-1) { ADDRFP4 4 INDIRI4 ADDRGP4 uiInfo+119468 INDIRI4 CNSTI4 1 SUBI4 GEI4 $3741 line 4467 ;4466: // build a new server status for this server ;4467: Q_strncpyz(uiInfo.serverStatusAddress, uiInfo.foundPlayerServerAddresses[uiInfo.currentFoundPlayerServer], sizeof(uiInfo.serverStatusAddress)); ADDRGP4 uiInfo+110748 ARGP4 ADDRGP4 uiInfo+119464 INDIRI4 CNSTI4 6 LSHI4 ADDRGP4 uiInfo+117416 ADDP4 ARGP4 CNSTI4 64 ARGI4 ADDRGP4 Q_strncpyz CALLV pop line 4468 ;4468: Menu_SetFeederSelection(NULL, FEEDER_SERVERSTATUS, 0, NULL); CNSTP4 0 ARGP4 CNSTI4 13 ARGI4 CNSTI4 0 ARGI4 CNSTP4 0 ARGP4 ADDRGP4 Menu_SetFeederSelection CALLV pop line 4469 ;4469: UI_BuildServerStatus(qtrue); CNSTI4 1 ARGI4 ADDRGP4 UI_BuildServerStatus CALLV pop line 4470 ;4470: } line 4471 ;4471: } else if (feederID == FEEDER_PLAYER_LIST) { ADDRGP4 $3741 JUMPV LABELV $3740 ADDRFP4 0 INDIRF4 CNSTF4 1088421888 NEF4 $3750 line 4472 ;4472: uiInfo.playerIndex = index; ADDRGP4 uiInfo+78860 ADDRFP4 4 INDIRI4 ASGNI4 line 4473 ;4473: } else if (feederID == FEEDER_TEAM_LIST) { ADDRGP4 $3751 JUMPV LABELV $3750 ADDRFP4 0 INDIRF4 CNSTF4 1090519040 NEF4 $3753 line 4474 ;4474: uiInfo.teamIndex = index; ADDRGP4 uiInfo+78852 ADDRFP4 4 INDIRI4 ASGNI4 line 4475 ;4475: } else if (feederID == FEEDER_MODS) { ADDRGP4 $3754 JUMPV LABELV $3753 ADDRFP4 0 INDIRF4 CNSTF4 1091567616 NEF4 $3756 line 4476 ;4476: uiInfo.modIndex = index; ADDRGP4 uiInfo+97192 ADDRFP4 4 INDIRI4 ASGNI4 line 4477 ;4477: } else if (feederID == FEEDER_CINEMATICS) { ADDRGP4 $3757 JUMPV LABELV $3756 ADDRFP4 0 INDIRF4 CNSTF4 1097859072 NEF4 $3759 line 4478 ;4478: uiInfo.movieIndex = index; ADDRGP4 uiInfo+99256 ADDRFP4 4 INDIRI4 ASGNI4 line 4479 ;4479: if (uiInfo.previewMovie >= 0) { ADDRGP4 uiInfo+99260 INDIRI4 CNSTI4 0 LTI4 $3762 line 4480 ;4480: trap_CIN_StopCinematic(uiInfo.previewMovie); ADDRGP4 uiInfo+99260 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 4481 ;4481: } LABELV $3762 line 4482 ;4482: uiInfo.previewMovie = -1; ADDRGP4 uiInfo+99260 CNSTI4 -1 ASGNI4 line 4483 ;4483: } else if (feederID == FEEDER_DEMOS) { ADDRGP4 $3760 JUMPV LABELV $3759 ADDRFP4 0 INDIRF4 CNSTF4 1092616192 NEF4 $3767 line 4484 ;4484: uiInfo.demoIndex = index; ADDRGP4 uiInfo+98224 ADDRFP4 4 INDIRI4 ASGNI4 line 4485 ;4485: } LABELV $3767 LABELV $3760 LABELV $3757 LABELV $3754 LABELV $3751 LABELV $3741 LABELV $3739 LABELV $3718 LABELV $3676 LABELV $3669 LABELV $3660 line 4486 ;4486:} LABELV $3657 endproc UI_FeederSelection 40 24 proc Team_Parse 72 12 line 4488 ;4487: ;4488:static qboolean Team_Parse(char **p) { line 4493 ;4489: char *token; ;4490: const char *tempStr; ;4491: int i; ;4492: ;4493: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 12 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 12 INDIRP4 ASGNP4 line 4495 ;4494: ;4495: if (token[0] != '{') { ADDRLP4 4 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 EQI4 $3774 line 4496 ;4496: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3770 JUMPV LABELV $3773 line 4499 ;4497: } ;4498: ;4499: while ( 1 ) { line 4501 ;4500: ;4501: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 16 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 16 INDIRP4 ASGNP4 line 4503 ;4502: ;4503: if (Q_stricmp(token, "}") == 0) { ADDRLP4 4 INDIRP4 ARGP4 ADDRGP4 $452 ARGP4 ADDRLP4 20 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 CNSTI4 0 NEI4 $3776 line 4504 ;4504: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $3770 JUMPV LABELV $3776 line 4507 ;4505: } ;4506: ;4507: if ( !token || token[0] == 0 ) { ADDRLP4 4 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3780 ADDRLP4 4 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3778 LABELV $3780 line 4508 ;4508: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3770 JUMPV LABELV $3778 line 4511 ;4509: } ;4510: ;4511: if (token[0] == '{') { ADDRLP4 4 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 NEI4 $3781 line 4513 ;4512: // seven tokens per line, team name and icon, and 5 team member names ;4513: if (!String_Parse(p, &uiInfo.teamList[uiInfo.teamCount].teamName) || !String_Parse(p, &tempStr)) { ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 44 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 ARGP4 ADDRLP4 28 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 EQI4 $3787 ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 8 ARGP4 ADDRLP4 32 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 NEI4 $3783 LABELV $3787 line 4514 ;4514: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3770 JUMPV LABELV $3783 line 4518 ;4515: } ;4516: ;4517: ;4518: uiInfo.teamList[uiInfo.teamCount].imageName = tempStr; CNSTI4 44 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+4 ADDP4 ADDRLP4 8 INDIRP4 ASGNP4 line 4519 ;4519: uiInfo.teamList[uiInfo.teamCount].teamIcon = trap_R_RegisterShaderNoMip(uiInfo.teamList[uiInfo.teamCount].imageName); ADDRLP4 36 CNSTI4 44 ASGNI4 ADDRLP4 36 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+28 ADDP4 ADDRLP4 40 INDIRI4 ASGNI4 line 4520 ;4520: uiInfo.teamList[uiInfo.teamCount].teamIcon_Metal = trap_R_RegisterShaderNoMip(va("%s_metal",uiInfo.teamList[uiInfo.teamCount].imageName)); ADDRGP4 $769 ARGP4 ADDRLP4 44 CNSTI4 44 ASGNI4 ADDRLP4 44 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 48 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 48 INDIRP4 ARGP4 ADDRLP4 52 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 44 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+32 ADDP4 ADDRLP4 52 INDIRI4 ASGNI4 line 4521 ;4521: uiInfo.teamList[uiInfo.teamCount].teamIcon_Name = trap_R_RegisterShaderNoMip(va("%s_name", uiInfo.teamList[uiInfo.teamCount].imageName)); ADDRGP4 $774 ARGP4 ADDRLP4 56 CNSTI4 44 ASGNI4 ADDRLP4 56 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 60 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 60 INDIRP4 ARGP4 ADDRLP4 64 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 56 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+36 ADDP4 ADDRLP4 64 INDIRI4 ASGNI4 line 4523 ;4522: ;4523: uiInfo.teamList[uiInfo.teamCount].cinematic = -1; CNSTI4 44 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 CNSTI4 -1 ASGNI4 line 4525 ;4524: ;4525: for (i = 0; i < TEAM_MEMBERS; i++) { ADDRLP4 0 CNSTI4 0 ASGNI4 LABELV $3812 line 4526 ;4526: uiInfo.teamList[uiInfo.teamCount].teamMembers[i] = NULL; ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 44 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+8 ADDP4 ADDP4 CNSTP4 0 ASGNP4 line 4527 ;4527: if (!String_Parse(p, &uiInfo.teamList[uiInfo.teamCount].teamMembers[i])) { ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 0 INDIRI4 CNSTI4 2 LSHI4 CNSTI4 44 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+8 ADDP4 ADDP4 ARGP4 ADDRLP4 68 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 68 INDIRI4 CNSTI4 0 NEI4 $3819 line 4528 ;4528: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3770 JUMPV LABELV $3819 line 4530 ;4529: } ;4530: } LABELV $3813 line 4525 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 5 LTI4 $3812 line 4532 ;4531: ;4532: Com_Printf("Loaded team %s with team icon %s.\n", uiInfo.teamList[uiInfo.teamCount].teamName, tempStr); ADDRGP4 $3824 ARGP4 CNSTI4 44 ADDRGP4 uiInfo+75756 INDIRI4 MULI4 ADDRGP4 uiInfo+75760 ADDP4 INDIRP4 ARGP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4533 ;4533: if (uiInfo.teamCount < MAX_TEAMS) { ADDRGP4 uiInfo+75756 INDIRI4 CNSTI4 64 GEI4 $3827 line 4534 ;4534: uiInfo.teamCount++; ADDRLP4 68 ADDRGP4 uiInfo+75756 ASGNP4 ADDRLP4 68 INDIRP4 ADDRLP4 68 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4535 ;4535: } else { ADDRGP4 $3828 JUMPV LABELV $3827 line 4536 ;4536: Com_Printf("Too many teams, last team replaced!\n"); ADDRGP4 $3831 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4537 ;4537: } LABELV $3828 line 4538 ;4538: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 68 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 68 INDIRP4 ASGNP4 line 4539 ;4539: if (token[0] != '}') { ADDRLP4 4 INDIRP4 INDIRI1 CVII4 1 CNSTI4 125 EQI4 $3832 line 4540 ;4540: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3770 JUMPV LABELV $3832 line 4542 ;4541: } ;4542: } LABELV $3781 line 4543 ;4543: } LABELV $3774 line 4499 ADDRGP4 $3773 JUMPV line 4545 ;4544: ;4545: return qfalse; CNSTI4 0 RETI4 LABELV $3770 endproc Team_Parse 72 12 proc Character_Parse 68 12 line 4548 ;4546:} ;4547: ;4548:static qboolean Character_Parse(char **p) { line 4552 ;4549: char *token; ;4550: const char *tempStr; ;4551: ;4552: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 8 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 8 INDIRP4 ASGNP4 line 4554 ;4553: ;4554: if (token[0] != '{') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 EQI4 $3838 line 4555 ;4555: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3834 JUMPV LABELV $3837 line 4559 ;4556: } ;4557: ;4558: ;4559: while ( 1 ) { line 4560 ;4560: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 12 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 12 INDIRP4 ASGNP4 line 4562 ;4561: ;4562: if (Q_stricmp(token, "}") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $452 ARGP4 ADDRLP4 16 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 16 INDIRI4 CNSTI4 0 NEI4 $3840 line 4563 ;4563: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $3834 JUMPV LABELV $3840 line 4566 ;4564: } ;4565: ;4566: if ( !token || token[0] == 0 ) { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3844 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3842 LABELV $3844 line 4567 ;4567: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3834 JUMPV LABELV $3842 line 4570 ;4568: } ;4569: ;4570: if (token[0] == '{') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 NEI4 $3845 line 4572 ;4571: // two tokens per line, character name and sex ;4572: if (!String_Parse(p, &uiInfo.characterList[uiInfo.characterCount].name) || !String_Parse(p, &tempStr)) { ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 24 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 ARGP4 ADDRLP4 24 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 EQI4 $3851 ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 4 ARGP4 ADDRLP4 28 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 NEI4 $3847 LABELV $3851 line 4573 ;4573: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3834 JUMPV LABELV $3847 line 4576 ;4574: } ;4575: ;4576: uiInfo.characterList[uiInfo.characterCount].headImage = -1; CNSTI4 24 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+8 ADDP4 CNSTI4 -1 ASGNI4 line 4577 ;4577: uiInfo.characterList[uiInfo.characterCount].imageName = String_Alloc(va("models/players/heads/%s/icon_default.tga", uiInfo.characterList[uiInfo.characterCount].name)); ADDRGP4 $3858 ARGP4 ADDRLP4 32 CNSTI4 24 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 ARGP4 ADDRLP4 36 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 String_Alloc CALLP4 ASGNP4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+4 ADDP4 ADDRLP4 40 INDIRP4 ASGNP4 line 4579 ;4578: ;4579: if (tempStr && (!Q_stricmp(tempStr, "female"))) { ADDRLP4 44 ADDRLP4 4 INDIRP4 ASGNP4 ADDRLP4 44 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3861 ADDRLP4 44 INDIRP4 ARGP4 ADDRGP4 $3863 ARGP4 ADDRLP4 48 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 48 INDIRI4 CNSTI4 0 NEI4 $3861 line 4580 ;4580: uiInfo.characterList[uiInfo.characterCount].base = String_Alloc(va("Janet")); ADDRGP4 $3867 ARGP4 ADDRLP4 52 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 52 INDIRP4 ARGP4 ADDRLP4 56 ADDRGP4 String_Alloc CALLP4 ASGNP4 CNSTI4 24 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+12 ADDP4 ADDRLP4 56 INDIRP4 ASGNP4 line 4581 ;4581: } else if (tempStr && (!Q_stricmp(tempStr, "male"))) { ADDRGP4 $3862 JUMPV LABELV $3861 ADDRLP4 52 ADDRLP4 4 INDIRP4 ASGNP4 ADDRLP4 52 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3868 ADDRLP4 52 INDIRP4 ARGP4 ADDRGP4 $3870 ARGP4 ADDRLP4 56 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 56 INDIRI4 CNSTI4 0 NEI4 $3868 line 4582 ;4582: uiInfo.characterList[uiInfo.characterCount].base = String_Alloc(va("James")); ADDRGP4 $1095 ARGP4 ADDRLP4 60 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 60 INDIRP4 ARGP4 ADDRLP4 64 ADDRGP4 String_Alloc CALLP4 ASGNP4 CNSTI4 24 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+12 ADDP4 ADDRLP4 64 INDIRP4 ASGNP4 line 4583 ;4583: } else { ADDRGP4 $3869 JUMPV LABELV $3868 line 4584 ;4584: uiInfo.characterList[uiInfo.characterCount].base = String_Alloc(va("%s",tempStr)); ADDRGP4 $3552 ARGP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 60 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 60 INDIRP4 ARGP4 ADDRLP4 64 ADDRGP4 String_Alloc CALLP4 ASGNP4 CNSTI4 24 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+12 ADDP4 ADDRLP4 64 INDIRP4 ASGNP4 line 4585 ;4585: } LABELV $3869 LABELV $3862 line 4587 ;4586: ;4587: Com_Printf("Loaded %s character %s.\n", uiInfo.characterList[uiInfo.characterCount].base, uiInfo.characterList[uiInfo.characterCount].name); ADDRGP4 $3877 ARGP4 ADDRLP4 60 CNSTI4 24 ASGNI4 ADDRLP4 60 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448+12 ADDP4 INDIRP4 ARGP4 ADDRLP4 60 INDIRI4 ADDRGP4 uiInfo+73440 INDIRI4 MULI4 ADDRGP4 uiInfo+73448 ADDP4 INDIRP4 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4588 ;4588: if (uiInfo.characterCount < MAX_HEADS) { ADDRGP4 uiInfo+73440 INDIRI4 CNSTI4 64 GEI4 $3883 line 4589 ;4589: uiInfo.characterCount++; ADDRLP4 64 ADDRGP4 uiInfo+73440 ASGNP4 ADDRLP4 64 INDIRP4 ADDRLP4 64 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4590 ;4590: } else { ADDRGP4 $3884 JUMPV LABELV $3883 line 4591 ;4591: Com_Printf("Too many characters, last character replaced!\n"); ADDRGP4 $3887 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4592 ;4592: } LABELV $3884 line 4594 ;4593: ;4594: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 64 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 64 INDIRP4 ASGNP4 line 4595 ;4595: if (token[0] != '}') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 125 EQI4 $3888 line 4596 ;4596: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3834 JUMPV LABELV $3888 line 4598 ;4597: } ;4598: } LABELV $3845 line 4599 ;4599: } LABELV $3838 line 4559 ADDRGP4 $3837 JUMPV line 4601 ;4600: ;4601: return qfalse; CNSTI4 0 RETI4 LABELV $3834 endproc Character_Parse 68 12 proc Alias_Parse 40 12 line 4605 ;4602:} ;4603: ;4604: ;4605:static qboolean Alias_Parse(char **p) { line 4608 ;4606: char *token; ;4607: ;4608: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 4 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 4 INDIRP4 ASGNP4 line 4610 ;4609: ;4610: if (token[0] != '{') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 EQI4 $3894 line 4611 ;4611: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3890 JUMPV LABELV $3893 line 4614 ;4612: } ;4613: ;4614: while ( 1 ) { line 4615 ;4615: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 8 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 8 INDIRP4 ASGNP4 line 4617 ;4616: ;4617: if (Q_stricmp(token, "}") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $452 ARGP4 ADDRLP4 12 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 CNSTI4 0 NEI4 $3896 line 4618 ;4618: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $3890 JUMPV LABELV $3896 line 4621 ;4619: } ;4620: ;4621: if ( !token || token[0] == 0 ) { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3900 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3898 LABELV $3900 line 4622 ;4622: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3890 JUMPV LABELV $3898 line 4625 ;4623: } ;4624: ;4625: if (token[0] == '{') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 NEI4 $3901 line 4627 ;4626: // three tokens per line, character name, bot alias, and preferred action a - all purpose, d - defense, o - offense ;4627: if (!String_Parse(p, &uiInfo.aliasList[uiInfo.aliasCount].name) || !String_Parse(p, &uiInfo.aliasList[uiInfo.aliasCount].ai) || !String_Parse(p, &uiInfo.aliasList[uiInfo.aliasCount].action)) { ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 12 ADDRGP4 uiInfo+74984 INDIRI4 MULI4 ADDRGP4 uiInfo+74988 ADDP4 ARGP4 ADDRLP4 20 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 CNSTI4 0 EQI4 $3914 ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 12 ADDRGP4 uiInfo+74984 INDIRI4 MULI4 ADDRGP4 uiInfo+74988+4 ADDP4 ARGP4 ADDRLP4 24 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 EQI4 $3914 ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 12 ADDRGP4 uiInfo+74984 INDIRI4 MULI4 ADDRGP4 uiInfo+74988+8 ADDP4 ARGP4 ADDRLP4 28 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 NEI4 $3903 LABELV $3914 line 4628 ;4628: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3890 JUMPV LABELV $3903 line 4631 ;4629: } ;4630: ;4631: Com_Printf("Loaded character alias %s using character ai %s.\n", uiInfo.aliasList[uiInfo.aliasCount].name, uiInfo.aliasList[uiInfo.aliasCount].ai); ADDRGP4 $3915 ARGP4 ADDRLP4 32 CNSTI4 12 ASGNI4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+74984 INDIRI4 MULI4 ADDRGP4 uiInfo+74988 ADDP4 INDIRP4 ARGP4 ADDRLP4 32 INDIRI4 ADDRGP4 uiInfo+74984 INDIRI4 MULI4 ADDRGP4 uiInfo+74988+4 ADDP4 INDIRP4 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4632 ;4632: if (uiInfo.aliasCount < MAX_ALIASES) { ADDRGP4 uiInfo+74984 INDIRI4 CNSTI4 64 GEI4 $3921 line 4633 ;4633: uiInfo.aliasCount++; ADDRLP4 36 ADDRGP4 uiInfo+74984 ASGNP4 ADDRLP4 36 INDIRP4 ADDRLP4 36 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4634 ;4634: } else { ADDRGP4 $3922 JUMPV LABELV $3921 line 4635 ;4635: Com_Printf("Too many aliases, last alias replaced!\n"); ADDRGP4 $3925 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4636 ;4636: } LABELV $3922 line 4638 ;4637: ;4638: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 36 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 36 INDIRP4 ASGNP4 line 4639 ;4639: if (token[0] != '}') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 125 EQI4 $3926 line 4640 ;4640: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3890 JUMPV LABELV $3926 line 4642 ;4641: } ;4642: } LABELV $3901 line 4643 ;4643: } LABELV $3894 line 4614 ADDRGP4 $3893 JUMPV line 4645 ;4644: ;4645: return qfalse; CNSTI4 0 RETI4 LABELV $3890 endproc Alias_Parse 40 12 proc UI_ParseTeamInfo 44 8 line 4654 ;4646:} ;4647: ;4648: ;4649: ;4650:// mode ;4651:// 0 - high level parsing ;4652:// 1 - team parsing ;4653:// 2 - character parsing ;4654:static void UI_ParseTeamInfo(const char *teamFile) { line 4657 ;4655: char *token; ;4656: char *p; ;4657: char *buff = NULL; ADDRLP4 8 CNSTP4 0 ASGNP4 line 4660 ;4658: //static int mode = 0; TTimo: unused ;4659: ;4660: buff = GetMenuBuffer(teamFile); ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 GetMenuBuffer CALLP4 ASGNP4 ADDRLP4 8 ADDRLP4 12 INDIRP4 ASGNP4 line 4661 ;4661: if (!buff) { ADDRLP4 8 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $3929 line 4662 ;4662: return; ADDRGP4 $3928 JUMPV LABELV $3929 line 4665 ;4663: } ;4664: ;4665: p = buff; ADDRLP4 4 ADDRLP4 8 INDIRP4 ASGNP4 ADDRGP4 $3932 JUMPV LABELV $3931 line 4667 ;4666: ;4667: while ( 1 ) { line 4668 ;4668: token = COM_ParseExt( &p, qtrue ); ADDRLP4 4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 16 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 16 INDIRP4 ASGNP4 line 4669 ;4669: if( !token || token[0] == 0 || token[0] == '}') { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3937 ADDRLP4 24 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 EQI4 $3937 ADDRLP4 24 INDIRI4 CNSTI4 125 NEI4 $3934 LABELV $3937 line 4670 ;4670: break; ADDRGP4 $3933 JUMPV LABELV $3934 line 4673 ;4671: } ;4672: ;4673: if ( Q_stricmp( token, "}" ) == 0 ) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $452 ARGP4 ADDRLP4 28 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 NEI4 $3938 line 4674 ;4674: break; ADDRGP4 $3933 JUMPV LABELV $3938 line 4677 ;4675: } ;4676: ;4677: if (Q_stricmp(token, "teams") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $3942 ARGP4 ADDRLP4 32 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 NEI4 $3940 line 4679 ;4678: ;4679: if (Team_Parse(&p)) { ADDRLP4 4 ARGP4 ADDRLP4 36 ADDRGP4 Team_Parse CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 CNSTI4 0 EQI4 $3933 line 4680 ;4680: continue; ADDRGP4 $3932 JUMPV line 4681 ;4681: } else { line 4682 ;4682: break; LABELV $3940 line 4686 ;4683: } ;4684: } ;4685: ;4686: if (Q_stricmp(token, "characters") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $3947 ARGP4 ADDRLP4 36 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 CNSTI4 0 NEI4 $3945 line 4687 ;4687: Character_Parse(&p); ADDRLP4 4 ARGP4 ADDRGP4 Character_Parse CALLI4 pop line 4688 ;4688: } LABELV $3945 line 4690 ;4689: ;4690: if (Q_stricmp(token, "aliases") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $3950 ARGP4 ADDRLP4 40 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 40 INDIRI4 CNSTI4 0 NEI4 $3948 line 4691 ;4691: Alias_Parse(&p); ADDRLP4 4 ARGP4 ADDRGP4 Alias_Parse CALLI4 pop line 4692 ;4692: } LABELV $3948 line 4694 ;4693: ;4694: } LABELV $3932 line 4667 ADDRGP4 $3931 JUMPV LABELV $3933 line 4696 ;4695: ;4696:} LABELV $3928 endproc UI_ParseTeamInfo 44 8 proc GameType_Parse 28 8 line 4699 ;4697: ;4698: ;4699:static qboolean GameType_Parse(char **p, qboolean join) { line 4702 ;4700: char *token; ;4701: ;4702: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 4 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 4 INDIRP4 ASGNP4 line 4704 ;4703: ;4704: if (token[0] != '{') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 EQI4 $3952 line 4705 ;4705: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3951 JUMPV LABELV $3952 line 4708 ;4706: } ;4707: ;4708: if (join) { ADDRFP4 4 INDIRI4 CNSTI4 0 EQI4 $3954 line 4709 ;4709: uiInfo.numJoinGameTypes = 0; ADDRGP4 uiInfo+78708 CNSTI4 0 ASGNI4 line 4710 ;4710: } else { ADDRGP4 $3959 JUMPV LABELV $3954 line 4711 ;4711: uiInfo.numGameTypes = 0; ADDRGP4 uiInfo+78576 CNSTI4 0 ASGNI4 line 4712 ;4712: } ADDRGP4 $3959 JUMPV LABELV $3958 line 4714 ;4713: ;4714: while ( 1 ) { line 4715 ;4715: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 8 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 8 INDIRP4 ASGNP4 line 4717 ;4716: ;4717: if (Q_stricmp(token, "}") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $452 ARGP4 ADDRLP4 12 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 CNSTI4 0 NEI4 $3961 line 4718 ;4718: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $3951 JUMPV LABELV $3961 line 4721 ;4719: } ;4720: ;4721: if ( !token || token[0] == 0 ) { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $3965 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $3963 LABELV $3965 line 4722 ;4722: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3951 JUMPV LABELV $3963 line 4725 ;4723: } ;4724: ;4725: if (token[0] == '{') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 NEI4 $3966 line 4727 ;4726: // two tokens per line, character name and sex ;4727: if (join) { ADDRFP4 4 INDIRI4 CNSTI4 0 EQI4 $3968 line 4728 ;4728: if (!String_Parse(p, &uiInfo.joinGameTypes[uiInfo.numJoinGameTypes].gameType) || !Int_Parse(p, &uiInfo.joinGameTypes[uiInfo.numJoinGameTypes].gtEnum)) { ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 uiInfo+78708 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78712 ADDP4 ARGP4 ADDRLP4 20 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 CNSTI4 0 EQI4 $3977 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 uiInfo+78708 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78712+4 ADDP4 ARGP4 ADDRLP4 24 ADDRGP4 Int_Parse CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 NEI4 $3969 LABELV $3977 line 4729 ;4729: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3951 JUMPV line 4731 ;4730: } ;4731: } else { LABELV $3968 line 4732 ;4732: if (!String_Parse(p, &uiInfo.gameTypes[uiInfo.numGameTypes].gameType) || !Int_Parse(p, &uiInfo.gameTypes[uiInfo.numGameTypes].gtEnum)) { ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 uiInfo+78576 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580 ADDP4 ARGP4 ADDRLP4 20 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 CNSTI4 0 EQI4 $3985 ADDRFP4 0 INDIRP4 ARGP4 ADDRGP4 uiInfo+78576 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 ARGP4 ADDRLP4 24 ADDRGP4 Int_Parse CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 NEI4 $3978 LABELV $3985 line 4733 ;4733: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3951 JUMPV LABELV $3978 line 4735 ;4734: } ;4735: } LABELV $3969 line 4737 ;4736: ;4737: if (join) { ADDRFP4 4 INDIRI4 CNSTI4 0 EQI4 $3986 line 4738 ;4738: if (uiInfo.numJoinGameTypes < MAX_GAMETYPES) { ADDRGP4 uiInfo+78708 INDIRI4 CNSTI4 16 GEI4 $3988 line 4739 ;4739: uiInfo.numJoinGameTypes++; ADDRLP4 20 ADDRGP4 uiInfo+78708 ASGNP4 ADDRLP4 20 INDIRP4 ADDRLP4 20 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4740 ;4740: } else { ADDRGP4 $3987 JUMPV LABELV $3988 line 4741 ;4741: Com_Printf("Too many net game types, last one replace!\n"); ADDRGP4 $3992 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4742 ;4742: } line 4743 ;4743: } else { ADDRGP4 $3987 JUMPV LABELV $3986 line 4744 ;4744: if (uiInfo.numGameTypes < MAX_GAMETYPES) { ADDRGP4 uiInfo+78576 INDIRI4 CNSTI4 16 GEI4 $3993 line 4745 ;4745: uiInfo.numGameTypes++; ADDRLP4 20 ADDRGP4 uiInfo+78576 ASGNP4 ADDRLP4 20 INDIRP4 ADDRLP4 20 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4746 ;4746: } else { ADDRGP4 $3994 JUMPV LABELV $3993 line 4747 ;4747: Com_Printf("Too many game types, last one replace!\n"); ADDRGP4 $3997 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4748 ;4748: } LABELV $3994 line 4749 ;4749: } LABELV $3987 line 4751 ;4750: ;4751: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 20 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 20 INDIRP4 ASGNP4 line 4752 ;4752: if (token[0] != '}') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 125 EQI4 $3998 line 4753 ;4753: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $3951 JUMPV LABELV $3998 line 4755 ;4754: } ;4755: } LABELV $3966 line 4756 ;4756: } LABELV $3959 line 4714 ADDRGP4 $3958 JUMPV line 4757 ;4757: return qfalse; CNSTI4 0 RETI4 LABELV $3951 endproc GameType_Parse 28 8 proc MapList_Parse 52 8 line 4760 ;4758:} ;4759: ;4760:static qboolean MapList_Parse(char **p) { line 4763 ;4761: char *token; ;4762: ;4763: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 4 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 4 INDIRP4 ASGNP4 line 4765 ;4764: ;4765: if (token[0] != '{') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 EQI4 $4001 line 4766 ;4766: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $4000 JUMPV LABELV $4001 line 4769 ;4767: } ;4768: ;4769: uiInfo.mapCount = 0; ADDRGP4 uiInfo+83224 CNSTI4 0 ASGNI4 ADDRGP4 $4005 JUMPV LABELV $4004 line 4771 ;4770: ;4771: while ( 1 ) { line 4772 ;4772: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 8 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 8 INDIRP4 ASGNP4 line 4774 ;4773: ;4774: if (Q_stricmp(token, "}") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $452 ARGP4 ADDRLP4 12 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 CNSTI4 0 NEI4 $4007 line 4775 ;4775: return qtrue; CNSTI4 1 RETI4 ADDRGP4 $4000 JUMPV LABELV $4007 line 4778 ;4776: } ;4777: ;4778: if ( !token || token[0] == 0 ) { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $4011 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $4009 LABELV $4011 line 4779 ;4779: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $4000 JUMPV LABELV $4009 line 4782 ;4780: } ;4781: ;4782: if (token[0] == '{') { ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 123 NEI4 $4012 line 4783 ;4783: if (!String_Parse(p, &uiInfo.mapList[uiInfo.mapCount].mapName) || !String_Parse(p, &uiInfo.mapList[uiInfo.mapCount].mapLoadName) ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 100 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228 ADDP4 ARGP4 ADDRLP4 20 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 20 INDIRI4 CNSTI4 0 EQI4 $4025 ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 100 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 ARGP4 ADDRLP4 24 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 EQI4 $4025 ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 100 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+16 ADDP4 ARGP4 ADDRLP4 28 ADDRGP4 Int_Parse CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 NEI4 $4014 LABELV $4025 line 4784 ;4784: ||!Int_Parse(p, &uiInfo.mapList[uiInfo.mapCount].teamMembers) ) { line 4785 ;4785: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $4000 JUMPV LABELV $4014 line 4788 ;4786: } ;4787: ;4788: if (!String_Parse(p, &uiInfo.mapList[uiInfo.mapCount].opponentName)) { ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 100 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+12 ADDP4 ARGP4 ADDRLP4 32 ADDRGP4 String_Parse CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 NEI4 $4026 line 4789 ;4789: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $4000 JUMPV LABELV $4026 line 4792 ;4790: } ;4791: ;4792: uiInfo.mapList[uiInfo.mapCount].typeBits = 0; CNSTI4 100 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+20 ADDP4 CNSTI4 0 ASGNI4 ADDRGP4 $4035 JUMPV LABELV $4034 line 4794 ;4793: ;4794: while (1) { line 4795 ;4795: token = COM_ParseExt(p, qtrue); ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 36 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 36 INDIRP4 ASGNP4 line 4796 ;4796: if (token[0] >= '0' && token[0] <= '9') { ADDRLP4 40 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 40 INDIRI4 CNSTI4 48 LTI4 $4036 ADDRLP4 40 INDIRI4 CNSTI4 57 GTI4 $4036 line 4797 ;4797: uiInfo.mapList[uiInfo.mapCount].typeBits |= (1 << (token[0] - 0x030)); ADDRLP4 44 CNSTI4 100 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+20 ADDP4 ASGNP4 ADDRLP4 44 INDIRP4 ADDRLP4 44 INDIRP4 INDIRI4 CNSTI4 1 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 48 SUBI4 LSHI4 BORI4 ASGNI4 line 4798 ;4798: if (!Int_Parse(p, &uiInfo.mapList[uiInfo.mapCount].timeToBeat[token[0] - 0x30])) { ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 2 LSHI4 CNSTI4 192 SUBI4 CNSTI4 100 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+28 ADDP4 ADDP4 ARGP4 ADDRLP4 48 ADDRGP4 Int_Parse CALLI4 ASGNI4 ADDRLP4 48 INDIRI4 CNSTI4 0 NEI4 $4038 line 4799 ;4799: return qfalse; CNSTI4 0 RETI4 ADDRGP4 $4000 JUMPV line 4801 ;4800: } ;4801: } else { line 4802 ;4802: break; LABELV $4038 line 4804 ;4803: } ;4804: } LABELV $4035 line 4794 ADDRGP4 $4034 JUMPV LABELV $4036 line 4811 ;4805: ;4806: //mapList[mapCount].imageName = String_Alloc(va("levelshots/%s", mapList[mapCount].mapLoadName)); ;4807: //if (uiInfo.mapCount == 0) { ;4808: // only load the first cinematic, selection loads the others ;4809: // uiInfo.mapList[uiInfo.mapCount].cinematic = trap_CIN_PlayCinematic(va("%s.roq",uiInfo.mapList[uiInfo.mapCount].mapLoadName), qfalse, qfalse, qtrue, 0, 0, 0, 0); ;4810: //} ;4811: uiInfo.mapList[uiInfo.mapCount].cinematic = -1; CNSTI4 100 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 CNSTI4 -1 ASGNI4 line 4812 ;4812: uiInfo.mapList[uiInfo.mapCount].levelShot = trap_R_RegisterShaderNoMip(va("levelshots/%s_small", uiInfo.mapList[uiInfo.mapCount].mapLoadName)); ADDRGP4 $4053 ARGP4 ADDRLP4 36 CNSTI4 100 ASGNI4 ADDRLP4 36 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRLP4 40 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 40 INDIRP4 ARGP4 ADDRLP4 44 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 ADDRGP4 uiInfo+83224 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+92 ADDP4 ADDRLP4 44 INDIRI4 ASGNI4 line 4814 ;4813: ;4814: if (uiInfo.mapCount < MAX_MAPS) { ADDRGP4 uiInfo+83224 INDIRI4 CNSTI4 128 GEI4 $4057 line 4815 ;4815: uiInfo.mapCount++; ADDRLP4 48 ADDRGP4 uiInfo+83224 ASGNP4 ADDRLP4 48 INDIRP4 ADDRLP4 48 INDIRP4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 line 4816 ;4816: } else { ADDRGP4 $4058 JUMPV LABELV $4057 line 4817 ;4817: Com_Printf("Too many maps, last one replaced!\n"); ADDRGP4 $4061 ARGP4 ADDRGP4 Com_Printf CALLV pop line 4818 ;4818: } LABELV $4058 line 4819 ;4819: } LABELV $4012 line 4820 ;4820: } LABELV $4005 line 4771 ADDRGP4 $4004 JUMPV line 4821 ;4821: return qfalse; CNSTI4 0 RETI4 LABELV $4000 endproc MapList_Parse 52 8 proc UI_ParseGameInfo 44 8 line 4824 ;4822:} ;4823: ;4824:static void UI_ParseGameInfo(const char *teamFile) { line 4827 ;4825: char *token; ;4826: char *p; ;4827: char *buff = NULL; ADDRLP4 8 CNSTP4 0 ASGNP4 line 4830 ;4828: //int mode = 0; TTimo: unused ;4829: ;4830: buff = GetMenuBuffer(teamFile); ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 GetMenuBuffer CALLP4 ASGNP4 ADDRLP4 8 ADDRLP4 12 INDIRP4 ASGNP4 line 4831 ;4831: if (!buff) { ADDRLP4 8 INDIRP4 CVPU4 4 CNSTU4 0 NEU4 $4063 line 4832 ;4832: return; ADDRGP4 $4062 JUMPV LABELV $4063 line 4835 ;4833: } ;4834: ;4835: p = buff; ADDRLP4 4 ADDRLP4 8 INDIRP4 ASGNP4 ADDRGP4 $4066 JUMPV LABELV $4065 line 4837 ;4836: ;4837: while ( 1 ) { line 4838 ;4838: token = COM_ParseExt( &p, qtrue ); ADDRLP4 4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 16 ADDRGP4 COM_ParseExt CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 16 INDIRP4 ASGNP4 line 4839 ;4839: if( !token || token[0] == 0 || token[0] == '}') { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $4071 ADDRLP4 24 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 ASGNI4 ADDRLP4 24 INDIRI4 CNSTI4 0 EQI4 $4071 ADDRLP4 24 INDIRI4 CNSTI4 125 NEI4 $4068 LABELV $4071 line 4840 ;4840: break; ADDRGP4 $4067 JUMPV LABELV $4068 line 4843 ;4841: } ;4842: ;4843: if ( Q_stricmp( token, "}" ) == 0 ) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $452 ARGP4 ADDRLP4 28 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 28 INDIRI4 CNSTI4 0 NEI4 $4072 line 4844 ;4844: break; ADDRGP4 $4067 JUMPV LABELV $4072 line 4847 ;4845: } ;4846: ;4847: if (Q_stricmp(token, "gametypes") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $4076 ARGP4 ADDRLP4 32 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 32 INDIRI4 CNSTI4 0 NEI4 $4074 line 4849 ;4848: ;4849: if (GameType_Parse(&p, qfalse)) { ADDRLP4 4 ARGP4 CNSTI4 0 ARGI4 ADDRLP4 36 ADDRGP4 GameType_Parse CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 CNSTI4 0 EQI4 $4067 line 4850 ;4850: continue; ADDRGP4 $4066 JUMPV line 4851 ;4851: } else { line 4852 ;4852: break; LABELV $4074 line 4856 ;4853: } ;4854: } ;4855: ;4856: if (Q_stricmp(token, "joingametypes") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $4081 ARGP4 ADDRLP4 36 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 36 INDIRI4 CNSTI4 0 NEI4 $4079 line 4858 ;4857: ;4858: if (GameType_Parse(&p, qtrue)) { ADDRLP4 4 ARGP4 CNSTI4 1 ARGI4 ADDRLP4 40 ADDRGP4 GameType_Parse CALLI4 ASGNI4 ADDRLP4 40 INDIRI4 CNSTI4 0 EQI4 $4067 line 4859 ;4859: continue; ADDRGP4 $4066 JUMPV line 4860 ;4860: } else { line 4861 ;4861: break; LABELV $4079 line 4865 ;4862: } ;4863: } ;4864: ;4865: if (Q_stricmp(token, "maps") == 0) { ADDRLP4 0 INDIRP4 ARGP4 ADDRGP4 $4086 ARGP4 ADDRLP4 40 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 40 INDIRI4 CNSTI4 0 NEI4 $4084 line 4867 ;4866: // start a new menu ;4867: MapList_Parse(&p); ADDRLP4 4 ARGP4 ADDRGP4 MapList_Parse CALLI4 pop line 4868 ;4868: } LABELV $4084 line 4870 ;4869: ;4870: } LABELV $4066 line 4837 ADDRGP4 $4065 JUMPV LABELV $4067 line 4871 ;4871:} LABELV $4062 endproc UI_ParseGameInfo 44 8 proc UI_Pause 4 8 line 4873 ;4872: ;4873:static void UI_Pause(qboolean b) { line 4874 ;4874: if (b) { ADDRFP4 0 INDIRI4 CNSTI4 0 EQI4 $4088 line 4876 ;4875: // pause the game and set the ui keycatcher ;4876: trap_Cvar_Set( "cl_paused", "1" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4877 ;4877: trap_Key_SetCatcher( KEYCATCH_UI ); CNSTI4 2 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 4878 ;4878: } else { ADDRGP4 $4089 JUMPV LABELV $4088 line 4880 ;4879: // unpause the game and clear the ui keycatcher ;4880: trap_Key_SetCatcher( trap_Key_GetCatcher() & ~KEYCATCH_UI ); ADDRLP4 0 ADDRGP4 trap_Key_GetCatcher CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 -3 BANDI4 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 4881 ;4881: trap_Key_ClearStates(); ADDRGP4 trap_Key_ClearStates CALLV pop line 4882 ;4882: trap_Cvar_Set( "cl_paused", "0" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 4883 ;4883: } LABELV $4089 line 4884 ;4884:} LABELV $4087 endproc UI_Pause 4 8 proc UI_OwnerDraw_Width 0 0 line 4887 ;4885: ;4886:#ifndef MISSIONPACK // bk001206 ;4887:static int UI_OwnerDraw_Width(int ownerDraw) { line 4889 ;4888: // bk001205 - LCC missing return value ;4889: return 0; CNSTI4 0 RETI4 LABELV $4090 endproc UI_OwnerDraw_Width 0 0 proc UI_PlayCinematic 4 24 line 4893 ;4890:} ;4891:#endif ;4892: ;4893:static int UI_PlayCinematic(const char *name, float x, float y, float w, float h) { line 4894 ;4894: return trap_CIN_PlayCinematic(name, x, y, w, h, (CIN_loop | CIN_silent)); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRF4 CVFI4 4 ARGI4 ADDRFP4 8 INDIRF4 CVFI4 4 ARGI4 ADDRFP4 12 INDIRF4 CVFI4 4 ARGI4 ADDRFP4 16 INDIRF4 CVFI4 4 ARGI4 CNSTI4 10 ARGI4 ADDRLP4 0 ADDRGP4 trap_CIN_PlayCinematic CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 RETI4 LABELV $4091 endproc UI_PlayCinematic 4 24 proc UI_StopCinematic 20 4 line 4897 ;4895:} ;4896: ;4897:static void UI_StopCinematic(int handle) { line 4898 ;4898: if (handle >= 0) { ADDRFP4 0 INDIRI4 CNSTI4 0 LTI4 $4093 line 4899 ;4899: trap_CIN_StopCinematic(handle); ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 4900 ;4900: } else { ADDRGP4 $4094 JUMPV LABELV $4093 line 4901 ;4901: handle = abs(handle); ADDRFP4 0 INDIRI4 ARGI4 ADDRLP4 0 ADDRGP4 abs CALLI4 ASGNI4 ADDRFP4 0 ADDRLP4 0 INDIRI4 ASGNI4 line 4902 ;4902: if (handle == UI_MAPCINEMATIC) { ADDRFP4 0 INDIRI4 CNSTI4 244 NEI4 $4095 line 4903 ;4903: if (uiInfo.mapList[ui_currentMap.integer].cinematic >= 0) { CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 CNSTI4 0 LTI4 $4096 line 4904 ;4904: trap_CIN_StopCinematic(uiInfo.mapList[ui_currentMap.integer].cinematic); CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 4905 ;4905: uiInfo.mapList[ui_currentMap.integer].cinematic = -1; CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+24 ADDP4 CNSTI4 -1 ASGNI4 line 4906 ;4906: } line 4907 ;4907: } else if (handle == UI_NETMAPCINEMATIC) { ADDRGP4 $4096 JUMPV LABELV $4095 ADDRFP4 0 INDIRI4 CNSTI4 246 NEI4 $4108 line 4908 ;4908: if (uiInfo.serverStatus.currentServerCinematic >= 0) { ADDRGP4 uiInfo+99264+10432 INDIRI4 CNSTI4 0 LTI4 $4109 line 4909 ;4909: trap_CIN_StopCinematic(uiInfo.serverStatus.currentServerCinematic); ADDRGP4 uiInfo+99264+10432 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 4910 ;4910: uiInfo.serverStatus.currentServerCinematic = -1; ADDRGP4 uiInfo+99264+10432 CNSTI4 -1 ASGNI4 line 4911 ;4911: } line 4912 ;4912: } else if (handle == UI_CLANCINEMATIC) { ADDRGP4 $4109 JUMPV LABELV $4108 ADDRFP4 0 INDIRI4 CNSTI4 251 NEI4 $4118 line 4913 ;4913: int i = UI_TeamIndexFromName(UI_Cvar_VariableString("ui_teamName")); ADDRGP4 $701 ARGP4 ADDRLP4 8 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 8 INDIRP4 ARGP4 ADDRLP4 12 ADDRGP4 UI_TeamIndexFromName CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 12 INDIRI4 ASGNI4 line 4914 ;4914: if (i >= 0 && i < uiInfo.teamCount) { ADDRLP4 16 ADDRLP4 4 INDIRI4 ASGNI4 ADDRLP4 16 INDIRI4 CNSTI4 0 LTI4 $4120 ADDRLP4 16 INDIRI4 ADDRGP4 uiInfo+75756 INDIRI4 GEI4 $4120 line 4915 ;4915: if (uiInfo.teamList[i].cinematic >= 0) { CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 CNSTI4 0 LTI4 $4123 line 4916 ;4916: trap_CIN_StopCinematic(uiInfo.teamList[i].cinematic); CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_CIN_StopCinematic CALLI4 pop line 4917 ;4917: uiInfo.teamList[i].cinematic = -1; CNSTI4 44 ADDRLP4 4 INDIRI4 MULI4 ADDRGP4 uiInfo+75760+40 ADDP4 CNSTI4 -1 ASGNI4 line 4918 ;4918: } LABELV $4123 line 4919 ;4919: } LABELV $4120 line 4920 ;4920: } LABELV $4118 LABELV $4109 LABELV $4096 line 4921 ;4921: } LABELV $4094 line 4922 ;4922:} LABELV $4092 endproc UI_StopCinematic 20 4 proc UI_DrawCinematic 0 20 line 4924 ;4923: ;4924:static void UI_DrawCinematic(int handle, float x, float y, float w, float h) { line 4925 ;4925: trap_CIN_SetExtents(handle, x, y, w, h); ADDRFP4 0 INDIRI4 ARGI4 ADDRFP4 4 INDIRF4 CVFI4 4 ARGI4 ADDRFP4 8 INDIRF4 CVFI4 4 ARGI4 ADDRFP4 12 INDIRF4 CVFI4 4 ARGI4 ADDRFP4 16 INDIRF4 CVFI4 4 ARGI4 ADDRGP4 trap_CIN_SetExtents CALLV pop line 4926 ;4926: trap_CIN_DrawCinematic(handle); ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 trap_CIN_DrawCinematic CALLV pop line 4927 ;4927:} LABELV $4131 endproc UI_DrawCinematic 0 20 proc UI_RunCinematicFrame 0 4 line 4929 ;4928: ;4929:static void UI_RunCinematicFrame(int handle) { line 4930 ;4930: trap_CIN_RunCinematic(handle); ADDRFP4 0 INDIRI4 ARGI4 ADDRGP4 trap_CIN_RunCinematic CALLI4 pop line 4931 ;4931:} LABELV $4132 endproc UI_RunCinematicFrame 0 4 proc UI_BuildQ3Model_List 4520 20 line 4941 ;4932: ;4933: ;4934: ;4935:/* ;4936:================= ;4937:PlayerModel_BuildList ;4938:================= ;4939:*/ ;4940:static void UI_BuildQ3Model_List( void ) ;4941:{ line 4955 ;4942: int numdirs; ;4943: int numfiles; ;4944: char dirlist[2048]; ;4945: char filelist[2048]; ;4946: char skinname[64]; ;4947: char scratch[256]; ;4948: char* dirptr; ;4949: char* fileptr; ;4950: int i; ;4951: int j, k, dirty; ;4952: int dirlen; ;4953: int filelen; ;4954: ;4955: uiInfo.q3HeadCount = 0; ADDRGP4 uiInfo+119488 CNSTI4 0 ASGNI4 line 4958 ;4956: ;4957: // iterate directory of all player models ;4958: numdirs = trap_FS_GetFileList("models/players", "/", dirlist, 2048 ); ADDRGP4 $4135 ARGP4 ADDRGP4 $4136 ARGP4 ADDRLP4 2408 ARGP4 CNSTI4 2048 ARGI4 ADDRLP4 4456 ADDRGP4 trap_FS_GetFileList CALLI4 ASGNI4 ADDRLP4 2404 ADDRLP4 4456 INDIRI4 ASGNI4 line 4959 ;4959: dirptr = dirlist; ADDRLP4 340 ADDRLP4 2408 ASGNP4 line 4960 ;4960: for (i=0; i uiInfo.uiDC.glconfig.vidHeight * 640 ) { CNSTI4 480 ADDRGP4 uiInfo+62068+11304 INDIRI4 MULI4 CNSTI4 640 ADDRGP4 uiInfo+62068+11308 INDIRI4 MULI4 LEI4 $4194 line 5028 ;5027: // wide screen ;5028: uiInfo.uiDC.bias = 0.5 * ( uiInfo.uiDC.glconfig.vidWidth - ( uiInfo.uiDC.glconfig.vidHeight * (640.0/480.0) ) ); ADDRGP4 uiInfo+204 CNSTF4 1056964608 ADDRGP4 uiInfo+62068+11304 INDIRI4 CVIF4 4 CNSTF4 1068149419 ADDRGP4 uiInfo+62068+11308 INDIRI4 CVIF4 4 MULF4 SUBF4 MULF4 ASGNF4 line 5029 ;5029: } ADDRGP4 $4195 JUMPV LABELV $4194 line 5030 ;5030: else { line 5032 ;5031: // no wide screen ;5032: uiInfo.uiDC.bias = 0; ADDRGP4 uiInfo+204 CNSTF4 0 ASGNF4 line 5033 ;5033: } LABELV $4195 line 5037 ;5034: ;5035: ;5036: //UI_Load(); ;5037: uiInfo.uiDC.registerShaderNoMip = &trap_R_RegisterShaderNoMip; ADDRGP4 uiInfo ADDRGP4 trap_R_RegisterShaderNoMip ASGNP4 line 5038 ;5038: uiInfo.uiDC.setColor = &UI_SetColor; ADDRGP4 uiInfo+4 ADDRGP4 UI_SetColor ASGNP4 line 5039 ;5039: uiInfo.uiDC.drawHandlePic = &UI_DrawHandlePic; ADDRGP4 uiInfo+8 ADDRGP4 UI_DrawHandlePic ASGNP4 line 5040 ;5040: uiInfo.uiDC.drawStretchPic = &trap_R_DrawStretchPic; ADDRGP4 uiInfo+12 ADDRGP4 trap_R_DrawStretchPic ASGNP4 line 5041 ;5041: uiInfo.uiDC.drawText = &Text_Paint; ADDRGP4 uiInfo+16 ADDRGP4 Text_Paint ASGNP4 line 5042 ;5042: uiInfo.uiDC.textWidth = &Text_Width; ADDRGP4 uiInfo+20 ADDRGP4 Text_Width ASGNP4 line 5043 ;5043: uiInfo.uiDC.textHeight = &Text_Height; ADDRGP4 uiInfo+24 ADDRGP4 Text_Height ASGNP4 line 5044 ;5044: uiInfo.uiDC.registerModel = &trap_R_RegisterModel; ADDRGP4 uiInfo+28 ADDRGP4 trap_R_RegisterModel ASGNP4 line 5045 ;5045: uiInfo.uiDC.modelBounds = &trap_R_ModelBounds; ADDRGP4 uiInfo+32 ADDRGP4 trap_R_ModelBounds ASGNP4 line 5046 ;5046: uiInfo.uiDC.fillRect = &UI_FillRect; ADDRGP4 uiInfo+36 ADDRGP4 UI_FillRect ASGNP4 line 5047 ;5047: uiInfo.uiDC.drawRect = &_UI_DrawRect; ADDRGP4 uiInfo+40 ADDRGP4 _UI_DrawRect ASGNP4 line 5048 ;5048: uiInfo.uiDC.drawSides = &_UI_DrawSides; ADDRGP4 uiInfo+44 ADDRGP4 _UI_DrawSides ASGNP4 line 5049 ;5049: uiInfo.uiDC.drawTopBottom = &_UI_DrawTopBottom; ADDRGP4 uiInfo+48 ADDRGP4 _UI_DrawTopBottom ASGNP4 line 5050 ;5050: uiInfo.uiDC.clearScene = &trap_R_ClearScene; ADDRGP4 uiInfo+52 ADDRGP4 trap_R_ClearScene ASGNP4 line 5051 ;5051: uiInfo.uiDC.drawSides = &_UI_DrawSides; ADDRGP4 uiInfo+44 ADDRGP4 _UI_DrawSides ASGNP4 line 5052 ;5052: uiInfo.uiDC.addRefEntityToScene = &trap_R_AddRefEntityToScene; ADDRGP4 uiInfo+56 ADDRGP4 trap_R_AddRefEntityToScene ASGNP4 line 5053 ;5053: uiInfo.uiDC.renderScene = &trap_R_RenderScene; ADDRGP4 uiInfo+60 ADDRGP4 trap_R_RenderScene ASGNP4 line 5054 ;5054: uiInfo.uiDC.registerFont = &trap_R_RegisterFont; ADDRGP4 uiInfo+64 ADDRGP4 trap_R_RegisterFont ASGNP4 line 5055 ;5055: uiInfo.uiDC.ownerDrawItem = &UI_OwnerDraw; ADDRGP4 uiInfo+68 ADDRGP4 UI_OwnerDraw ASGNP4 line 5056 ;5056: uiInfo.uiDC.getValue = &UI_GetValue; ADDRGP4 uiInfo+72 ADDRGP4 UI_GetValue ASGNP4 line 5057 ;5057: uiInfo.uiDC.ownerDrawVisible = &UI_OwnerDrawVisible; ADDRGP4 uiInfo+76 ADDRGP4 UI_OwnerDrawVisible ASGNP4 line 5058 ;5058: uiInfo.uiDC.runScript = &UI_RunMenuScript; ADDRGP4 uiInfo+80 ADDRGP4 UI_RunMenuScript ASGNP4 line 5059 ;5059: uiInfo.uiDC.getTeamColor = &UI_GetTeamColor; ADDRGP4 uiInfo+84 ADDRGP4 UI_GetTeamColor ASGNP4 line 5060 ;5060: uiInfo.uiDC.setCVar = trap_Cvar_Set; ADDRGP4 uiInfo+96 ADDRGP4 trap_Cvar_Set ASGNP4 line 5061 ;5061: uiInfo.uiDC.getCVarString = trap_Cvar_VariableStringBuffer; ADDRGP4 uiInfo+88 ADDRGP4 trap_Cvar_VariableStringBuffer ASGNP4 line 5062 ;5062: uiInfo.uiDC.getCVarValue = trap_Cvar_VariableValue; ADDRGP4 uiInfo+92 ADDRGP4 trap_Cvar_VariableValue ASGNP4 line 5063 ;5063: uiInfo.uiDC.drawTextWithCursor = &Text_PaintWithCursor; ADDRGP4 uiInfo+100 ADDRGP4 Text_PaintWithCursor ASGNP4 line 5064 ;5064: uiInfo.uiDC.setOverstrikeMode = &trap_Key_SetOverstrikeMode; ADDRGP4 uiInfo+104 ADDRGP4 trap_Key_SetOverstrikeMode ASGNP4 line 5065 ;5065: uiInfo.uiDC.getOverstrikeMode = &trap_Key_GetOverstrikeMode; ADDRGP4 uiInfo+108 ADDRGP4 trap_Key_GetOverstrikeMode ASGNP4 line 5066 ;5066: uiInfo.uiDC.startLocalSound = &trap_S_StartLocalSound; ADDRGP4 uiInfo+112 ADDRGP4 trap_S_StartLocalSound ASGNP4 line 5067 ;5067: uiInfo.uiDC.ownerDrawHandleKey = &UI_OwnerDrawHandleKey; ADDRGP4 uiInfo+116 ADDRGP4 UI_OwnerDrawHandleKey ASGNP4 line 5068 ;5068: uiInfo.uiDC.feederCount = &UI_FeederCount; ADDRGP4 uiInfo+120 ADDRGP4 UI_FeederCount ASGNP4 line 5069 ;5069: uiInfo.uiDC.feederItemImage = &UI_FeederItemImage; ADDRGP4 uiInfo+128 ADDRGP4 UI_FeederItemImage ASGNP4 line 5070 ;5070: uiInfo.uiDC.feederItemText = &UI_FeederItemText; ADDRGP4 uiInfo+124 ADDRGP4 UI_FeederItemText ASGNP4 line 5071 ;5071: uiInfo.uiDC.feederSelection = &UI_FeederSelection; ADDRGP4 uiInfo+132 ADDRGP4 UI_FeederSelection ASGNP4 line 5072 ;5072: uiInfo.uiDC.setBinding = &trap_Key_SetBinding; ADDRGP4 uiInfo+144 ADDRGP4 trap_Key_SetBinding ASGNP4 line 5073 ;5073: uiInfo.uiDC.getBindingBuf = &trap_Key_GetBindingBuf; ADDRGP4 uiInfo+140 ADDRGP4 trap_Key_GetBindingBuf ASGNP4 line 5074 ;5074: uiInfo.uiDC.keynumToStringBuf = &trap_Key_KeynumToStringBuf; ADDRGP4 uiInfo+136 ADDRGP4 trap_Key_KeynumToStringBuf ASGNP4 line 5075 ;5075: uiInfo.uiDC.executeText = &trap_Cmd_ExecuteText; ADDRGP4 uiInfo+148 ADDRGP4 trap_Cmd_ExecuteText ASGNP4 line 5076 ;5076: uiInfo.uiDC.Error = &Com_Error; ADDRGP4 uiInfo+152 ADDRGP4 Com_Error ASGNP4 line 5077 ;5077: uiInfo.uiDC.Print = &Com_Printf; ADDRGP4 uiInfo+156 ADDRGP4 Com_Printf ASGNP4 line 5078 ;5078: uiInfo.uiDC.Pause = &UI_Pause; ADDRGP4 uiInfo+160 ADDRGP4 UI_Pause ASGNP4 line 5079 ;5079: uiInfo.uiDC.ownerDrawWidth = &UI_OwnerDrawWidth; ADDRGP4 uiInfo+164 ADDRGP4 UI_OwnerDrawWidth ASGNP4 line 5080 ;5080: uiInfo.uiDC.registerSound = &trap_S_RegisterSound; ADDRGP4 uiInfo+168 ADDRGP4 trap_S_RegisterSound ASGNP4 line 5081 ;5081: uiInfo.uiDC.startBackgroundTrack = &trap_S_StartBackgroundTrack; ADDRGP4 uiInfo+172 ADDRGP4 trap_S_StartBackgroundTrack ASGNP4 line 5082 ;5082: uiInfo.uiDC.stopBackgroundTrack = &trap_S_StopBackgroundTrack; ADDRGP4 uiInfo+176 ADDRGP4 trap_S_StopBackgroundTrack ASGNP4 line 5083 ;5083: uiInfo.uiDC.playCinematic = &UI_PlayCinematic; ADDRGP4 uiInfo+180 ADDRGP4 UI_PlayCinematic ASGNP4 line 5084 ;5084: uiInfo.uiDC.stopCinematic = &UI_StopCinematic; ADDRGP4 uiInfo+184 ADDRGP4 UI_StopCinematic ASGNP4 line 5085 ;5085: uiInfo.uiDC.drawCinematic = &UI_DrawCinematic; ADDRGP4 uiInfo+188 ADDRGP4 UI_DrawCinematic ASGNP4 line 5086 ;5086: uiInfo.uiDC.runCinematicFrame = &UI_RunCinematicFrame; ADDRGP4 uiInfo+192 ADDRGP4 UI_RunCinematicFrame ASGNP4 line 5088 ;5087: ;5088: Init_Display(&uiInfo.uiDC); ADDRGP4 uiInfo ARGP4 ADDRGP4 Init_Display CALLV pop line 5090 ;5089: ;5090: String_Init(); ADDRGP4 String_Init CALLV pop line 5092 ;5091: ;5092: uiInfo.uiDC.cursor = trap_R_RegisterShaderNoMip( "menu/art/3_cursor2" ); ADDRGP4 $4256 ARGP4 ADDRLP4 8 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+73408 ADDRLP4 8 INDIRI4 ASGNI4 line 5093 ;5093: uiInfo.uiDC.whiteShader = trap_R_RegisterShaderNoMip( "white" ); ADDRGP4 $4258 ARGP4 ADDRLP4 12 ADDRGP4 trap_R_RegisterShaderNoMip CALLI4 ASGNI4 ADDRGP4 uiInfo+73400 ADDRLP4 12 INDIRI4 ASGNI4 line 5095 ;5094: ;5095: AssetCache(); ADDRGP4 AssetCache CALLV pop line 5097 ;5096: ;5097: start = trap_Milliseconds(); ADDRLP4 16 ADDRGP4 trap_Milliseconds CALLI4 ASGNI4 ADDRLP4 4 ADDRLP4 16 INDIRI4 ASGNI4 line 5099 ;5098: ;5099: uiInfo.teamCount = 0; ADDRGP4 uiInfo+75756 CNSTI4 0 ASGNI4 line 5100 ;5100: uiInfo.characterCount = 0; ADDRGP4 uiInfo+73440 CNSTI4 0 ASGNI4 line 5101 ;5101: uiInfo.aliasCount = 0; ADDRGP4 uiInfo+74984 CNSTI4 0 ASGNI4 line 5107 ;5102: ;5103:#ifdef PRE_RELEASE_TADEMO ;5104: UI_ParseTeamInfo("demoteaminfo.txt"); ;5105: UI_ParseGameInfo("demogameinfo.txt"); ;5106:#else ;5107: UI_ParseTeamInfo("teaminfo.txt"); ADDRGP4 $4262 ARGP4 ADDRGP4 UI_ParseTeamInfo CALLV pop line 5108 ;5108: UI_LoadTeams(); ADDRGP4 UI_LoadTeams CALLV pop line 5109 ;5109: UI_ParseGameInfo("gameinfo.txt"); ADDRGP4 $677 ARGP4 ADDRGP4 UI_ParseGameInfo CALLV pop line 5112 ;5110:#endif ;5111: ;5112: menuSet = UI_Cvar_VariableString("ui_menuFiles"); ADDRGP4 $671 ARGP4 ADDRLP4 20 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 20 INDIRP4 ASGNP4 line 5113 ;5113: if (menuSet == NULL || menuSet[0] == '\0') { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $4265 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $4263 LABELV $4265 line 5114 ;5114: menuSet = "ui/menus.txt"; ADDRLP4 0 ADDRGP4 $643 ASGNP4 line 5115 ;5115: } LABELV $4263 line 5123 ;5116: ;5117:#if 0 ;5118: if (uiInfo.inGameLoad) { ;5119: UI_LoadMenus("ui/ingame.txt", qtrue); ;5120: } else { // bk010222: left this: UI_LoadMenus(menuSet, qtrue); ;5121: } ;5122:#else ;5123: UI_LoadMenus(menuSet, qtrue); ADDRLP4 0 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRGP4 UI_LoadMenus CALLV pop line 5124 ;5124: UI_LoadMenus("ui/ingame.txt", qfalse); ADDRGP4 $4266 ARGP4 CNSTI4 0 ARGI4 ADDRGP4 UI_LoadMenus CALLV pop line 5127 ;5125:#endif ;5126: ;5127: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 5129 ;5128: ;5129: trap_LAN_LoadCachedServers(); ADDRGP4 trap_LAN_LoadCachedServers CALLV pop line 5130 ;5130: UI_LoadBestScores(uiInfo.mapList[ui_currentMap.integer].mapLoadName, uiInfo.gameTypes[ui_gameType.integer].gtEnum); CNSTI4 100 ADDRGP4 ui_currentMap+12 INDIRI4 MULI4 ADDRGP4 uiInfo+83228+4 ADDP4 INDIRP4 ARGP4 ADDRGP4 ui_gameType+12 INDIRI4 CNSTI4 3 LSHI4 ADDRGP4 uiInfo+78580+4 ADDP4 INDIRI4 ARGI4 ADDRGP4 UI_LoadBestScores CALLV pop line 5132 ;5131: ;5132: UI_BuildQ3Model_List(); ADDRGP4 UI_BuildQ3Model_List CALLV pop line 5133 ;5133: UI_LoadBots(); ADDRGP4 UI_LoadBots CALLV pop line 5136 ;5134: ;5135: // sets defaults for ui temp cvars ;5136: uiInfo.effectsColor = gamecodetoui[(int)trap_Cvar_VariableValue("color1")-1]; ADDRGP4 $1795 ARGP4 ADDRLP4 28 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRGP4 uiInfo+136904 ADDRLP4 28 INDIRF4 CVFI4 4 CNSTI4 2 LSHI4 ADDRGP4 gamecodetoui-4 ADDP4 INDIRI4 ASGNI4 line 5137 ;5137: uiInfo.currentCrosshair = (int)trap_Cvar_VariableValue("cg_drawCrosshair"); ADDRGP4 $2080 ARGP4 ADDRLP4 32 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRGP4 uiInfo+119476 ADDRLP4 32 INDIRF4 CVFI4 4 ASGNI4 line 5138 ;5138: trap_Cvar_Set("ui_mousePitch", (trap_Cvar_VariableValue("m_pitch") >= 0) ? "0" : "1"); ADDRGP4 $2373 ARGP4 ADDRLP4 40 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 40 INDIRF4 CNSTF4 0 LTF4 $4277 ADDRLP4 36 ADDRGP4 $395 ASGNP4 ADDRGP4 $4278 JUMPV LABELV $4277 ADDRLP4 36 ADDRGP4 $398 ASGNP4 LABELV $4278 ADDRGP4 $2370 ARGP4 ADDRLP4 36 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5140 ;5139: ;5140: uiInfo.serverStatus.currentServerCinematic = -1; ADDRGP4 uiInfo+99264+10432 CNSTI4 -1 ASGNI4 line 5141 ;5141: uiInfo.previewMovie = -1; ADDRGP4 uiInfo+99260 CNSTI4 -1 ASGNI4 line 5143 ;5142: ;5143: if (trap_Cvar_VariableValue("ui_TeamArenaFirstRun") == 0) { ADDRGP4 $4284 ARGP4 ADDRLP4 44 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 44 INDIRF4 CNSTF4 0 NEF4 $4282 line 5144 ;5144: trap_Cvar_Set("s_volume", "0.8"); ADDRGP4 $4285 ARGP4 ADDRGP4 $4286 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5145 ;5145: trap_Cvar_Set("s_musicvolume", "0.5"); ADDRGP4 $4287 ARGP4 ADDRGP4 $4288 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5146 ;5146: trap_Cvar_Set("ui_TeamArenaFirstRun", "1"); ADDRGP4 $4284 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5147 ;5147: } LABELV $4282 line 5149 ;5148: ;5149: trap_Cvar_Register(NULL, "debug_protocol", "", 0 ); CNSTP4 0 ARGP4 ADDRGP4 $4289 ARGP4 ADDRGP4 $112 ARGP4 CNSTI4 0 ARGI4 ADDRGP4 trap_Cvar_Register CALLV pop line 5151 ;5150: ;5151: trap_Cvar_Set("ui_actualNetGameType", va("%d", ui_netGameType.integer)); ADDRGP4 $716 ARGP4 ADDRGP4 ui_netGameType+12 INDIRI4 ARGI4 ADDRLP4 48 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $731 ARGP4 ADDRLP4 48 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5152 ;5152:} LABELV $4186 endproc _UI_Init 52 16 export _UI_KeyEvent proc _UI_KeyEvent 16 12 line 5160 ;5153: ;5154: ;5155:/* ;5156:================= ;5157:UI_KeyEvent ;5158:================= ;5159:*/ ;5160:void _UI_KeyEvent( int key, qboolean down ) { line 5162 ;5161: ;5162: if (Menu_Count() > 0) { ADDRLP4 0 ADDRGP4 Menu_Count CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 CNSTI4 0 LEI4 $4292 line 5163 ;5163: menuDef_t *menu = Menu_GetFocused(); ADDRLP4 8 ADDRGP4 Menu_GetFocused CALLP4 ASGNP4 ADDRLP4 4 ADDRLP4 8 INDIRP4 ASGNP4 line 5164 ;5164: if (menu) { ADDRLP4 4 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $4294 line 5165 ;5165: if (key == K_ESCAPE && down && !Menus_AnyFullScreenVisible()) { ADDRFP4 0 INDIRI4 CNSTI4 27 NEI4 $4296 ADDRFP4 4 INDIRI4 CNSTI4 0 EQI4 $4296 ADDRLP4 12 ADDRGP4 Menus_AnyFullScreenVisible CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 CNSTI4 0 NEI4 $4296 line 5166 ;5166: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 5167 ;5167: } else { ADDRGP4 $4295 JUMPV LABELV $4296 line 5168 ;5168: Menu_HandleKey(menu, key, down ); ADDRLP4 4 INDIRP4 ARGP4 ADDRFP4 0 INDIRI4 ARGI4 ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 Menu_HandleKey CALLV pop line 5169 ;5169: } line 5170 ;5170: } else { ADDRGP4 $4295 JUMPV LABELV $4294 line 5171 ;5171: trap_Key_SetCatcher( trap_Key_GetCatcher() & ~KEYCATCH_UI ); ADDRLP4 12 ADDRGP4 trap_Key_GetCatcher CALLI4 ASGNI4 ADDRLP4 12 INDIRI4 CNSTI4 -3 BANDI4 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 5172 ;5172: trap_Key_ClearStates(); ADDRGP4 trap_Key_ClearStates CALLV pop line 5173 ;5173: trap_Cvar_Set( "cl_paused", "0" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5174 ;5174: } LABELV $4295 line 5175 ;5175: } LABELV $4292 line 5180 ;5176: ;5177: //if ((s > 0) && (s != menu_null_sound)) { ;5178: // trap_S_StartLocalSound( s, CHAN_LOCAL_SOUND ); ;5179: //} ;5180:} LABELV $4291 endproc _UI_KeyEvent 16 12 export _UI_MouseEvent proc _UI_MouseEvent 12 12 line 5188 ;5181: ;5182:/* ;5183:================= ;5184:UI_MouseEvent ;5185:================= ;5186:*/ ;5187:void _UI_MouseEvent( int dx, int dy ) ;5188:{ line 5190 ;5189: // update mouse screen position ;5190: uiInfo.uiDC.cursorx += dx; ADDRLP4 0 ADDRGP4 uiInfo+216 ASGNP4 ADDRLP4 0 INDIRP4 ADDRLP4 0 INDIRP4 INDIRI4 ADDRFP4 0 INDIRI4 ADDI4 ASGNI4 line 5191 ;5191: if (uiInfo.uiDC.cursorx < 0) ADDRGP4 uiInfo+216 INDIRI4 CNSTI4 0 GEI4 $4300 line 5192 ;5192: uiInfo.uiDC.cursorx = 0; ADDRGP4 uiInfo+216 CNSTI4 0 ASGNI4 ADDRGP4 $4301 JUMPV LABELV $4300 line 5193 ;5193: else if (uiInfo.uiDC.cursorx > SCREEN_WIDTH) ADDRGP4 uiInfo+216 INDIRI4 CNSTI4 640 LEI4 $4304 line 5194 ;5194: uiInfo.uiDC.cursorx = SCREEN_WIDTH; ADDRGP4 uiInfo+216 CNSTI4 640 ASGNI4 LABELV $4304 LABELV $4301 line 5196 ;5195: ;5196: uiInfo.uiDC.cursory += dy; ADDRLP4 4 ADDRGP4 uiInfo+220 ASGNP4 ADDRLP4 4 INDIRP4 ADDRLP4 4 INDIRP4 INDIRI4 ADDRFP4 4 INDIRI4 ADDI4 ASGNI4 line 5197 ;5197: if (uiInfo.uiDC.cursory < 0) ADDRGP4 uiInfo+220 INDIRI4 CNSTI4 0 GEI4 $4309 line 5198 ;5198: uiInfo.uiDC.cursory = 0; ADDRGP4 uiInfo+220 CNSTI4 0 ASGNI4 ADDRGP4 $4310 JUMPV LABELV $4309 line 5199 ;5199: else if (uiInfo.uiDC.cursory > SCREEN_HEIGHT) ADDRGP4 uiInfo+220 INDIRI4 CNSTI4 480 LEI4 $4313 line 5200 ;5200: uiInfo.uiDC.cursory = SCREEN_HEIGHT; ADDRGP4 uiInfo+220 CNSTI4 480 ASGNI4 LABELV $4313 LABELV $4310 line 5202 ;5201: ;5202: if (Menu_Count() > 0) { ADDRLP4 8 ADDRGP4 Menu_Count CALLI4 ASGNI4 ADDRLP4 8 INDIRI4 CNSTI4 0 LEI4 $4317 line 5205 ;5203: //menuDef_t *menu = Menu_GetFocused(); ;5204: //Menu_HandleMouseMove(menu, uiInfo.uiDC.cursorx, uiInfo.uiDC.cursory); ;5205: Display_MouseMove(NULL, uiInfo.uiDC.cursorx, uiInfo.uiDC.cursory); CNSTP4 0 ARGP4 ADDRGP4 uiInfo+216 INDIRI4 ARGI4 ADDRGP4 uiInfo+220 INDIRI4 ARGI4 ADDRGP4 Display_MouseMove CALLI4 pop line 5206 ;5206: } LABELV $4317 line 5208 ;5207: ;5208:} LABELV $4298 endproc _UI_MouseEvent 12 12 export UI_LoadNonIngame proc UI_LoadNonIngame 12 8 line 5210 ;5209: ;5210:void UI_LoadNonIngame() { line 5211 ;5211: const char *menuSet = UI_Cvar_VariableString("ui_menuFiles"); ADDRGP4 $671 ARGP4 ADDRLP4 4 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 0 ADDRLP4 4 INDIRP4 ASGNP4 line 5212 ;5212: if (menuSet == NULL || menuSet[0] == '\0') { ADDRLP4 0 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $4324 ADDRLP4 0 INDIRP4 INDIRI1 CVII4 1 CNSTI4 0 NEI4 $4322 LABELV $4324 line 5213 ;5213: menuSet = "ui/menus.txt"; ADDRLP4 0 ADDRGP4 $643 ASGNP4 line 5214 ;5214: } LABELV $4322 line 5215 ;5215: UI_LoadMenus(menuSet, qfalse); ADDRLP4 0 INDIRP4 ARGP4 CNSTI4 0 ARGI4 ADDRGP4 UI_LoadMenus CALLV pop line 5216 ;5216: uiInfo.inGameLoad = qfalse; ADDRGP4 uiInfo+136908 CNSTI4 0 ASGNI4 line 5217 ;5217:} LABELV $4321 endproc UI_LoadNonIngame 12 8 export _UI_SetActiveMenu proc _UI_SetActiveMenu 292 12 line 5219 ;5218: ;5219:void _UI_SetActiveMenu( uiMenuCommand_t menu ) { line 5224 ;5220: char buf[256]; ;5221: ;5222: // this should be the ONLY way the menu system is brought up ;5223: // enusure minumum menu data is cached ;5224: if (Menu_Count() > 0) { ADDRLP4 256 ADDRGP4 Menu_Count CALLI4 ASGNI4 ADDRLP4 256 INDIRI4 CNSTI4 0 LEI4 $4327 line 5226 ;5225: vec3_t v; ;5226: v[0] = v[1] = v[2] = 0; ADDRLP4 272 CNSTF4 0 ASGNF4 ADDRLP4 260+8 ADDRLP4 272 INDIRF4 ASGNF4 ADDRLP4 260+4 ADDRLP4 272 INDIRF4 ASGNF4 ADDRLP4 260 ADDRLP4 272 INDIRF4 ASGNF4 line 5227 ;5227: switch ( menu ) { ADDRLP4 276 ADDRFP4 0 INDIRI4 ASGNI4 ADDRLP4 276 INDIRI4 CNSTI4 0 LTI4 $4331 ADDRLP4 276 INDIRI4 CNSTI4 6 GTI4 $4331 ADDRLP4 276 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $4355 ADDP4 INDIRP4 JUMPV lit align 4 LABELV $4355 address $4334 address $4335 address $4353 address $4326 address $4326 address $4345 address $4348 code LABELV $4334 line 5229 ;5228: case UIMENU_NONE: ;5229: trap_Key_SetCatcher( trap_Key_GetCatcher() & ~KEYCATCH_UI ); ADDRLP4 284 ADDRGP4 trap_Key_GetCatcher CALLI4 ASGNI4 ADDRLP4 284 INDIRI4 CNSTI4 -3 BANDI4 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 5230 ;5230: trap_Key_ClearStates(); ADDRGP4 trap_Key_ClearStates CALLV pop line 5231 ;5231: trap_Cvar_Set( "cl_paused", "0" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $395 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5232 ;5232: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 5234 ;5233: ;5234: return; ADDRGP4 $4326 JUMPV LABELV $4335 line 5237 ;5235: case UIMENU_MAIN: ;5236: //trap_Cvar_Set( "sv_killserver", "1" ); ;5237: trap_Key_SetCatcher( KEYCATCH_UI ); CNSTI4 2 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 5240 ;5238: //trap_S_StartLocalSound( trap_S_RegisterSound("sound/misc/menu_background.wav", qfalse) , CHAN_LOCAL_SOUND ); ;5239: //trap_S_StartBackgroundTrack("sound/misc/menu_background.wav", NULL); ;5240: if (uiInfo.inGameLoad) { ADDRGP4 uiInfo+136908 INDIRI4 CNSTI4 0 EQI4 $4336 line 5241 ;5241: UI_LoadNonIngame(); ADDRGP4 UI_LoadNonIngame CALLV pop line 5242 ;5242: } LABELV $4336 line 5243 ;5243: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 5244 ;5244: Menus_ActivateByName("main"); ADDRGP4 $2548 ARGP4 ADDRGP4 Menus_ActivateByName CALLP4 pop line 5245 ;5245: trap_Cvar_VariableStringBuffer("com_errorMessage", buf, sizeof(buf)); ADDRGP4 $2469 ARGP4 ADDRLP4 0 ARGP4 CNSTI4 256 ARGI4 ADDRGP4 trap_Cvar_VariableStringBuffer CALLV pop line 5246 ;5246: if (strlen(buf)) { ADDRLP4 0 ARGP4 ADDRLP4 288 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 288 INDIRI4 CNSTI4 0 EQI4 $4326 line 5247 ;5247: if (!ui_singlePlayerActive.integer) { ADDRGP4 ui_singlePlayerActive+12 INDIRI4 CNSTI4 0 NEI4 $4341 line 5248 ;5248: Menus_ActivateByName("error_popmenu"); ADDRGP4 $4344 ARGP4 ADDRGP4 Menus_ActivateByName CALLP4 pop line 5249 ;5249: } else { ADDRGP4 $4326 JUMPV LABELV $4341 line 5250 ;5250: trap_Cvar_Set("com_errorMessage", ""); ADDRGP4 $2469 ARGP4 ADDRGP4 $112 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5251 ;5251: } line 5252 ;5252: } line 5253 ;5253: return; ADDRGP4 $4326 JUMPV LABELV $4345 line 5255 ;5254: case UIMENU_TEAM: ;5255: trap_Key_SetCatcher( KEYCATCH_UI ); CNSTI4 2 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 5256 ;5256: Menus_ActivateByName("team"); ADDRGP4 $2165 ARGP4 ADDRGP4 Menus_ActivateByName CALLP4 pop line 5257 ;5257: return; ADDRGP4 $4326 JUMPV line 5263 ;5258: case UIMENU_NEED_CD: ;5259: // no cd check in TA ;5260: //trap_Key_SetCatcher( KEYCATCH_UI ); ;5261: //Menus_ActivateByName("needcd"); ;5262: //UI_ConfirmMenu( "Insert the CD", NULL, NeedCDAction ); ;5263: return; line 5269 ;5264: case UIMENU_BAD_CD_KEY: ;5265: // no cd check in TA ;5266: //trap_Key_SetCatcher( KEYCATCH_UI ); ;5267: //Menus_ActivateByName("badcd"); ;5268: //UI_ConfirmMenu( "Bad CD Key", NULL, NeedCDKeyAction ); ;5269: return; LABELV $4348 line 5272 ;5270: case UIMENU_POSTGAME: ;5271: //trap_Cvar_Set( "sv_killserver", "1" ); ;5272: trap_Key_SetCatcher( KEYCATCH_UI ); CNSTI4 2 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 5273 ;5273: if (uiInfo.inGameLoad) { ADDRGP4 uiInfo+136908 INDIRI4 CNSTI4 0 EQI4 $4349 line 5274 ;5274: UI_LoadNonIngame(); ADDRGP4 UI_LoadNonIngame CALLV pop line 5275 ;5275: } LABELV $4349 line 5276 ;5276: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 5277 ;5277: Menus_ActivateByName("endofgame"); ADDRGP4 $4352 ARGP4 ADDRGP4 Menus_ActivateByName CALLP4 pop line 5279 ;5278: //UI_ConfirmMenu( "Bad CD Key", NULL, NeedCDKeyAction ); ;5279: return; ADDRGP4 $4326 JUMPV LABELV $4353 line 5281 ;5280: case UIMENU_INGAME: ;5281: trap_Cvar_Set( "cl_paused", "1" ); ADDRGP4 $2618 ARGP4 ADDRGP4 $398 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5282 ;5282: trap_Key_SetCatcher( KEYCATCH_UI ); CNSTI4 2 ARGI4 ADDRGP4 trap_Key_SetCatcher CALLV pop line 5283 ;5283: UI_BuildPlayerList(); ADDRGP4 UI_BuildPlayerList CALLV pop line 5284 ;5284: Menus_CloseAll(); ADDRGP4 Menus_CloseAll CALLV pop line 5285 ;5285: Menus_ActivateByName("ingame"); ADDRGP4 $4354 ARGP4 ADDRGP4 Menus_ActivateByName CALLP4 pop line 5286 ;5286: return; LABELV $4331 line 5288 ;5287: } ;5288: } LABELV $4327 line 5289 ;5289:} LABELV $4326 endproc _UI_SetActiveMenu 292 12 export _UI_IsFullscreen proc _UI_IsFullscreen 4 0 line 5291 ;5290: ;5291:qboolean _UI_IsFullscreen( void ) { line 5292 ;5292: return Menus_AnyFullScreenVisible(); ADDRLP4 0 ADDRGP4 Menus_AnyFullScreenVisible CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 RETI4 LABELV $4356 endproc _UI_IsFullscreen 4 0 proc UI_ReadableSize 16 16 line 5301 ;5293:} ;5294: ;5295: ;5296: ;5297:static connstate_t lastConnState; ;5298:static char lastLoadingText[MAX_INFO_VALUE]; ;5299: ;5300:static void UI_ReadableSize ( char *buf, int bufsize, int value ) ;5301:{ line 5302 ;5302: if (value > 1024*1024*1024 ) { // gigs ADDRFP4 8 INDIRI4 CNSTI4 1073741824 LEI4 $4358 line 5303 ;5303: Com_sprintf( buf, bufsize, "%d", value / (1024*1024*1024) ); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 $716 ARGP4 ADDRFP4 8 INDIRI4 CNSTI4 1073741824 DIVI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5304 ;5304: Com_sprintf( buf+strlen(buf), bufsize-strlen(buf), ".%02d GB", ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 0 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 ADDRLP4 4 INDIRP4 ADDP4 ARGP4 ADDRFP4 4 INDIRI4 ADDRLP4 8 INDIRI4 SUBI4 ARGI4 ADDRGP4 $4360 ARGP4 ADDRLP4 12 CNSTI4 1073741824 ASGNI4 CNSTI4 100 ADDRFP4 8 INDIRI4 ADDRLP4 12 INDIRI4 MODI4 MULI4 ADDRLP4 12 INDIRI4 DIVI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5306 ;5305: (value % (1024*1024*1024))*100 / (1024*1024*1024) ); ;5306: } else if (value > 1024*1024 ) { // megs ADDRGP4 $4359 JUMPV LABELV $4358 ADDRFP4 8 INDIRI4 CNSTI4 1048576 LEI4 $4361 line 5307 ;5307: Com_sprintf( buf, bufsize, "%d", value / (1024*1024) ); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 $716 ARGP4 ADDRFP4 8 INDIRI4 CNSTI4 1048576 DIVI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5308 ;5308: Com_sprintf( buf+strlen(buf), bufsize-strlen(buf), ".%02d MB", ADDRFP4 0 INDIRP4 ARGP4 ADDRLP4 0 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 4 ADDRFP4 0 INDIRP4 ASGNP4 ADDRLP4 4 INDIRP4 ARGP4 ADDRLP4 8 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 0 INDIRI4 ADDRLP4 4 INDIRP4 ADDP4 ARGP4 ADDRFP4 4 INDIRI4 ADDRLP4 8 INDIRI4 SUBI4 ARGI4 ADDRGP4 $4363 ARGP4 ADDRLP4 12 CNSTI4 1048576 ASGNI4 CNSTI4 100 ADDRFP4 8 INDIRI4 ADDRLP4 12 INDIRI4 MODI4 MULI4 ADDRLP4 12 INDIRI4 DIVI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5310 ;5309: (value % (1024*1024))*100 / (1024*1024) ); ;5310: } else if (value > 1024 ) { // kilos ADDRGP4 $4362 JUMPV LABELV $4361 ADDRFP4 8 INDIRI4 CNSTI4 1024 LEI4 $4364 line 5311 ;5311: Com_sprintf( buf, bufsize, "%d KB", value / 1024 ); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 $4366 ARGP4 ADDRFP4 8 INDIRI4 CNSTI4 1024 DIVI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5312 ;5312: } else { // bytes ADDRGP4 $4365 JUMPV LABELV $4364 line 5313 ;5313: Com_sprintf( buf, bufsize, "%d bytes", value ); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 $4367 ARGP4 ADDRFP4 8 INDIRI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5314 ;5314: } LABELV $4365 LABELV $4362 LABELV $4359 line 5315 ;5315:} LABELV $4357 endproc UI_ReadableSize 16 16 proc UI_PrintTime 8 20 line 5318 ;5316: ;5317:// Assumes time is in msec ;5318:static void UI_PrintTime ( char *buf, int bufsize, int time ) { line 5319 ;5319: time /= 1000; // change to seconds ADDRFP4 8 ADDRFP4 8 INDIRI4 CNSTI4 1000 DIVI4 ASGNI4 line 5321 ;5320: ;5321: if (time > 3600) { // in the hours range ADDRFP4 8 INDIRI4 CNSTI4 3600 LEI4 $4369 line 5322 ;5322: Com_sprintf( buf, bufsize, "%d hr %d min", time / 3600, (time % 3600) / 60 ); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 $4371 ARGP4 ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 4 CNSTI4 3600 ASGNI4 ADDRLP4 0 INDIRI4 ADDRLP4 4 INDIRI4 DIVI4 ARGI4 ADDRLP4 0 INDIRI4 ADDRLP4 4 INDIRI4 MODI4 CNSTI4 60 DIVI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5323 ;5323: } else if (time > 60) { // mins ADDRGP4 $4370 JUMPV LABELV $4369 ADDRFP4 8 INDIRI4 CNSTI4 60 LEI4 $4372 line 5324 ;5324: Com_sprintf( buf, bufsize, "%d min %d sec", time / 60, time % 60 ); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 $4374 ARGP4 ADDRLP4 0 ADDRFP4 8 INDIRI4 ASGNI4 ADDRLP4 4 CNSTI4 60 ASGNI4 ADDRLP4 0 INDIRI4 ADDRLP4 4 INDIRI4 DIVI4 ARGI4 ADDRLP4 0 INDIRI4 ADDRLP4 4 INDIRI4 MODI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5325 ;5325: } else { // secs ADDRGP4 $4373 JUMPV LABELV $4372 line 5326 ;5326: Com_sprintf( buf, bufsize, "%d sec", time ); ADDRFP4 0 INDIRP4 ARGP4 ADDRFP4 4 INDIRI4 ARGI4 ADDRGP4 $4375 ARGP4 ADDRFP4 8 INDIRI4 ARGI4 ADDRGP4 Com_sprintf CALLV pop line 5327 ;5327: } LABELV $4373 LABELV $4370 line 5328 ;5328:} LABELV $4368 endproc UI_PrintTime 8 20 export Text_PaintCenter proc Text_PaintCenter 8 32 line 5330 ;5329: ;5330:void Text_PaintCenter(float x, float y, float scale, vec4_t color, const char *text, float adjust) { line 5331 ;5331: int len = Text_Width(text, scale, 0); ADDRFP4 16 INDIRP4 ARGP4 ADDRFP4 8 INDIRF4 ARGF4 CNSTI4 0 ARGI4 ADDRLP4 4 ADDRGP4 Text_Width CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 4 INDIRI4 ASGNI4 line 5332 ;5332: Text_Paint(x - len / 2, y, scale, color, text, 0, 0, ITEM_TEXTSTYLE_SHADOWEDMORE); ADDRFP4 0 INDIRF4 ADDRLP4 0 INDIRI4 CNSTI4 2 DIVI4 CVIF4 4 SUBF4 ARGF4 ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 ARGF4 ADDRFP4 12 INDIRP4 ARGP4 ADDRFP4 16 INDIRP4 ARGP4 CNSTF4 0 ARGF4 CNSTI4 0 ARGI4 CNSTI4 6 ARGI4 ADDRGP4 Text_Paint CALLV pop line 5333 ;5333:} LABELV $4376 endproc Text_PaintCenter 8 32 data align 1 LABELV $4378 byte 1 68 byte 1 111 byte 1 119 byte 1 110 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 105 byte 1 110 byte 1 103 byte 1 58 byte 1 0 align 1 LABELV $4379 byte 1 69 byte 1 115 byte 1 116 byte 1 105 byte 1 109 byte 1 97 byte 1 116 byte 1 101 byte 1 100 byte 1 32 byte 1 116 byte 1 105 byte 1 109 byte 1 101 byte 1 32 byte 1 108 byte 1 101 byte 1 102 byte 1 116 byte 1 58 byte 1 0 align 1 LABELV $4380 byte 1 84 byte 1 114 byte 1 97 byte 1 110 byte 1 115 byte 1 102 byte 1 101 byte 1 114 byte 1 32 byte 1 114 byte 1 97 byte 1 116 byte 1 101 byte 1 58 byte 1 0 code proc UI_DisplayDownloadInfo 312 24 line 5336 ;5334: ;5335: ;5336:static void UI_DisplayDownloadInfo( const char *downloadName, float centerPoint, float yStart, float scale ) { line 5347 ;5337: static char dlText[] = "Downloading:"; ;5338: static char etaText[] = "Estimated time left:"; ;5339: static char xferText[] = "Transfer rate:"; ;5340: ;5341: int downloadSize, downloadCount, downloadTime; ;5342: char dlSizeBuf[64], totalSizeBuf[64], xferRateBuf[64], dlTimeBuf[64]; ;5343: int xferRate; ;5344: int leftWidth; ;5345: const char *s; ;5346: ;5347: downloadSize = trap_Cvar_VariableValue( "cl_downloadSize" ); ADDRGP4 $4381 ARGP4 ADDRLP4 280 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 280 INDIRF4 CVFI4 4 ASGNI4 line 5348 ;5348: downloadCount = trap_Cvar_VariableValue( "cl_downloadCount" ); ADDRGP4 $4382 ARGP4 ADDRLP4 284 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 4 ADDRLP4 284 INDIRF4 CVFI4 4 ASGNI4 line 5349 ;5349: downloadTime = trap_Cvar_VariableValue( "cl_downloadTime" ); ADDRGP4 $4383 ARGP4 ADDRLP4 288 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 140 ADDRLP4 288 INDIRF4 CVFI4 4 ASGNI4 line 5351 ;5350: ;5351: leftWidth = 320; ADDRLP4 8 CNSTI4 320 ASGNI4 line 5353 ;5352: ;5353: UI_SetColor(colorWhite); ADDRGP4 colorWhite ARGP4 ADDRGP4 UI_SetColor CALLV pop line 5354 ;5354: Text_PaintCenter(centerPoint, yStart + 112, scale, colorWhite, dlText, 0); ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1121976320 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRGP4 $4378 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5355 ;5355: Text_PaintCenter(centerPoint, yStart + 192, scale, colorWhite, etaText, 0); ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1128267776 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRGP4 $4379 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5356 ;5356: Text_PaintCenter(centerPoint, yStart + 248, scale, colorWhite, xferText, 0); ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1131937792 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRGP4 $4380 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5358 ;5357: ;5358: if (downloadSize > 0) { ADDRLP4 0 INDIRI4 CNSTI4 0 LEI4 $4384 line 5359 ;5359: s = va( "%s (%d%%)", downloadName, downloadCount * 100 / downloadSize ); ADDRGP4 $4386 ARGP4 ADDRFP4 0 INDIRP4 ARGP4 CNSTI4 100 ADDRLP4 4 INDIRI4 MULI4 ADDRLP4 0 INDIRI4 DIVI4 ARGI4 ADDRLP4 292 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 148 ADDRLP4 292 INDIRP4 ASGNP4 line 5360 ;5360: } else { ADDRGP4 $4385 JUMPV LABELV $4384 line 5361 ;5361: s = downloadName; ADDRLP4 148 ADDRFP4 0 INDIRP4 ASGNP4 line 5362 ;5362: } LABELV $4385 line 5364 ;5363: ;5364: Text_PaintCenter(centerPoint, yStart+136, scale, colorWhite, s, 0); ADDRFP4 4 INDIRF4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1124597760 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 148 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5366 ;5365: ;5366: UI_ReadableSize( dlSizeBuf, sizeof dlSizeBuf, downloadCount ); ADDRLP4 12 ARGP4 CNSTI4 64 ARGI4 ADDRLP4 4 INDIRI4 ARGI4 ADDRGP4 UI_ReadableSize CALLV pop line 5367 ;5367: UI_ReadableSize( totalSizeBuf, sizeof totalSizeBuf, downloadSize ); ADDRLP4 76 ARGP4 CNSTI4 64 ARGI4 ADDRLP4 0 INDIRI4 ARGI4 ADDRGP4 UI_ReadableSize CALLV pop line 5369 ;5368: ;5369: if (downloadCount < 4096 || !downloadTime) { ADDRLP4 4 INDIRI4 CNSTI4 4096 LTI4 $4389 ADDRLP4 140 INDIRI4 CNSTI4 0 NEI4 $4387 LABELV $4389 line 5370 ;5370: Text_PaintCenter(leftWidth, yStart+216, scale, colorWhite, "estimating", 0); ADDRLP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1129840640 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRGP4 $4390 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5371 ;5371: Text_PaintCenter(leftWidth, yStart+160, scale, colorWhite, va("(%s of %s copied)", dlSizeBuf, totalSizeBuf), 0); ADDRGP4 $4391 ARGP4 ADDRLP4 12 ARGP4 ADDRLP4 76 ARGP4 ADDRLP4 292 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1126170624 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 292 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5372 ;5372: } else { ADDRGP4 $4388 JUMPV LABELV $4387 line 5373 ;5373: if ((uiInfo.uiDC.realTime - downloadTime) / 1000) { ADDRGP4 uiInfo+208 INDIRI4 ADDRLP4 140 INDIRI4 SUBI4 CNSTI4 1000 DIVI4 CNSTI4 0 EQI4 $4392 line 5374 ;5374: xferRate = downloadCount / ((uiInfo.uiDC.realTime - downloadTime) / 1000); ADDRLP4 144 ADDRLP4 4 INDIRI4 ADDRGP4 uiInfo+208 INDIRI4 ADDRLP4 140 INDIRI4 SUBI4 CNSTI4 1000 DIVI4 DIVI4 ASGNI4 line 5375 ;5375: } else { ADDRGP4 $4393 JUMPV LABELV $4392 line 5376 ;5376: xferRate = 0; ADDRLP4 144 CNSTI4 0 ASGNI4 line 5377 ;5377: } LABELV $4393 line 5378 ;5378: UI_ReadableSize( xferRateBuf, sizeof xferRateBuf, xferRate ); ADDRLP4 152 ARGP4 CNSTI4 64 ARGI4 ADDRLP4 144 INDIRI4 ARGI4 ADDRGP4 UI_ReadableSize CALLV pop line 5381 ;5379: ;5380: // Extrapolate estimated completion time ;5381: if (downloadSize && xferRate) { ADDRLP4 292 CNSTI4 0 ASGNI4 ADDRLP4 0 INDIRI4 ADDRLP4 292 INDIRI4 EQI4 $4396 ADDRLP4 144 INDIRI4 ADDRLP4 292 INDIRI4 EQI4 $4396 line 5382 ;5382: int n = downloadSize / xferRate; // estimated time for entire d/l in secs ADDRLP4 296 ADDRLP4 0 INDIRI4 ADDRLP4 144 INDIRI4 DIVI4 ASGNI4 line 5385 ;5383: ;5384: // We do it in K (/1024) because we'd overflow around 4MB ;5385: UI_PrintTime ( dlTimeBuf, sizeof dlTimeBuf, ADDRLP4 216 ARGP4 CNSTI4 64 ARGI4 ADDRLP4 300 ADDRLP4 296 INDIRI4 ASGNI4 ADDRLP4 304 CNSTI4 1024 ASGNI4 CNSTI4 1000 ADDRLP4 300 INDIRI4 ADDRLP4 4 INDIRI4 ADDRLP4 304 INDIRI4 DIVI4 ADDRLP4 300 INDIRI4 MULI4 ADDRLP4 0 INDIRI4 ADDRLP4 304 INDIRI4 DIVI4 DIVI4 SUBI4 MULI4 ARGI4 ADDRGP4 UI_PrintTime CALLV pop line 5388 ;5386: (n - (((downloadCount/1024) * n) / (downloadSize/1024))) * 1000); ;5387: ;5388: Text_PaintCenter(leftWidth, yStart+216, scale, colorWhite, dlTimeBuf, 0); ADDRLP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1129840640 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 216 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5389 ;5389: Text_PaintCenter(leftWidth, yStart+160, scale, colorWhite, va("(%s of %s copied)", dlSizeBuf, totalSizeBuf), 0); ADDRGP4 $4391 ARGP4 ADDRLP4 12 ARGP4 ADDRLP4 76 ARGP4 ADDRLP4 308 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1126170624 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 308 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5390 ;5390: } else { ADDRGP4 $4397 JUMPV LABELV $4396 line 5391 ;5391: Text_PaintCenter(leftWidth, yStart+216, scale, colorWhite, "estimating", 0); ADDRLP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1129840640 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRGP4 $4390 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5392 ;5392: if (downloadSize) { ADDRLP4 0 INDIRI4 CNSTI4 0 EQI4 $4398 line 5393 ;5393: Text_PaintCenter(leftWidth, yStart+160, scale, colorWhite, va("(%s of %s copied)", dlSizeBuf, totalSizeBuf), 0); ADDRGP4 $4391 ARGP4 ADDRLP4 12 ARGP4 ADDRLP4 76 ARGP4 ADDRLP4 296 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1126170624 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 296 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5394 ;5394: } else { ADDRGP4 $4399 JUMPV LABELV $4398 line 5395 ;5395: Text_PaintCenter(leftWidth, yStart+160, scale, colorWhite, va("(%s copied)", dlSizeBuf), 0); ADDRGP4 $4400 ARGP4 ADDRLP4 12 ARGP4 ADDRLP4 296 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1126170624 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 296 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5396 ;5396: } LABELV $4399 line 5397 ;5397: } LABELV $4397 line 5399 ;5398: ;5399: if (xferRate) { ADDRLP4 144 INDIRI4 CNSTI4 0 EQI4 $4401 line 5400 ;5400: Text_PaintCenter(leftWidth, yStart+272, scale, colorWhite, va("%s/Sec", xferRateBuf), 0); ADDRGP4 $4403 ARGP4 ADDRLP4 152 ARGP4 ADDRLP4 296 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 8 INDIRI4 CVIF4 4 ARGF4 ADDRFP4 8 INDIRF4 CNSTF4 1132986368 ADDF4 ARGF4 ADDRFP4 12 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 296 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5401 ;5401: } LABELV $4401 line 5402 ;5402: } LABELV $4388 line 5403 ;5403:} LABELV $4377 endproc UI_DisplayDownloadInfo 312 24 export UI_DrawConnectScreen proc UI_DrawConnectScreen 5440 24 line 5413 ;5404: ;5405:/* ;5406:======================== ;5407:UI_DrawConnectScreen ;5408: ;5409:This will also be overlaid on the cgame info screen during loading ;5410:to prevent it from blinking away too rapidly on local or lan games. ;5411:======================== ;5412:*/ ;5413:void UI_DrawConnectScreen( qboolean overlay ) { line 5420 ;5414: char *s; ;5415: uiClientState_t cstate; ;5416: char info[MAX_INFO_VALUE]; ;5417: char text[256]; ;5418: float centerPoint, yStart, scale; ;5419: ;5420: menuDef_t *menu = Menus_FindByName("Connect"); ADDRGP4 $4405 ARGP4 ADDRLP4 4384 ADDRGP4 Menus_FindByName CALLP4 ASGNP4 ADDRLP4 4120 ADDRLP4 4384 INDIRP4 ASGNP4 line 5423 ;5421: ;5422: ;5423: if ( !overlay && menu ) { ADDRFP4 0 INDIRI4 CNSTI4 0 NEI4 $4406 ADDRLP4 4120 INDIRP4 CVPU4 4 CNSTU4 0 EQU4 $4406 line 5424 ;5424: Menu_Paint(menu, qtrue); ADDRLP4 4120 INDIRP4 ARGP4 CNSTI4 1 ARGI4 ADDRGP4 Menu_Paint CALLV pop line 5425 ;5425: } LABELV $4406 line 5427 ;5426: ;5427: if (!overlay) { ADDRFP4 0 INDIRI4 CNSTI4 0 NEI4 $4408 line 5428 ;5428: centerPoint = 320; ADDRLP4 3084 CNSTF4 1134559232 ASGNF4 line 5429 ;5429: yStart = 130; ADDRLP4 3092 CNSTF4 1124204544 ASGNF4 line 5430 ;5430: scale = 0.5f; ADDRLP4 3088 CNSTF4 1056964608 ASGNF4 line 5431 ;5431: } else { ADDRGP4 $4409 JUMPV LABELV $4408 line 5432 ;5432: centerPoint = 320; ADDRLP4 3084 CNSTF4 1134559232 ASGNF4 line 5433 ;5433: yStart = 32; ADDRLP4 3092 CNSTF4 1107296256 ASGNF4 line 5434 ;5434: scale = 0.6f; ADDRLP4 3088 CNSTF4 1058642330 ASGNF4 line 5435 ;5435: return; ADDRGP4 $4404 JUMPV LABELV $4409 line 5439 ;5436: } ;5437: ;5438: // see what information we should display ;5439: trap_GetClientState( &cstate ); ADDRLP4 0 ARGP4 ADDRGP4 trap_GetClientState CALLV pop line 5441 ;5440: ;5441: info[0] = '\0'; ADDRLP4 3096 CNSTI1 0 ASGNI1 line 5442 ;5442: if( trap_GetConfigString( CS_SERVERINFO, info, sizeof(info) ) ) { CNSTI4 0 ARGI4 ADDRLP4 3096 ARGP4 CNSTI4 1024 ARGI4 ADDRLP4 4388 ADDRGP4 trap_GetConfigString CALLI4 ASGNI4 ADDRLP4 4388 INDIRI4 CNSTI4 0 EQI4 $4410 line 5443 ;5443: Text_PaintCenter(centerPoint, yStart, scale, colorWhite, va( "Loading %s", Info_ValueForKey( info, "mapname" )), 0); ADDRLP4 3096 ARGP4 ADDRGP4 $3112 ARGP4 ADDRLP4 4392 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRGP4 $4412 ARGP4 ADDRLP4 4392 INDIRP4 ARGP4 ADDRLP4 4396 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 3084 INDIRF4 ARGF4 ADDRLP4 3092 INDIRF4 ARGF4 ADDRLP4 3088 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 4396 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5444 ;5444: } LABELV $4410 line 5446 ;5445: ;5446: if (!Q_stricmp(cstate.servername,"localhost")) { ADDRLP4 0+12 ARGP4 ADDRGP4 $4416 ARGP4 ADDRLP4 4392 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 4392 INDIRI4 CNSTI4 0 NEI4 $4413 line 5447 ;5447: Text_PaintCenter(centerPoint, yStart + 48, scale, colorWhite, va("Starting up..."), ITEM_TEXTSTYLE_SHADOWEDMORE); ADDRGP4 $4417 ARGP4 ADDRLP4 4396 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 3084 INDIRF4 ARGF4 ADDRLP4 3092 INDIRF4 CNSTF4 1111490560 ADDF4 ARGF4 ADDRLP4 3088 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 4396 INDIRP4 ARGP4 CNSTF4 1086324736 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5448 ;5448: } else { ADDRGP4 $4414 JUMPV LABELV $4413 line 5449 ;5449: strcpy(text, va("Connecting to %s", cstate.servername)); ADDRGP4 $4418 ARGP4 ADDRLP4 0+12 ARGP4 ADDRLP4 4396 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 4124 ARGP4 ADDRLP4 4396 INDIRP4 ARGP4 ADDRGP4 strcpy CALLP4 pop line 5450 ;5450: Text_PaintCenter(centerPoint, yStart + 48, scale, colorWhite,text , ITEM_TEXTSTYLE_SHADOWEDMORE); ADDRLP4 3084 INDIRF4 ARGF4 ADDRLP4 3092 INDIRF4 CNSTF4 1111490560 ADDF4 ARGF4 ADDRLP4 3088 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 4124 ARGP4 CNSTF4 1086324736 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5451 ;5451: } LABELV $4414 line 5456 ;5452: ;5453: //UI_DrawProportionalString( 320, 96, "Press Esc to abort", UI_CENTER|UI_SMALLFONT|UI_DROPSHADOW, menu_text_color ); ;5454: ;5455: // display global MOTD at bottom ;5456: Text_PaintCenter(centerPoint, 600, scale, colorWhite, Info_ValueForKey( cstate.updateInfoString, "motd" ), 0); ADDRLP4 0+1036 ARGP4 ADDRGP4 $4421 ARGP4 ADDRLP4 4396 ADDRGP4 Info_ValueForKey CALLP4 ASGNP4 ADDRLP4 3084 INDIRF4 ARGF4 CNSTF4 1142292480 ARGF4 ADDRLP4 3088 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 4396 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5458 ;5457: // print any server info (server full, bad version, etc) ;5458: if ( cstate.connState < CA_CONNECTED ) { ADDRLP4 0 INDIRI4 CNSTI4 5 GEI4 $4422 line 5459 ;5459: Text_PaintCenter(centerPoint, yStart + 176, scale, colorWhite, cstate.messageString, 0); ADDRLP4 3084 INDIRF4 ARGF4 ADDRLP4 3092 INDIRF4 CNSTF4 1127219200 ADDF4 ARGF4 ADDRLP4 3088 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 0+2060 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5460 ;5460: } LABELV $4422 line 5462 ;5461: ;5462: if ( lastConnState > cstate.connState ) { ADDRGP4 lastConnState INDIRI4 ADDRLP4 0 INDIRI4 LEI4 $4425 line 5463 ;5463: lastLoadingText[0] = '\0'; ADDRGP4 lastLoadingText CNSTI1 0 ASGNI1 line 5464 ;5464: } LABELV $4425 line 5465 ;5465: lastConnState = cstate.connState; ADDRGP4 lastConnState ADDRLP4 0 INDIRI4 ASGNI4 line 5467 ;5466: ;5467: switch ( cstate.connState ) { ADDRLP4 4400 ADDRLP4 0 INDIRI4 ASGNI4 ADDRLP4 4400 INDIRI4 CNSTI4 3 LTI4 $4404 ADDRLP4 4400 INDIRI4 CNSTI4 7 GTI4 $4404 ADDRLP4 4400 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 $4443-12 ADDP4 INDIRP4 JUMPV lit align 4 LABELV $4443 address $4430 address $4433 address $4436 address $4404 address $4404 code LABELV $4430 line 5469 ;5468: case CA_CONNECTING: ;5469: s = va("Awaiting connection...%i", cstate.connectPacketCount); ADDRGP4 $4431 ARGP4 ADDRLP4 0+4 INDIRI4 ARGI4 ADDRLP4 4408 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 4380 ADDRLP4 4408 INDIRP4 ASGNP4 line 5470 ;5470: break; ADDRGP4 $4428 JUMPV LABELV $4433 line 5472 ;5471: case CA_CHALLENGING: ;5472: s = va("Awaiting challenge...%i", cstate.connectPacketCount); ADDRGP4 $4434 ARGP4 ADDRLP4 0+4 INDIRI4 ARGI4 ADDRLP4 4412 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 4380 ADDRLP4 4412 INDIRP4 ASGNP4 line 5473 ;5473: break; ADDRGP4 $4428 JUMPV LABELV $4436 line 5474 ;5474: case CA_CONNECTED: { line 5477 ;5475: char downloadName[MAX_INFO_VALUE]; ;5476: ;5477: trap_Cvar_VariableStringBuffer( "cl_downloadName", downloadName, sizeof(downloadName) ); ADDRGP4 $4437 ARGP4 ADDRLP4 4416 ARGP4 CNSTI4 1024 ARGI4 ADDRGP4 trap_Cvar_VariableStringBuffer CALLV pop line 5478 ;5478: if (*downloadName) { ADDRLP4 4416 INDIRI1 CVII4 1 CNSTI4 0 EQI4 $4438 line 5479 ;5479: UI_DisplayDownloadInfo( downloadName, centerPoint, yStart, scale ); ADDRLP4 4416 ARGP4 ADDRLP4 3084 INDIRF4 ARGF4 ADDRLP4 3092 INDIRF4 ARGF4 ADDRLP4 3088 INDIRF4 ARGF4 ADDRGP4 UI_DisplayDownloadInfo CALLV pop line 5480 ;5480: return; ADDRGP4 $4404 JUMPV LABELV $4438 line 5482 ;5481: } ;5482: } line 5483 ;5483: s = "Awaiting gamestate..."; ADDRLP4 4380 ADDRGP4 $4440 ASGNP4 line 5484 ;5484: break; line 5486 ;5485: case CA_LOADING: ;5486: return; line 5488 ;5487: case CA_PRIMED: ;5488: return; line 5490 ;5489: default: ;5490: return; LABELV $4428 line 5494 ;5491: } ;5492: ;5493: ;5494: if (Q_stricmp(cstate.servername,"localhost")) { ADDRLP4 0+12 ARGP4 ADDRGP4 $4416 ARGP4 ADDRLP4 4408 ADDRGP4 Q_stricmp CALLI4 ASGNI4 ADDRLP4 4408 INDIRI4 CNSTI4 0 EQI4 $4445 line 5495 ;5495: Text_PaintCenter(centerPoint, yStart + 80, scale, colorWhite, s, 0); ADDRLP4 3084 INDIRF4 ARGF4 ADDRLP4 3092 INDIRF4 CNSTF4 1117782016 ADDF4 ARGF4 ADDRLP4 3088 INDIRF4 ARGF4 ADDRGP4 colorWhite ARGP4 ADDRLP4 4380 INDIRP4 ARGP4 CNSTF4 0 ARGF4 ADDRGP4 Text_PaintCenter CALLV pop line 5496 ;5496: } LABELV $4445 line 5499 ;5497: ;5498: // password required / connection rejected information goes here ;5499:} LABELV $4404 endproc UI_DrawConnectScreen 5440 24 data align 4 LABELV cvarTable address ui_ffa_fraglimit address $4449 address $694 byte 4 1 address ui_ffa_timelimit address $4450 address $395 byte 4 1 address ui_tourney_fraglimit address $4451 address $395 byte 4 1 address ui_tourney_timelimit address $4452 address $695 byte 4 1 address ui_team_fraglimit address $4453 address $395 byte 4 1 address ui_team_timelimit address $4454 address $694 byte 4 1 address ui_team_friendly address $4455 address $398 byte 4 1 address ui_ctf_capturelimit address $4456 address $4457 byte 4 1 address ui_ctf_timelimit address $4458 address $692 byte 4 1 address ui_ctf_friendly address $4459 address $395 byte 4 1 address ui_arenasFile address $4460 address $112 byte 4 80 address ui_botsFile address $4461 address $112 byte 4 80 address ui_spScores1 address $4462 address $112 byte 4 65 address ui_spScores2 address $4463 address $112 byte 4 65 address ui_spScores3 address $4464 address $112 byte 4 65 address ui_spScores4 address $4465 address $112 byte 4 65 address ui_spScores5 address $4466 address $112 byte 4 65 address ui_spAwards address $4467 address $112 byte 4 65 address ui_spVideos address $4468 address $112 byte 4 65 address ui_spSkill address $827 address $2267 byte 4 1 address ui_spSelection address $4469 address $112 byte 4 64 address ui_browserMaster address $4470 address $395 byte 4 1 address ui_browserGameType address $4471 address $395 byte 4 1 address ui_browserSortKey address $4472 address $2802 byte 4 1 address ui_browserShowFull address $4473 address $398 byte 4 1 address ui_browserShowEmpty address $4474 address $398 byte 4 1 address ui_brassTime address $2360 address $4475 byte 4 1 address ui_drawCrosshair address $2080 address $2802 byte 4 1 address ui_drawCrosshairNames address $4476 address $398 byte 4 1 address ui_marks address $4477 address $398 byte 4 1 address ui_server1 address $4478 address $112 byte 4 1 address ui_server2 address $4479 address $112 byte 4 1 address ui_server3 address $4480 address $112 byte 4 1 address ui_server4 address $4481 address $112 byte 4 1 address ui_server5 address $4482 address $112 byte 4 1 address ui_server6 address $4483 address $112 byte 4 1 address ui_server7 address $4484 address $112 byte 4 1 address ui_server8 address $4485 address $112 byte 4 1 address ui_server9 address $4486 address $112 byte 4 1 address ui_server10 address $4487 address $112 byte 4 1 address ui_server11 address $4488 address $112 byte 4 1 address ui_server12 address $4489 address $112 byte 4 1 address ui_server13 address $4490 address $112 byte 4 1 address ui_server14 address $4491 address $112 byte 4 1 address ui_server15 address $4492 address $112 byte 4 1 address ui_server16 address $4493 address $112 byte 4 1 address ui_cdkeychecked address $4494 address $395 byte 4 64 address ui_new address $4495 address $395 byte 4 256 address ui_debug address $4496 address $395 byte 4 256 address ui_initialized address $4497 address $395 byte 4 256 address ui_teamName address $701 address $4498 byte 4 1 address ui_opponentName address $1081 address $4499 byte 4 1 address ui_redteam address $4500 address $4498 byte 4 1 address ui_blueteam address $4501 address $4499 byte 4 1 address ui_dedicated address $4502 address $395 byte 4 1 address ui_gameType address $4503 address $4504 byte 4 1 address ui_joinGameType address $4505 address $395 byte 4 1 address ui_netGameType address $4506 address $4504 byte 4 1 address ui_actualNetGameType address $4507 address $4504 byte 4 1 address ui_redteam1 address $4508 address $395 byte 4 1 address ui_redteam2 address $4509 address $395 byte 4 1 address ui_redteam3 address $4510 address $395 byte 4 1 address ui_redteam4 address $4511 address $395 byte 4 1 address ui_redteam5 address $4512 address $395 byte 4 1 address ui_blueteam1 address $4513 address $395 byte 4 1 address ui_blueteam2 address $4514 address $395 byte 4 1 address ui_blueteam3 address $4515 address $395 byte 4 1 address ui_blueteam4 address $4516 address $395 byte 4 1 address ui_blueteam5 address $4517 address $395 byte 4 1 address ui_netSource address $1987 address $395 byte 4 1 address ui_menuFiles address $671 address $643 byte 4 1 address ui_currentTier address $1025 address $395 byte 4 1 address ui_currentMap address $891 address $395 byte 4 1 address ui_currentNetMap address $889 address $395 byte 4 1 address ui_mapIndex address $2227 address $395 byte 4 1 address ui_currentOpponent address $4518 address $395 byte 4 1 address ui_selectedPlayer address $1430 address $395 byte 4 1 address ui_selectedPlayerName address $1438 address $112 byte 4 1 address ui_lastServerRefresh_0 address $4519 address $112 byte 4 1 address ui_lastServerRefresh_1 address $4520 address $112 byte 4 1 address ui_lastServerRefresh_2 address $4521 address $112 byte 4 1 address ui_lastServerRefresh_3 address $4522 address $112 byte 4 1 address ui_singlePlayerActive address $2240 address $395 byte 4 0 address ui_scoreAccuracy address $4523 address $395 byte 4 1 address ui_scoreImpressives address $4524 address $395 byte 4 1 address ui_scoreExcellents address $4525 address $395 byte 4 1 address ui_scoreCaptures address $4526 address $395 byte 4 1 address ui_scoreDefends address $4527 address $395 byte 4 1 address ui_scoreAssists address $4528 address $395 byte 4 1 address ui_scoreGauntlets address $4529 address $395 byte 4 1 address ui_scoreScore address $4530 address $395 byte 4 1 address ui_scorePerfect address $4531 address $395 byte 4 1 address ui_scoreTeam address $4532 address $4533 byte 4 1 address ui_scoreBase address $4534 address $395 byte 4 1 address ui_scoreTime address $4535 address $4536 byte 4 1 address ui_scoreTimeBonus address $4537 address $395 byte 4 1 address ui_scoreSkillBonus address $4538 address $395 byte 4 1 address ui_scoreShutoutBonus address $4539 address $395 byte 4 1 address ui_fragLimit address $717 address $696 byte 4 0 address ui_captureLimit address $715 address $697 byte 4 0 address ui_smallFont address $4540 address $4541 byte 4 1 address ui_bigFont address $4542 address $4543 byte 4 1 address ui_findPlayer address $3200 address $4544 byte 4 1 address ui_Q3Model address $4545 address $395 byte 4 1 address ui_hudFiles address $4546 address $4547 byte 4 1 address ui_recordSPDemo address $2259 address $395 byte 4 1 address ui_teamArenaFirstRun address $4548 address $395 byte 4 1 address ui_realWarmUp address $2251 address $694 byte 4 1 address ui_realCaptureLimit address $718 address $4457 byte 4 1029 address ui_serverStatusTimeOut address $4549 address $4550 byte 4 1 align 4 LABELV cvarTableSize byte 4 110 export UI_RegisterCvars code proc UI_RegisterCvars 12 16 line 5766 ;5500: ;5501: ;5502:/* ;5503:================ ;5504:cvars ;5505:================ ;5506:*/ ;5507: ;5508:typedef struct { ;5509: vmCvar_t *vmCvar; ;5510: char *cvarName; ;5511: char *defaultString; ;5512: int cvarFlags; ;5513:} cvarTable_t; ;5514: ;5515:vmCvar_t ui_ffa_fraglimit; ;5516:vmCvar_t ui_ffa_timelimit; ;5517: ;5518:vmCvar_t ui_tourney_fraglimit; ;5519:vmCvar_t ui_tourney_timelimit; ;5520: ;5521:vmCvar_t ui_team_fraglimit; ;5522:vmCvar_t ui_team_timelimit; ;5523:vmCvar_t ui_team_friendly; ;5524: ;5525:vmCvar_t ui_ctf_capturelimit; ;5526:vmCvar_t ui_ctf_timelimit; ;5527:vmCvar_t ui_ctf_friendly; ;5528: ;5529:vmCvar_t ui_arenasFile; ;5530:vmCvar_t ui_botsFile; ;5531:vmCvar_t ui_spScores1; ;5532:vmCvar_t ui_spScores2; ;5533:vmCvar_t ui_spScores3; ;5534:vmCvar_t ui_spScores4; ;5535:vmCvar_t ui_spScores5; ;5536:vmCvar_t ui_spAwards; ;5537:vmCvar_t ui_spVideos; ;5538:vmCvar_t ui_spSkill; ;5539: ;5540:vmCvar_t ui_spSelection; ;5541: ;5542:vmCvar_t ui_browserMaster; ;5543:vmCvar_t ui_browserGameType; ;5544:vmCvar_t ui_browserSortKey; ;5545:vmCvar_t ui_browserShowFull; ;5546:vmCvar_t ui_browserShowEmpty; ;5547: ;5548:vmCvar_t ui_brassTime; ;5549:vmCvar_t ui_drawCrosshair; ;5550:vmCvar_t ui_drawCrosshairNames; ;5551:vmCvar_t ui_marks; ;5552: ;5553:vmCvar_t ui_server1; ;5554:vmCvar_t ui_server2; ;5555:vmCvar_t ui_server3; ;5556:vmCvar_t ui_server4; ;5557:vmCvar_t ui_server5; ;5558:vmCvar_t ui_server6; ;5559:vmCvar_t ui_server7; ;5560:vmCvar_t ui_server8; ;5561:vmCvar_t ui_server9; ;5562:vmCvar_t ui_server10; ;5563:vmCvar_t ui_server11; ;5564:vmCvar_t ui_server12; ;5565:vmCvar_t ui_server13; ;5566:vmCvar_t ui_server14; ;5567:vmCvar_t ui_server15; ;5568:vmCvar_t ui_server16; ;5569: ;5570:vmCvar_t ui_cdkeychecked; ;5571: ;5572:vmCvar_t ui_redteam; ;5573:vmCvar_t ui_redteam1; ;5574:vmCvar_t ui_redteam2; ;5575:vmCvar_t ui_redteam3; ;5576:vmCvar_t ui_redteam4; ;5577:vmCvar_t ui_redteam5; ;5578:vmCvar_t ui_blueteam; ;5579:vmCvar_t ui_blueteam1; ;5580:vmCvar_t ui_blueteam2; ;5581:vmCvar_t ui_blueteam3; ;5582:vmCvar_t ui_blueteam4; ;5583:vmCvar_t ui_blueteam5; ;5584:vmCvar_t ui_teamName; ;5585:vmCvar_t ui_dedicated; ;5586:vmCvar_t ui_gameType; ;5587:vmCvar_t ui_netGameType; ;5588:vmCvar_t ui_actualNetGameType; ;5589:vmCvar_t ui_joinGameType; ;5590:vmCvar_t ui_netSource; ;5591:vmCvar_t ui_serverFilterType; ;5592:vmCvar_t ui_opponentName; ;5593:vmCvar_t ui_menuFiles; ;5594:vmCvar_t ui_currentTier; ;5595:vmCvar_t ui_currentMap; ;5596:vmCvar_t ui_currentNetMap; ;5597:vmCvar_t ui_mapIndex; ;5598:vmCvar_t ui_currentOpponent; ;5599:vmCvar_t ui_selectedPlayer; ;5600:vmCvar_t ui_selectedPlayerName; ;5601:vmCvar_t ui_lastServerRefresh_0; ;5602:vmCvar_t ui_lastServerRefresh_1; ;5603:vmCvar_t ui_lastServerRefresh_2; ;5604:vmCvar_t ui_lastServerRefresh_3; ;5605:vmCvar_t ui_singlePlayerActive; ;5606:vmCvar_t ui_scoreAccuracy; ;5607:vmCvar_t ui_scoreImpressives; ;5608:vmCvar_t ui_scoreExcellents; ;5609:vmCvar_t ui_scoreCaptures; ;5610:vmCvar_t ui_scoreDefends; ;5611:vmCvar_t ui_scoreAssists; ;5612:vmCvar_t ui_scoreGauntlets; ;5613:vmCvar_t ui_scoreScore; ;5614:vmCvar_t ui_scorePerfect; ;5615:vmCvar_t ui_scoreTeam; ;5616:vmCvar_t ui_scoreBase; ;5617:vmCvar_t ui_scoreTimeBonus; ;5618:vmCvar_t ui_scoreSkillBonus; ;5619:vmCvar_t ui_scoreShutoutBonus; ;5620:vmCvar_t ui_scoreTime; ;5621:vmCvar_t ui_captureLimit; ;5622:vmCvar_t ui_fragLimit; ;5623:vmCvar_t ui_smallFont; ;5624:vmCvar_t ui_bigFont; ;5625:vmCvar_t ui_findPlayer; ;5626:vmCvar_t ui_Q3Model; ;5627:vmCvar_t ui_hudFiles; ;5628:vmCvar_t ui_recordSPDemo; ;5629:vmCvar_t ui_realCaptureLimit; ;5630:vmCvar_t ui_realWarmUp; ;5631:vmCvar_t ui_serverStatusTimeOut; ;5632: ;5633: ;5634:// bk001129 - made static to avoid aliasing ;5635:static cvarTable_t cvarTable[] = { ;5636: { &ui_ffa_fraglimit, "ui_ffa_fraglimit", "20", CVAR_ARCHIVE }, ;5637: { &ui_ffa_timelimit, "ui_ffa_timelimit", "0", CVAR_ARCHIVE }, ;5638: ;5639: { &ui_tourney_fraglimit, "ui_tourney_fraglimit", "0", CVAR_ARCHIVE }, ;5640: { &ui_tourney_timelimit, "ui_tourney_timelimit", "15", CVAR_ARCHIVE }, ;5641: ;5642: { &ui_team_fraglimit, "ui_team_fraglimit", "0", CVAR_ARCHIVE }, ;5643: { &ui_team_timelimit, "ui_team_timelimit", "20", CVAR_ARCHIVE }, ;5644: { &ui_team_friendly, "ui_team_friendly", "1", CVAR_ARCHIVE }, ;5645: ;5646: { &ui_ctf_capturelimit, "ui_ctf_capturelimit", "8", CVAR_ARCHIVE }, ;5647: { &ui_ctf_timelimit, "ui_ctf_timelimit", "30", CVAR_ARCHIVE }, ;5648: { &ui_ctf_friendly, "ui_ctf_friendly", "0", CVAR_ARCHIVE }, ;5649: ;5650: { &ui_arenasFile, "g_arenasFile", "", CVAR_INIT|CVAR_ROM }, ;5651: { &ui_botsFile, "g_botsFile", "", CVAR_INIT|CVAR_ROM }, ;5652: { &ui_spScores1, "g_spScores1", "", CVAR_ARCHIVE | CVAR_ROM }, ;5653: { &ui_spScores2, "g_spScores2", "", CVAR_ARCHIVE | CVAR_ROM }, ;5654: { &ui_spScores3, "g_spScores3", "", CVAR_ARCHIVE | CVAR_ROM }, ;5655: { &ui_spScores4, "g_spScores4", "", CVAR_ARCHIVE | CVAR_ROM }, ;5656: { &ui_spScores5, "g_spScores5", "", CVAR_ARCHIVE | CVAR_ROM }, ;5657: { &ui_spAwards, "g_spAwards", "", CVAR_ARCHIVE | CVAR_ROM }, ;5658: { &ui_spVideos, "g_spVideos", "", CVAR_ARCHIVE | CVAR_ROM }, ;5659: { &ui_spSkill, "g_spSkill", "2", CVAR_ARCHIVE }, ;5660: ;5661: { &ui_spSelection, "ui_spSelection", "", CVAR_ROM }, ;5662: ;5663: { &ui_browserMaster, "ui_browserMaster", "0", CVAR_ARCHIVE }, ;5664: { &ui_browserGameType, "ui_browserGameType", "0", CVAR_ARCHIVE }, ;5665: { &ui_browserSortKey, "ui_browserSortKey", "4", CVAR_ARCHIVE }, ;5666: { &ui_browserShowFull, "ui_browserShowFull", "1", CVAR_ARCHIVE }, ;5667: { &ui_browserShowEmpty, "ui_browserShowEmpty", "1", CVAR_ARCHIVE }, ;5668: ;5669: { &ui_brassTime, "cg_brassTime", "2500", CVAR_ARCHIVE }, ;5670: { &ui_drawCrosshair, "cg_drawCrosshair", "4", CVAR_ARCHIVE }, ;5671: { &ui_drawCrosshairNames, "cg_drawCrosshairNames", "1", CVAR_ARCHIVE }, ;5672: { &ui_marks, "cg_marks", "1", CVAR_ARCHIVE }, ;5673: ;5674: { &ui_server1, "server1", "", CVAR_ARCHIVE }, ;5675: { &ui_server2, "server2", "", CVAR_ARCHIVE }, ;5676: { &ui_server3, "server3", "", CVAR_ARCHIVE }, ;5677: { &ui_server4, "server4", "", CVAR_ARCHIVE }, ;5678: { &ui_server5, "server5", "", CVAR_ARCHIVE }, ;5679: { &ui_server6, "server6", "", CVAR_ARCHIVE }, ;5680: { &ui_server7, "server7", "", CVAR_ARCHIVE }, ;5681: { &ui_server8, "server8", "", CVAR_ARCHIVE }, ;5682: { &ui_server9, "server9", "", CVAR_ARCHIVE }, ;5683: { &ui_server10, "server10", "", CVAR_ARCHIVE }, ;5684: { &ui_server11, "server11", "", CVAR_ARCHIVE }, ;5685: { &ui_server12, "server12", "", CVAR_ARCHIVE }, ;5686: { &ui_server13, "server13", "", CVAR_ARCHIVE }, ;5687: { &ui_server14, "server14", "", CVAR_ARCHIVE }, ;5688: { &ui_server15, "server15", "", CVAR_ARCHIVE }, ;5689: { &ui_server16, "server16", "", CVAR_ARCHIVE }, ;5690: { &ui_cdkeychecked, "ui_cdkeychecked", "0", CVAR_ROM }, ;5691: { &ui_new, "ui_new", "0", CVAR_TEMP }, ;5692: { &ui_debug, "ui_debug", "0", CVAR_TEMP }, ;5693: { &ui_initialized, "ui_initialized", "0", CVAR_TEMP }, ;5694: { &ui_teamName, "ui_teamName", "Pagans", CVAR_ARCHIVE }, ;5695: { &ui_opponentName, "ui_opponentName", "Stroggs", CVAR_ARCHIVE }, ;5696: { &ui_redteam, "ui_redteam", "Pagans", CVAR_ARCHIVE }, ;5697: { &ui_blueteam, "ui_blueteam", "Stroggs", CVAR_ARCHIVE }, ;5698: { &ui_dedicated, "ui_dedicated", "0", CVAR_ARCHIVE }, ;5699: { &ui_gameType, "ui_gametype", "3", CVAR_ARCHIVE }, ;5700: { &ui_joinGameType, "ui_joinGametype", "0", CVAR_ARCHIVE }, ;5701: { &ui_netGameType, "ui_netGametype", "3", CVAR_ARCHIVE }, ;5702: { &ui_actualNetGameType, "ui_actualNetGametype", "3", CVAR_ARCHIVE }, ;5703: { &ui_redteam1, "ui_redteam1", "0", CVAR_ARCHIVE }, ;5704: { &ui_redteam2, "ui_redteam2", "0", CVAR_ARCHIVE }, ;5705: { &ui_redteam3, "ui_redteam3", "0", CVAR_ARCHIVE }, ;5706: { &ui_redteam4, "ui_redteam4", "0", CVAR_ARCHIVE }, ;5707: { &ui_redteam5, "ui_redteam5", "0", CVAR_ARCHIVE }, ;5708: { &ui_blueteam1, "ui_blueteam1", "0", CVAR_ARCHIVE }, ;5709: { &ui_blueteam2, "ui_blueteam2", "0", CVAR_ARCHIVE }, ;5710: { &ui_blueteam3, "ui_blueteam3", "0", CVAR_ARCHIVE }, ;5711: { &ui_blueteam4, "ui_blueteam4", "0", CVAR_ARCHIVE }, ;5712: { &ui_blueteam5, "ui_blueteam5", "0", CVAR_ARCHIVE }, ;5713: { &ui_netSource, "ui_netSource", "0", CVAR_ARCHIVE }, ;5714: { &ui_menuFiles, "ui_menuFiles", "ui/menus.txt", CVAR_ARCHIVE }, ;5715: { &ui_currentTier, "ui_currentTier", "0", CVAR_ARCHIVE }, ;5716: { &ui_currentMap, "ui_currentMap", "0", CVAR_ARCHIVE }, ;5717: { &ui_currentNetMap, "ui_currentNetMap", "0", CVAR_ARCHIVE }, ;5718: { &ui_mapIndex, "ui_mapIndex", "0", CVAR_ARCHIVE }, ;5719: { &ui_currentOpponent, "ui_currentOpponent", "0", CVAR_ARCHIVE }, ;5720: { &ui_selectedPlayer, "cg_selectedPlayer", "0", CVAR_ARCHIVE}, ;5721: { &ui_selectedPlayerName, "cg_selectedPlayerName", "", CVAR_ARCHIVE}, ;5722: { &ui_lastServerRefresh_0, "ui_lastServerRefresh_0", "", CVAR_ARCHIVE}, ;5723: { &ui_lastServerRefresh_1, "ui_lastServerRefresh_1", "", CVAR_ARCHIVE}, ;5724: { &ui_lastServerRefresh_2, "ui_lastServerRefresh_2", "", CVAR_ARCHIVE}, ;5725: { &ui_lastServerRefresh_3, "ui_lastServerRefresh_3", "", CVAR_ARCHIVE}, ;5726: { &ui_singlePlayerActive, "ui_singlePlayerActive", "0", 0}, ;5727: { &ui_scoreAccuracy, "ui_scoreAccuracy", "0", CVAR_ARCHIVE}, ;5728: { &ui_scoreImpressives, "ui_scoreImpressives", "0", CVAR_ARCHIVE}, ;5729: { &ui_scoreExcellents, "ui_scoreExcellents", "0", CVAR_ARCHIVE}, ;5730: { &ui_scoreCaptures, "ui_scoreCaptures", "0", CVAR_ARCHIVE}, ;5731: { &ui_scoreDefends, "ui_scoreDefends", "0", CVAR_ARCHIVE}, ;5732: { &ui_scoreAssists, "ui_scoreAssists", "0", CVAR_ARCHIVE}, ;5733: { &ui_scoreGauntlets, "ui_scoreGauntlets", "0",CVAR_ARCHIVE}, ;5734: { &ui_scoreScore, "ui_scoreScore", "0", CVAR_ARCHIVE}, ;5735: { &ui_scorePerfect, "ui_scorePerfect", "0", CVAR_ARCHIVE}, ;5736: { &ui_scoreTeam, "ui_scoreTeam", "0 to 0", CVAR_ARCHIVE}, ;5737: { &ui_scoreBase, "ui_scoreBase", "0", CVAR_ARCHIVE}, ;5738: { &ui_scoreTime, "ui_scoreTime", "00:00", CVAR_ARCHIVE}, ;5739: { &ui_scoreTimeBonus, "ui_scoreTimeBonus", "0", CVAR_ARCHIVE}, ;5740: { &ui_scoreSkillBonus, "ui_scoreSkillBonus", "0", CVAR_ARCHIVE}, ;5741: { &ui_scoreShutoutBonus, "ui_scoreShutoutBonus", "0", CVAR_ARCHIVE}, ;5742: { &ui_fragLimit, "ui_fragLimit", "10", 0}, ;5743: { &ui_captureLimit, "ui_captureLimit", "5", 0}, ;5744: { &ui_smallFont, "ui_smallFont", "0.25", CVAR_ARCHIVE}, ;5745: { &ui_bigFont, "ui_bigFont", "0.4", CVAR_ARCHIVE}, ;5746: { &ui_findPlayer, "ui_findPlayer", "Sarge", CVAR_ARCHIVE}, ;5747: { &ui_Q3Model, "ui_q3model", "0", CVAR_ARCHIVE}, ;5748: { &ui_hudFiles, "cg_hudFiles", "ui/hud.txt", CVAR_ARCHIVE}, ;5749: { &ui_recordSPDemo, "ui_recordSPDemo", "0", CVAR_ARCHIVE}, ;5750: { &ui_teamArenaFirstRun, "ui_teamArenaFirstRun", "0", CVAR_ARCHIVE}, ;5751: { &ui_realWarmUp, "g_warmup", "20", CVAR_ARCHIVE}, ;5752: { &ui_realCaptureLimit, "capturelimit", "8", CVAR_SERVERINFO | CVAR_ARCHIVE | CVAR_NORESTART}, ;5753: { &ui_serverStatusTimeOut, "ui_serverStatusTimeOut", "7000", CVAR_ARCHIVE}, ;5754: ;5755:}; ;5756: ;5757:// bk001129 - made static to avoid aliasing ;5758:static int cvarTableSize = sizeof(cvarTable) / sizeof(cvarTable[0]); ;5759: ;5760: ;5761:/* ;5762:================= ;5763:UI_RegisterCvars ;5764:================= ;5765:*/ ;5766:void UI_RegisterCvars( void ) { line 5770 ;5767: int i; ;5768: cvarTable_t *cv; ;5769: ;5770: for ( i = 0, cv = cvarTable ; i < cvarTableSize ; i++, cv++ ) { ADDRLP4 4 CNSTI4 0 ASGNI4 ADDRLP4 0 ADDRGP4 cvarTable ASGNP4 ADDRGP4 $4555 JUMPV LABELV $4552 line 5771 ;5771: trap_Cvar_Register( cv->vmCvar, cv->cvarName, cv->defaultString, cv->cvarFlags ); ADDRLP4 0 INDIRP4 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 CNSTI4 4 ADDP4 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 CNSTI4 8 ADDP4 INDIRP4 ARGP4 ADDRLP4 0 INDIRP4 CNSTI4 12 ADDP4 INDIRI4 ARGI4 ADDRGP4 trap_Cvar_Register CALLV pop line 5772 ;5772: } LABELV $4553 line 5770 ADDRLP4 4 ADDRLP4 4 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 0 ADDRLP4 0 INDIRP4 CNSTI4 16 ADDP4 ASGNP4 LABELV $4555 ADDRLP4 4 INDIRI4 ADDRGP4 cvarTableSize INDIRI4 LTI4 $4552 line 5773 ;5773:} LABELV $4551 endproc UI_RegisterCvars 12 16 export UI_UpdateCvars proc UI_UpdateCvars 8 4 line 5780 ;5774: ;5775:/* ;5776:================= ;5777:UI_UpdateCvars ;5778:================= ;5779:*/ ;5780:void UI_UpdateCvars( void ) { line 5784 ;5781: int i; ;5782: cvarTable_t *cv; ;5783: ;5784: for ( i = 0, cv = cvarTable ; i < cvarTableSize ; i++, cv++ ) { ADDRLP4 0 CNSTI4 0 ASGNI4 ADDRLP4 4 ADDRGP4 cvarTable ASGNP4 ADDRGP4 $4560 JUMPV LABELV $4557 line 5785 ;5785: trap_Cvar_Update( cv->vmCvar ); ADDRLP4 4 INDIRP4 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Update CALLV pop line 5786 ;5786: } LABELV $4558 line 5784 ADDRLP4 0 ADDRLP4 0 INDIRI4 CNSTI4 1 ADDI4 ASGNI4 ADDRLP4 4 ADDRLP4 4 INDIRP4 CNSTI4 16 ADDP4 ASGNP4 LABELV $4560 ADDRLP4 0 INDIRI4 ADDRGP4 cvarTableSize INDIRI4 LTI4 $4557 line 5787 ;5787:} LABELV $4556 endproc UI_UpdateCvars 8 4 proc UI_StopServerRefresh 12 12 line 5796 ;5788: ;5789: ;5790:/* ;5791:================= ;5792:ArenaServers_StopRefresh ;5793:================= ;5794:*/ ;5795:static void UI_StopServerRefresh( void ) ;5796:{ line 5799 ;5797: int count; ;5798: ;5799: if (!uiInfo.serverStatus.refreshActive) { ADDRGP4 uiInfo+99264+2212 INDIRI4 CNSTI4 0 NEI4 $4562 line 5801 ;5800: // not currently refreshing ;5801: return; ADDRGP4 $4561 JUMPV LABELV $4562 line 5803 ;5802: } ;5803: uiInfo.serverStatus.refreshActive = qfalse; ADDRGP4 uiInfo+99264+2212 CNSTI4 0 ASGNI4 line 5804 ;5804: Com_Printf("%d servers listed in browser with %d players.\n", ADDRGP4 $4568 ARGP4 ADDRGP4 uiInfo+99264+10412 INDIRI4 ARGI4 ADDRGP4 uiInfo+99264+10416 INDIRI4 ARGI4 ADDRGP4 Com_Printf CALLV pop line 5807 ;5805: uiInfo.serverStatus.numDisplayServers, ;5806: uiInfo.serverStatus.numPlayersOnServers); ;5807: count = trap_LAN_GetServerCount(ui_netSource.integer); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 trap_LAN_GetServerCount CALLI4 ASGNI4 ADDRLP4 0 ADDRLP4 4 INDIRI4 ASGNI4 line 5808 ;5808: if (count - uiInfo.serverStatus.numDisplayServers > 0) { ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 SUBI4 CNSTI4 0 LEI4 $4574 line 5809 ;5809: Com_Printf("%d servers not listed due to packet loss or pings higher than %d\n", ADDRGP4 $4581 ARGP4 ADDRLP4 8 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRGP4 $4578 ARGP4 ADDRLP4 0 INDIRI4 ADDRGP4 uiInfo+99264+10412 INDIRI4 SUBI4 ARGI4 ADDRLP4 8 INDIRF4 CVFI4 4 ARGI4 ADDRGP4 Com_Printf CALLV pop line 5812 ;5810: count - uiInfo.serverStatus.numDisplayServers, ;5811: (int) trap_Cvar_VariableValue("cl_maxPing")); ;5812: } LABELV $4574 line 5814 ;5813: ;5814:} LABELV $4561 endproc UI_StopServerRefresh 12 12 proc ArenaServers_MaxPing 8 4 line 5822 ;5815: ;5816:/* ;5817:================= ;5818:ArenaServers_MaxPing ;5819:================= ;5820:*/ ;5821:#ifndef MISSIONPACK // bk001206 ;5822:static int ArenaServers_MaxPing( void ) { line 5825 ;5823: int maxPing; ;5824: ;5825: maxPing = (int)trap_Cvar_VariableValue( "cl_maxPing" ); ADDRGP4 $4581 ARGP4 ADDRLP4 4 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRLP4 0 ADDRLP4 4 INDIRF4 CVFI4 4 ASGNI4 line 5826 ;5826: if( maxPing < 100 ) { ADDRLP4 0 INDIRI4 CNSTI4 100 GEI4 $4583 line 5827 ;5827: maxPing = 100; ADDRLP4 0 CNSTI4 100 ASGNI4 line 5828 ;5828: } LABELV $4583 line 5829 ;5829: return maxPing; ADDRLP4 0 INDIRI4 RETI4 LABELV $4582 endproc ArenaServers_MaxPing 8 4 proc UI_DoServerRefresh 8 4 line 5839 ;5830:} ;5831:#endif ;5832: ;5833:/* ;5834:================= ;5835:UI_DoServerRefresh ;5836:================= ;5837:*/ ;5838:static void UI_DoServerRefresh( void ) ;5839:{ line 5840 ;5840: qboolean wait = qfalse; ADDRLP4 0 CNSTI4 0 ASGNI4 line 5842 ;5841: ;5842: if (!uiInfo.serverStatus.refreshActive) { ADDRGP4 uiInfo+99264+2212 INDIRI4 CNSTI4 0 NEI4 $4586 line 5843 ;5843: return; ADDRGP4 $4585 JUMPV LABELV $4586 line 5845 ;5844: } ;5845: if (ui_netSource.integer != AS_FAVORITES) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 3 EQI4 $4590 line 5846 ;5846: if (ui_netSource.integer == AS_LOCAL) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 0 NEI4 $4593 line 5847 ;5847: if (!trap_LAN_GetServerCount(ui_netSource.integer)) { ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 trap_LAN_GetServerCount CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 NEI4 $4594 line 5848 ;5848: wait = qtrue; ADDRLP4 0 CNSTI4 1 ASGNI4 line 5849 ;5849: } line 5850 ;5850: } else { ADDRGP4 $4594 JUMPV LABELV $4593 line 5851 ;5851: if (trap_LAN_GetServerCount(ui_netSource.integer) < 0) { ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 trap_LAN_GetServerCount CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 GEI4 $4599 line 5852 ;5852: wait = qtrue; ADDRLP4 0 CNSTI4 1 ASGNI4 line 5853 ;5853: } LABELV $4599 line 5854 ;5854: } LABELV $4594 line 5855 ;5855: } LABELV $4590 line 5857 ;5856: ;5857: if (uiInfo.uiDC.realTime < uiInfo.serverStatus.refreshtime) { ADDRGP4 uiInfo+208 INDIRI4 ADDRGP4 uiInfo+99264+2192 INDIRI4 GEI4 $4602 line 5858 ;5858: if (wait) { ADDRLP4 0 INDIRI4 CNSTI4 0 EQI4 $4607 line 5859 ;5859: return; ADDRGP4 $4585 JUMPV LABELV $4607 line 5861 ;5860: } ;5861: } LABELV $4602 line 5864 ;5862: ;5863: // if still trying to retrieve pings ;5864: if (trap_LAN_UpdateVisiblePings(ui_netSource.integer)) { ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 4 ADDRGP4 trap_LAN_UpdateVisiblePings CALLI4 ASGNI4 ADDRLP4 4 INDIRI4 CNSTI4 0 EQI4 $4609 line 5865 ;5865: uiInfo.serverStatus.refreshtime = uiInfo.uiDC.realTime + 1000; ADDRGP4 uiInfo+99264+2192 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 1000 ADDI4 ASGNI4 line 5866 ;5866: } else if (!wait) { ADDRGP4 $4610 JUMPV LABELV $4609 ADDRLP4 0 INDIRI4 CNSTI4 0 NEI4 $4615 line 5868 ;5867: // get the last servers in the list ;5868: UI_BuildServerDisplayList(2); CNSTI4 2 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 5870 ;5869: // stop the refresh ;5870: UI_StopServerRefresh(); ADDRGP4 UI_StopServerRefresh CALLV pop line 5871 ;5871: } LABELV $4615 LABELV $4610 line 5873 ;5872: // ;5873: UI_BuildServerDisplayList(qfalse); CNSTI4 0 ARGI4 ADDRGP4 UI_BuildServerDisplayList CALLV pop line 5874 ;5874:} LABELV $4585 endproc UI_DoServerRefresh 8 4 proc UI_StartServerRefresh 68 24 line 5882 ;5875: ;5876:/* ;5877:================= ;5878:UI_StartServerRefresh ;5879:================= ;5880:*/ ;5881:static void UI_StartServerRefresh(qboolean full) ;5882:{ line 5887 ;5883: int i; ;5884: char *ptr; ;5885: ;5886: qtime_t q; ;5887: trap_RealTime(&q); ADDRLP4 0 ARGP4 ADDRGP4 trap_RealTime CALLI4 pop line 5888 ;5888: trap_Cvar_Set( va("ui_lastServerRefresh_%i", ui_netSource.integer), va("%s-%i, %i at %i:%i", MonthAbbrev[q.tm_mon],q.tm_mday, 1900+q.tm_year,q.tm_hour,q.tm_min)); ADDRGP4 $1353 ARGP4 ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRLP4 44 ADDRGP4 va CALLP4 ASGNP4 ADDRGP4 $4619 ARGP4 ADDRLP4 0+16 INDIRI4 CNSTI4 2 LSHI4 ADDRGP4 MonthAbbrev ADDP4 INDIRP4 ARGP4 ADDRLP4 0+12 INDIRI4 ARGI4 ADDRLP4 0+20 INDIRI4 CNSTI4 1900 ADDI4 ARGI4 ADDRLP4 0+8 INDIRI4 ARGI4 ADDRLP4 0+4 INDIRI4 ARGI4 ADDRLP4 48 ADDRGP4 va CALLP4 ASGNP4 ADDRLP4 44 INDIRP4 ARGP4 ADDRLP4 48 INDIRP4 ARGP4 ADDRGP4 trap_Cvar_Set CALLV pop line 5890 ;5889: ;5890: if (!full) { ADDRFP4 0 INDIRI4 CNSTI4 0 NEI4 $4625 line 5891 ;5891: UI_UpdatePendingPings(); ADDRGP4 UI_UpdatePendingPings CALLV pop line 5892 ;5892: return; ADDRGP4 $4617 JUMPV LABELV $4625 line 5895 ;5893: } ;5894: ;5895: uiInfo.serverStatus.refreshActive = qtrue; ADDRGP4 uiInfo+99264+2212 CNSTI4 1 ASGNI4 line 5896 ;5896: uiInfo.serverStatus.nextDisplayRefresh = uiInfo.uiDC.realTime + 1000; ADDRGP4 uiInfo+99264+10420 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 1000 ADDI4 ASGNI4 line 5898 ;5897: // clear number of displayed servers ;5898: uiInfo.serverStatus.numDisplayServers = 0; ADDRGP4 uiInfo+99264+10412 CNSTI4 0 ASGNI4 line 5899 ;5899: uiInfo.serverStatus.numPlayersOnServers = 0; ADDRGP4 uiInfo+99264+10416 CNSTI4 0 ASGNI4 line 5901 ;5900: // mark all servers as visible so we store ping updates for them ;5901: trap_LAN_MarkServerVisible(ui_netSource.integer, -1, qtrue); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 CNSTI4 -1 ARGI4 CNSTI4 1 ARGI4 ADDRGP4 trap_LAN_MarkServerVisible CALLV pop line 5903 ;5902: // reset all the pings ;5903: trap_LAN_ResetPings(ui_netSource.integer); ADDRGP4 ui_netSource+12 INDIRI4 ARGI4 ADDRGP4 trap_LAN_ResetPings CALLV pop line 5905 ;5904: // ;5905: if( ui_netSource.integer == AS_LOCAL ) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 0 NEI4 $4638 line 5906 ;5906: trap_Cmd_ExecuteText( EXEC_NOW, "localservers\n" ); CNSTI4 0 ARGI4 ADDRGP4 $4641 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 5907 ;5907: uiInfo.serverStatus.refreshtime = uiInfo.uiDC.realTime + 1000; ADDRGP4 uiInfo+99264+2192 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 1000 ADDI4 ASGNI4 line 5908 ;5908: return; ADDRGP4 $4617 JUMPV LABELV $4638 line 5911 ;5909: } ;5910: ;5911: uiInfo.serverStatus.refreshtime = uiInfo.uiDC.realTime + 5000; ADDRGP4 uiInfo+99264+2192 ADDRGP4 uiInfo+208 INDIRI4 CNSTI4 5000 ADDI4 ASGNI4 line 5912 ;5912: if( ui_netSource.integer == AS_GLOBAL || ui_netSource.integer == AS_MPLAYER ) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 2 EQI4 $4652 ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 1 NEI4 $4648 LABELV $4652 line 5913 ;5913: if( ui_netSource.integer == AS_GLOBAL ) { ADDRGP4 ui_netSource+12 INDIRI4 CNSTI4 2 NEI4 $4653 line 5914 ;5914: i = 0; ADDRLP4 40 CNSTI4 0 ASGNI4 line 5915 ;5915: } ADDRGP4 $4654 JUMPV LABELV $4653 line 5916 ;5916: else { line 5917 ;5917: i = 1; ADDRLP4 40 CNSTI4 1 ASGNI4 line 5918 ;5918: } LABELV $4654 line 5920 ;5919: ;5920: ptr = UI_Cvar_VariableString("debug_protocol"); ADDRGP4 $4289 ARGP4 ADDRLP4 52 ADDRGP4 UI_Cvar_VariableString CALLP4 ASGNP4 ADDRLP4 36 ADDRLP4 52 INDIRP4 ASGNP4 line 5921 ;5921: if (strlen(ptr)) { ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 56 ADDRGP4 strlen CALLI4 ASGNI4 ADDRLP4 56 INDIRI4 CNSTI4 0 EQI4 $4656 line 5922 ;5922: trap_Cmd_ExecuteText( EXEC_NOW, va( "globalservers %d %s full empty\n", i, ptr)); ADDRGP4 $4658 ARGP4 ADDRLP4 40 INDIRI4 ARGI4 ADDRLP4 36 INDIRP4 ARGP4 ADDRLP4 60 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 0 ARGI4 ADDRLP4 60 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 5923 ;5923: } ADDRGP4 $4657 JUMPV LABELV $4656 line 5924 ;5924: else { line 5925 ;5925: trap_Cmd_ExecuteText( EXEC_NOW, va( "globalservers %d %d full empty\n", i, (int)trap_Cvar_VariableValue( "protocol" ) ) ); ADDRGP4 $2194 ARGP4 ADDRLP4 60 ADDRGP4 trap_Cvar_VariableValue CALLF4 ASGNF4 ADDRGP4 $4659 ARGP4 ADDRLP4 40 INDIRI4 ARGI4 ADDRLP4 60 INDIRF4 CVFI4 4 ARGI4 ADDRLP4 64 ADDRGP4 va CALLP4 ASGNP4 CNSTI4 0 ARGI4 ADDRLP4 64 INDIRP4 ARGP4 ADDRGP4 trap_Cmd_ExecuteText CALLV pop line 5926 ;5926: } LABELV $4657 line 5927 ;5927: } LABELV $4648 line 5928 ;5928:} LABELV $4617 endproc UI_StartServerRefresh 68 24 bss export ui_realWarmUp align 4 LABELV ui_realWarmUp skip 272 export ui_realCaptureLimit align 4 LABELV ui_realCaptureLimit skip 272 export ui_recordSPDemo align 4 LABELV ui_recordSPDemo skip 272 export ui_hudFiles align 4 LABELV ui_hudFiles skip 272 export ui_Q3Model align 4 LABELV ui_Q3Model skip 272 export ui_findPlayer align 4 LABELV ui_findPlayer skip 272 export ui_scoreCaptures align 4 LABELV ui_scoreCaptures skip 272 export ui_teamName align 4 LABELV ui_teamName skip 272 export ui_blueteam5 align 4 LABELV ui_blueteam5 skip 272 export ui_blueteam4 align 4 LABELV ui_blueteam4 skip 272 export ui_blueteam3 align 4 LABELV ui_blueteam3 skip 272 export ui_blueteam2 align 4 LABELV ui_blueteam2 skip 272 export ui_blueteam1 align 4 LABELV ui_blueteam1 skip 272 export ui_blueteam align 4 LABELV ui_blueteam skip 272 export ui_redteam5 align 4 LABELV ui_redteam5 skip 272 export ui_redteam4 align 4 LABELV ui_redteam4 skip 272 export ui_redteam3 align 4 LABELV ui_redteam3 skip 272 export ui_redteam2 align 4 LABELV ui_redteam2 skip 272 export ui_redteam1 align 4 LABELV ui_redteam1 skip 272 export ui_redteam align 4 LABELV ui_redteam skip 272 align 1 LABELV lastLoadingText skip 1024 align 4 LABELV lastConnState skip 4 export startTime align 4 LABELV startTime skip 4 export ui_teamArenaFirstRun align 4 LABELV ui_teamArenaFirstRun skip 272 export ui_initialized align 4 LABELV ui_initialized skip 272 export ui_debug align 4 LABELV ui_debug skip 272 export ui_new align 4 LABELV ui_new skip 272 import ProcessNewUI import UI_RankStatusMenu import RankStatus_Cache import UI_SignupMenu import Signup_Cache import UI_LoginMenu import Login_Cache import UI_InitGameinfo import UI_SPUnlockMedals_f import UI_SPUnlock_f import UI_GetAwardLevel import UI_LogAwardData import UI_NewGame import UI_GetCurrentGame import UI_CanShowTierVideo import UI_ShowTierVideo import UI_TierCompleted import UI_SetBestScore import UI_GetBestScore import UI_GetBotNameByNumber import UI_LoadBots import UI_GetNumBots import UI_GetBotInfoByName import UI_GetBotInfoByNumber import UI_GetNumSPTiers import UI_GetNumSPArenas import UI_GetNumArenas import UI_GetSpecialArenaInfo import UI_GetArenaInfoByMap import UI_GetArenaInfoByNumber import UI_NetworkOptionsMenu import UI_NetworkOptionsMenu_Cache import UI_SoundOptionsMenu import UI_SoundOptionsMenu_Cache import UI_DisplayOptionsMenu import UI_DisplayOptionsMenu_Cache import UI_SaveConfigMenu import UI_SaveConfigMenu_Cache import UI_LoadConfigMenu import UI_LoadConfig_Cache import UI_TeamOrdersMenu_Cache import UI_TeamOrdersMenu_f import UI_TeamOrdersMenu import UI_RemoveBotsMenu import UI_RemoveBots_Cache import UI_AddBotsMenu import UI_AddBots_Cache import trap_VerifyCDKey import trap_R_RemapShader import trap_RealTime import trap_CIN_SetExtents import trap_CIN_DrawCinematic import trap_CIN_RunCinematic import trap_CIN_StopCinematic import trap_CIN_PlayCinematic import trap_S_StartBackgroundTrack import trap_S_StopBackgroundTrack import trap_R_RegisterFont import trap_SetCDKey import trap_GetCDKey import trap_MemoryRemaining import trap_LAN_CompareServers import trap_LAN_ServerStatus import trap_LAN_ResetPings import trap_LAN_RemoveServer import trap_LAN_AddServer import trap_LAN_UpdateVisiblePings import trap_LAN_ServerIsVisible import trap_LAN_MarkServerVisible import trap_LAN_SaveCachedServers import trap_LAN_LoadCachedServers import trap_LAN_GetPingInfo import trap_LAN_GetPing import trap_LAN_ClearPing import trap_LAN_GetPingQueueCount import trap_LAN_GetServerPing import trap_LAN_GetServerInfo import trap_LAN_GetServerAddressString import trap_LAN_GetServerCount import trap_GetConfigString import trap_GetGlconfig import trap_GetClientState import trap_GetClipboardData import trap_Key_SetCatcher import trap_Key_GetCatcher import trap_Key_ClearStates import trap_Key_SetOverstrikeMode import trap_Key_GetOverstrikeMode import trap_Key_IsDown import trap_Key_SetBinding import trap_Key_GetBindingBuf import trap_Key_KeynumToStringBuf import trap_S_RegisterSound import trap_S_StartLocalSound import trap_CM_LerpTag import trap_UpdateScreen import trap_R_ModelBounds import trap_R_DrawStretchPic import trap_R_SetColor import trap_R_RenderScene import trap_R_AddLightToScene import trap_R_AddPolyToScene import trap_R_AddRefEntityToScene import trap_R_ClearScene import trap_R_RegisterShaderNoMip import trap_R_RegisterSkin import trap_R_RegisterModel import trap_FS_GetFileList import trap_FS_FCloseFile import trap_FS_Write import trap_FS_Read import trap_FS_FOpenFile import trap_Cmd_ExecuteText import trap_Argv import trap_Argc import trap_Cvar_InfoStringBuffer import trap_Cvar_Create import trap_Cvar_Reset import trap_Cvar_SetValue import trap_Cvar_VariableStringBuffer import trap_Cvar_VariableValue import trap_Cvar_Set import trap_Cvar_Update import trap_Cvar_Register import trap_Milliseconds import trap_Error import trap_Print import UI_SPSkillMenu_Cache import UI_SPSkillMenu import UI_SPPostgameMenu_f import UI_SPPostgameMenu_Cache import UI_SPArena_Start import UI_SPLevelMenu_ReInit import UI_SPLevelMenu_f import UI_SPLevelMenu import UI_SPLevelMenu_Cache import uis import UI_LoadBestScores import m_entersound import UI_StartDemoLoop import UI_Cvar_VariableString import UI_Argv import UI_ForceMenuOff import UI_PopMenu import UI_PushMenu import UI_SetActiveMenu import UI_IsFullscreen import UI_DrawTextBox import UI_AdjustFrom640 import UI_CursorInRect import UI_DrawChar import UI_DrawString import UI_ProportionalStringWidth import UI_DrawProportionalString import UI_ProportionalSizeScale import UI_DrawBannerString import UI_LerpColor import UI_SetColor import UI_UpdateScreen import UI_DrawSides import UI_DrawTopBottom import UI_DrawRect import UI_FillRect import UI_DrawHandlePic import UI_DrawNamedPic import UI_ClampCvar import UI_ConsoleCommand import UI_Refresh import UI_MouseEvent import UI_KeyEvent import UI_Shutdown import UI_Init export uiInfo align 4 LABELV uiInfo skip 136912 import UI_RegisterClientModelname import UI_PlayerInfo_SetInfo import UI_PlayerInfo_SetModel import UI_DrawPlayer import DriverInfo_Cache import GraphicsOptions_Cache import UI_GraphicsOptionsMenu import ServerInfo_Cache import UI_ServerInfoMenu import UI_BotSelectMenu_Cache import UI_BotSelectMenu import ServerOptions_Cache import StartServer_Cache import UI_StartServerMenu import ArenaServers_Cache import UI_ArenaServersMenu import SpecifyServer_Cache import UI_SpecifyServerMenu import SpecifyLeague_Cache import UI_SpecifyLeagueMenu import Preferences_Cache import UI_PreferencesMenu import PlayerSettings_Cache import UI_PlayerSettingsMenu import PlayerModel_Cache import UI_PlayerModelMenu import UI_CDKeyMenu_f import UI_CDKeyMenu_Cache import UI_CDKeyMenu import UI_ModsMenu_Cache import UI_ModsMenu import UI_CinematicsMenu_Cache import UI_CinematicsMenu_f import UI_CinematicsMenu import Demos_Cache import UI_DemosMenu import Controls_Cache import UI_ControlsMenu import TeamMain_Cache import UI_TeamMainMenu import UI_SetupMenu import UI_SetupMenu_Cache import UI_ConfirmMenu import ConfirmMenu_Cache import UI_InGameMenu import InGame_Cache import UI_CreditMenu import UI_MainMenu import MainMenu_Cache import UI_LoadArenas import UI_ClearScores import UI_AdjustTimeByGame import MenuField_Key import MenuField_Draw import MenuField_Init import MField_Draw import MField_CharEvent import MField_KeyDownEvent import MField_Clear import ui_medalSounds import ui_medalPicNames import ui_medalNames import text_color_highlight import text_color_normal import text_color_disabled import listbar_color import list_color import name_color import color_dim import color_red import color_orange import color_blue import color_yellow import color_white import color_black import menu_dim_color import menu_black_color import menu_red_color import menu_highlight_color import menu_dark_color import menu_grayed_color import menu_text_color import weaponChangeSound import menu_null_sound import menu_buzz_sound import menu_out_sound import menu_move_sound import menu_in_sound import ScrollList_Key import ScrollList_Draw import Bitmap_Draw import Bitmap_Init import Menu_DefaultKey import Menu_SetCursorToItem import Menu_SetCursor import Menu_ActivateItem import Menu_ItemAtCursor import Menu_Draw import Menu_AdjustCursor import Menu_AddItem import Menu_Focus import Menu_Cache export ui_serverStatusTimeOut align 4 LABELV ui_serverStatusTimeOut skip 272 export ui_bigFont align 4 LABELV ui_bigFont skip 272 export ui_smallFont align 4 LABELV ui_smallFont skip 272 export ui_scoreTime align 4 LABELV ui_scoreTime skip 272 export ui_scoreShutoutBonus align 4 LABELV ui_scoreShutoutBonus skip 272 export ui_scoreSkillBonus align 4 LABELV ui_scoreSkillBonus skip 272 export ui_scoreTimeBonus align 4 LABELV ui_scoreTimeBonus skip 272 export ui_scoreBase align 4 LABELV ui_scoreBase skip 272 export ui_scoreTeam align 4 LABELV ui_scoreTeam skip 272 export ui_scorePerfect align 4 LABELV ui_scorePerfect skip 272 export ui_scoreScore align 4 LABELV ui_scoreScore skip 272 export ui_scoreGauntlets align 4 LABELV ui_scoreGauntlets skip 272 export ui_scoreAssists align 4 LABELV ui_scoreAssists skip 272 export ui_scoreDefends align 4 LABELV ui_scoreDefends skip 272 export ui_scoreExcellents align 4 LABELV ui_scoreExcellents skip 272 export ui_scoreImpressives align 4 LABELV ui_scoreImpressives skip 272 export ui_scoreAccuracy align 4 LABELV ui_scoreAccuracy skip 272 export ui_singlePlayerActive align 4 LABELV ui_singlePlayerActive skip 272 export ui_lastServerRefresh_3 align 4 LABELV ui_lastServerRefresh_3 skip 272 export ui_lastServerRefresh_2 align 4 LABELV ui_lastServerRefresh_2 skip 272 export ui_lastServerRefresh_1 align 4 LABELV ui_lastServerRefresh_1 skip 272 export ui_lastServerRefresh_0 align 4 LABELV ui_lastServerRefresh_0 skip 272 export ui_selectedPlayerName align 4 LABELV ui_selectedPlayerName skip 272 export ui_selectedPlayer align 4 LABELV ui_selectedPlayer skip 272 export ui_currentOpponent align 4 LABELV ui_currentOpponent skip 272 export ui_mapIndex align 4 LABELV ui_mapIndex skip 272 export ui_currentNetMap align 4 LABELV ui_currentNetMap skip 272 export ui_currentMap align 4 LABELV ui_currentMap skip 272 export ui_currentTier align 4 LABELV ui_currentTier skip 272 export ui_menuFiles align 4 LABELV ui_menuFiles skip 272 export ui_opponentName align 4 LABELV ui_opponentName skip 272 export ui_dedicated align 4 LABELV ui_dedicated skip 272 export ui_serverFilterType align 4 LABELV ui_serverFilterType skip 272 export ui_netSource align 4 LABELV ui_netSource skip 272 export ui_joinGameType align 4 LABELV ui_joinGameType skip 272 export ui_actualNetGameType align 4 LABELV ui_actualNetGameType skip 272 export ui_netGameType align 4 LABELV ui_netGameType skip 272 export ui_gameType align 4 LABELV ui_gameType skip 272 export ui_fragLimit align 4 LABELV ui_fragLimit skip 272 export ui_captureLimit align 4 LABELV ui_captureLimit skip 272 export ui_cdkeychecked align 4 LABELV ui_cdkeychecked skip 272 import ui_cdkey export ui_server16 align 4 LABELV ui_server16 skip 272 export ui_server15 align 4 LABELV ui_server15 skip 272 export ui_server14 align 4 LABELV ui_server14 skip 272 export ui_server13 align 4 LABELV ui_server13 skip 272 export ui_server12 align 4 LABELV ui_server12 skip 272 export ui_server11 align 4 LABELV ui_server11 skip 272 export ui_server10 align 4 LABELV ui_server10 skip 272 export ui_server9 align 4 LABELV ui_server9 skip 272 export ui_server8 align 4 LABELV ui_server8 skip 272 export ui_server7 align 4 LABELV ui_server7 skip 272 export ui_server6 align 4 LABELV ui_server6 skip 272 export ui_server5 align 4 LABELV ui_server5 skip 272 export ui_server4 align 4 LABELV ui_server4 skip 272 export ui_server3 align 4 LABELV ui_server3 skip 272 export ui_server2 align 4 LABELV ui_server2 skip 272 export ui_server1 align 4 LABELV ui_server1 skip 272 export ui_marks align 4 LABELV ui_marks skip 272 export ui_drawCrosshairNames align 4 LABELV ui_drawCrosshairNames skip 272 export ui_drawCrosshair align 4 LABELV ui_drawCrosshair skip 272 export ui_brassTime align 4 LABELV ui_brassTime skip 272 export ui_browserShowEmpty align 4 LABELV ui_browserShowEmpty skip 272 export ui_browserShowFull align 4 LABELV ui_browserShowFull skip 272 export ui_browserSortKey align 4 LABELV ui_browserSortKey skip 272 export ui_browserGameType align 4 LABELV ui_browserGameType skip 272 export ui_browserMaster align 4 LABELV ui_browserMaster skip 272 export ui_spSelection align 4 LABELV ui_spSelection skip 272 export ui_spSkill align 4 LABELV ui_spSkill skip 272 export ui_spVideos align 4 LABELV ui_spVideos skip 272 export ui_spAwards align 4 LABELV ui_spAwards skip 272 export ui_spScores5 align 4 LABELV ui_spScores5 skip 272 export ui_spScores4 align 4 LABELV ui_spScores4 skip 272 export ui_spScores3 align 4 LABELV ui_spScores3 skip 272 export ui_spScores2 align 4 LABELV ui_spScores2 skip 272 export ui_spScores1 align 4 LABELV ui_spScores1 skip 272 export ui_botsFile align 4 LABELV ui_botsFile skip 272 export ui_arenasFile align 4 LABELV ui_arenasFile skip 272 export ui_ctf_friendly align 4 LABELV ui_ctf_friendly skip 272 export ui_ctf_timelimit align 4 LABELV ui_ctf_timelimit skip 272 export ui_ctf_capturelimit align 4 LABELV ui_ctf_capturelimit skip 272 export ui_team_friendly align 4 LABELV ui_team_friendly skip 272 export ui_team_timelimit align 4 LABELV ui_team_timelimit skip 272 export ui_team_fraglimit align 4 LABELV ui_team_fraglimit skip 272 export ui_tourney_timelimit align 4 LABELV ui_tourney_timelimit skip 272 export ui_tourney_fraglimit align 4 LABELV ui_tourney_fraglimit skip 272 export ui_ffa_timelimit align 4 LABELV ui_ffa_timelimit skip 272 export ui_ffa_fraglimit align 4 LABELV ui_ffa_fraglimit skip 272 import trap_PC_SourceFileAndLine import trap_PC_ReadToken import trap_PC_FreeSource import trap_PC_LoadSource import trap_PC_AddGlobalDefine import Controls_SetDefaults import Controls_SetConfig import Controls_GetConfig import UI_OutOfMemory import UI_InitMemory import UI_Alloc import Display_CacheAll import Menu_SetFeederSelection import Menu_Paint import Menus_CloseAll import LerpColor import Display_HandleKey import Menus_CloseByName import Menus_ShowByName import Menus_FindByName import Menus_OpenByName import Display_KeyBindPending import Display_CursorType import Display_MouseMove import Display_CaptureItem import Display_GetContext import Menus_Activate import Menus_AnyFullScreenVisible import Menu_Reset import Menus_ActivateByName import Menu_PaintAll import Menu_New import Menu_Count import PC_Script_Parse import PC_String_Parse import PC_Rect_Parse import PC_Int_Parse import PC_Color_Parse import PC_Float_Parse import Script_Parse import String_Parse import Rect_Parse import Int_Parse import Color_Parse import Float_Parse import Menu_ScrollFeeder import Menu_HandleMouseMove import Menu_HandleKey import Menu_GetFocused import Menu_PostParse import Item_Init import Menu_Init import Display_ExpandMacros import Init_Display import String_Report import String_Init import String_Alloc import BG_PlayerTouchesItem import BG_PlayerStateToEntityStateExtraPolate import BG_PlayerStateToEntityState import BG_TouchJumpPad import BG_AddPredictableEventToPlayerstate import BG_EvaluateTrajectoryDelta import BG_EvaluateTrajectory import BG_CanItemBeGrabbed import BG_FindItemForHoldable import BG_FindItemForPowerup import BG_FindItemForWeapon import BG_FindItem import bg_numItems import bg_itemlist import ClipAmountForAmmo import ClipAmountForReload import Pmove import PM_UpdateViewAngles import Com_Printf import Com_Error import Info_NextPair import Info_Validate import Info_SetValueForKey_Big import Info_SetValueForKey import Info_RemoveKey_big import Info_RemoveKey import Info_ValueForKey import va import Q_CleanStr import Q_PrintStrlen import Q_strcat import Q_strncpyz import Q_strrchr import Q_strupr import Q_strlwr import Q_stricmpn import Q_strncmp import Q_stricmp import Q_isalpha import Q_isupper import Q_islower import Q_isprint import Com_sprintf import Parse3DMatrix import Parse2DMatrix import Parse1DMatrix import SkipRestOfLine import SkipBracedSection import COM_MatchToken import COM_ParseWarning import COM_ParseError import COM_Compress import COM_ParseExt import COM_Parse import COM_GetCurrentParseLine import COM_BeginParseSession import COM_DefaultExtension import COM_StripExtension import COM_SkipPath import Com_Clamp import PerpendicularVector import AngleVectors import MatrixMultiply import MakeNormalVectors import RotateAroundDirection import RotatePointAroundVector import ProjectPointOnPlane import PlaneFromPoints import AngleDelta import AngleNormalize180 import AngleNormalize360 import AnglesSubtract import AngleSubtract import LerpAngle import AngleMod import BoxOnPlaneSide import SetPlaneSignbits import AxisCopy import AxisClear import AnglesToAxis import vectoangles import Q_crandom import Q_random import Q_rand import Q_acos import Q_log2 import VectorRotate import Vector4Scale import VectorNormalize2 import VectorNormalize import CrossProduct import VectorInverse import VectorNormalizeFast import DistanceSquared import Distance import VectorLengthSquared import VectorLength import VectorCompare import AddPointToBounds import ClearBounds import RadiusFromBounds import NormalizeColor import ColorBytes4 import ColorBytes3 import _VectorMA import _VectorScale import _VectorCopy import _VectorAdd import _VectorSubtract import _DotProduct import ByteToDir import DirToByte import ClampShort import ClampChar import Q_rsqrt import Q_fabs import axisDefault import vec3_origin import g_color_table import colorDkGrey import colorMdGrey import colorLtGrey import colorWhite import colorCyan import colorMagenta import colorYellow import colorBlue import colorGreen import colorRed import colorBlack import bytedirs import Com_Memcpy import Com_Memset import Hunk_Alloc import FloatSwap import LongSwap import ShortSwap import acos import fabs import abs import tan import atan2 import cos import sin import sqrt import floor import ceil import memcpy import memset import memmove import sscanf import vsprintf import _atoi import atoi import _atof import atof import toupper import tolower import strncpy import strstr import strchr import strcmp import strcpy import strcat import strlen import rand import srand import qsort lit align 1 LABELV $4659 byte 1 103 byte 1 108 byte 1 111 byte 1 98 byte 1 97 byte 1 108 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 32 byte 1 37 byte 1 100 byte 1 32 byte 1 37 byte 1 100 byte 1 32 byte 1 102 byte 1 117 byte 1 108 byte 1 108 byte 1 32 byte 1 101 byte 1 109 byte 1 112 byte 1 116 byte 1 121 byte 1 10 byte 1 0 align 1 LABELV $4658 byte 1 103 byte 1 108 byte 1 111 byte 1 98 byte 1 97 byte 1 108 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 32 byte 1 37 byte 1 100 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 102 byte 1 117 byte 1 108 byte 1 108 byte 1 32 byte 1 101 byte 1 109 byte 1 112 byte 1 116 byte 1 121 byte 1 10 byte 1 0 align 1 LABELV $4641 byte 1 108 byte 1 111 byte 1 99 byte 1 97 byte 1 108 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $4619 byte 1 37 byte 1 115 byte 1 45 byte 1 37 byte 1 105 byte 1 44 byte 1 32 byte 1 37 byte 1 105 byte 1 32 byte 1 97 byte 1 116 byte 1 32 byte 1 37 byte 1 105 byte 1 58 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $4581 byte 1 99 byte 1 108 byte 1 95 byte 1 109 byte 1 97 byte 1 120 byte 1 80 byte 1 105 byte 1 110 byte 1 103 byte 1 0 align 1 LABELV $4578 byte 1 37 byte 1 100 byte 1 32 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 32 byte 1 110 byte 1 111 byte 1 116 byte 1 32 byte 1 108 byte 1 105 byte 1 115 byte 1 116 byte 1 101 byte 1 100 byte 1 32 byte 1 100 byte 1 117 byte 1 101 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 112 byte 1 97 byte 1 99 byte 1 107 byte 1 101 byte 1 116 byte 1 32 byte 1 108 byte 1 111 byte 1 115 byte 1 115 byte 1 32 byte 1 111 byte 1 114 byte 1 32 byte 1 112 byte 1 105 byte 1 110 byte 1 103 byte 1 115 byte 1 32 byte 1 104 byte 1 105 byte 1 103 byte 1 104 byte 1 101 byte 1 114 byte 1 32 byte 1 116 byte 1 104 byte 1 97 byte 1 110 byte 1 32 byte 1 37 byte 1 100 byte 1 10 byte 1 0 align 1 LABELV $4568 byte 1 37 byte 1 100 byte 1 32 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 32 byte 1 108 byte 1 105 byte 1 115 byte 1 116 byte 1 101 byte 1 100 byte 1 32 byte 1 105 byte 1 110 byte 1 32 byte 1 98 byte 1 114 byte 1 111 byte 1 119 byte 1 115 byte 1 101 byte 1 114 byte 1 32 byte 1 119 byte 1 105 byte 1 116 byte 1 104 byte 1 32 byte 1 37 byte 1 100 byte 1 32 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 115 byte 1 46 byte 1 10 byte 1 0 align 1 LABELV $4550 byte 1 55 byte 1 48 byte 1 48 byte 1 48 byte 1 0 align 1 LABELV $4549 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 83 byte 1 116 byte 1 97 byte 1 116 byte 1 117 byte 1 115 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 79 byte 1 117 byte 1 116 byte 1 0 align 1 LABELV $4548 byte 1 117 byte 1 105 byte 1 95 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 65 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 70 byte 1 105 byte 1 114 byte 1 115 byte 1 116 byte 1 82 byte 1 117 byte 1 110 byte 1 0 align 1 LABELV $4547 byte 1 117 byte 1 105 byte 1 47 byte 1 104 byte 1 117 byte 1 100 byte 1 46 byte 1 116 byte 1 120 byte 1 116 byte 1 0 align 1 LABELV $4546 byte 1 99 byte 1 103 byte 1 95 byte 1 104 byte 1 117 byte 1 100 byte 1 70 byte 1 105 byte 1 108 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $4545 byte 1 117 byte 1 105 byte 1 95 byte 1 113 byte 1 51 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $4544 byte 1 83 byte 1 97 byte 1 114 byte 1 103 byte 1 101 byte 1 0 align 1 LABELV $4543 byte 1 48 byte 1 46 byte 1 52 byte 1 0 align 1 LABELV $4542 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 105 byte 1 103 byte 1 70 byte 1 111 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $4541 byte 1 48 byte 1 46 byte 1 50 byte 1 53 byte 1 0 align 1 LABELV $4540 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 109 byte 1 97 byte 1 108 byte 1 108 byte 1 70 byte 1 111 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $4539 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 83 byte 1 104 byte 1 117 byte 1 116 byte 1 111 byte 1 117 byte 1 116 byte 1 66 byte 1 111 byte 1 110 byte 1 117 byte 1 115 byte 1 0 align 1 LABELV $4538 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 83 byte 1 107 byte 1 105 byte 1 108 byte 1 108 byte 1 66 byte 1 111 byte 1 110 byte 1 117 byte 1 115 byte 1 0 align 1 LABELV $4537 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 66 byte 1 111 byte 1 110 byte 1 117 byte 1 115 byte 1 0 align 1 LABELV $4536 byte 1 48 byte 1 48 byte 1 58 byte 1 48 byte 1 48 byte 1 0 align 1 LABELV $4535 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $4534 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 66 byte 1 97 byte 1 115 byte 1 101 byte 1 0 align 1 LABELV $4533 byte 1 48 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 48 byte 1 0 align 1 LABELV $4532 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $4531 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 80 byte 1 101 byte 1 114 byte 1 102 byte 1 101 byte 1 99 byte 1 116 byte 1 0 align 1 LABELV $4530 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 83 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 0 align 1 LABELV $4529 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 71 byte 1 97 byte 1 117 byte 1 110 byte 1 116 byte 1 108 byte 1 101 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $4528 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 65 byte 1 115 byte 1 115 byte 1 105 byte 1 115 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $4527 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 68 byte 1 101 byte 1 102 byte 1 101 byte 1 110 byte 1 100 byte 1 115 byte 1 0 align 1 LABELV $4526 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 67 byte 1 97 byte 1 112 byte 1 116 byte 1 117 byte 1 114 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $4525 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 69 byte 1 120 byte 1 99 byte 1 101 byte 1 108 byte 1 108 byte 1 101 byte 1 110 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $4524 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 73 byte 1 109 byte 1 112 byte 1 114 byte 1 101 byte 1 115 byte 1 115 byte 1 105 byte 1 118 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $4523 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 65 byte 1 99 byte 1 99 byte 1 117 byte 1 114 byte 1 97 byte 1 99 byte 1 121 byte 1 0 align 1 LABELV $4522 byte 1 117 byte 1 105 byte 1 95 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 95 byte 1 51 byte 1 0 align 1 LABELV $4521 byte 1 117 byte 1 105 byte 1 95 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 95 byte 1 50 byte 1 0 align 1 LABELV $4520 byte 1 117 byte 1 105 byte 1 95 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 95 byte 1 49 byte 1 0 align 1 LABELV $4519 byte 1 117 byte 1 105 byte 1 95 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 95 byte 1 48 byte 1 0 align 1 LABELV $4518 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 117 byte 1 114 byte 1 114 byte 1 101 byte 1 110 byte 1 116 byte 1 79 byte 1 112 byte 1 112 byte 1 111 byte 1 110 byte 1 101 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $4517 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 53 byte 1 0 align 1 LABELV $4516 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 52 byte 1 0 align 1 LABELV $4515 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 51 byte 1 0 align 1 LABELV $4514 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 50 byte 1 0 align 1 LABELV $4513 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 49 byte 1 0 align 1 LABELV $4512 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 53 byte 1 0 align 1 LABELV $4511 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 52 byte 1 0 align 1 LABELV $4510 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 51 byte 1 0 align 1 LABELV $4509 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 50 byte 1 0 align 1 LABELV $4508 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 49 byte 1 0 align 1 LABELV $4507 byte 1 117 byte 1 105 byte 1 95 byte 1 97 byte 1 99 byte 1 116 byte 1 117 byte 1 97 byte 1 108 byte 1 78 byte 1 101 byte 1 116 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $4506 byte 1 117 byte 1 105 byte 1 95 byte 1 110 byte 1 101 byte 1 116 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $4505 byte 1 117 byte 1 105 byte 1 95 byte 1 106 byte 1 111 byte 1 105 byte 1 110 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $4504 byte 1 51 byte 1 0 align 1 LABELV $4503 byte 1 117 byte 1 105 byte 1 95 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $4502 byte 1 117 byte 1 105 byte 1 95 byte 1 100 byte 1 101 byte 1 100 byte 1 105 byte 1 99 byte 1 97 byte 1 116 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $4501 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $4500 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $4499 byte 1 83 byte 1 116 byte 1 114 byte 1 111 byte 1 103 byte 1 103 byte 1 115 byte 1 0 align 1 LABELV $4498 byte 1 80 byte 1 97 byte 1 103 byte 1 97 byte 1 110 byte 1 115 byte 1 0 align 1 LABELV $4497 byte 1 117 byte 1 105 byte 1 95 byte 1 105 byte 1 110 byte 1 105 byte 1 116 byte 1 105 byte 1 97 byte 1 108 byte 1 105 byte 1 122 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $4496 byte 1 117 byte 1 105 byte 1 95 byte 1 100 byte 1 101 byte 1 98 byte 1 117 byte 1 103 byte 1 0 align 1 LABELV $4495 byte 1 117 byte 1 105 byte 1 95 byte 1 110 byte 1 101 byte 1 119 byte 1 0 align 1 LABELV $4494 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 100 byte 1 107 byte 1 101 byte 1 121 byte 1 99 byte 1 104 byte 1 101 byte 1 99 byte 1 107 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $4493 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 49 byte 1 54 byte 1 0 align 1 LABELV $4492 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 49 byte 1 53 byte 1 0 align 1 LABELV $4491 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 49 byte 1 52 byte 1 0 align 1 LABELV $4490 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 49 byte 1 51 byte 1 0 align 1 LABELV $4489 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 49 byte 1 50 byte 1 0 align 1 LABELV $4488 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 49 byte 1 49 byte 1 0 align 1 LABELV $4487 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 49 byte 1 48 byte 1 0 align 1 LABELV $4486 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 57 byte 1 0 align 1 LABELV $4485 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 56 byte 1 0 align 1 LABELV $4484 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 55 byte 1 0 align 1 LABELV $4483 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 54 byte 1 0 align 1 LABELV $4482 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 53 byte 1 0 align 1 LABELV $4481 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 52 byte 1 0 align 1 LABELV $4480 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 51 byte 1 0 align 1 LABELV $4479 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 50 byte 1 0 align 1 LABELV $4478 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 49 byte 1 0 align 1 LABELV $4477 byte 1 99 byte 1 103 byte 1 95 byte 1 109 byte 1 97 byte 1 114 byte 1 107 byte 1 115 byte 1 0 align 1 LABELV $4476 byte 1 99 byte 1 103 byte 1 95 byte 1 100 byte 1 114 byte 1 97 byte 1 119 byte 1 67 byte 1 114 byte 1 111 byte 1 115 byte 1 115 byte 1 104 byte 1 97 byte 1 105 byte 1 114 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $4475 byte 1 50 byte 1 53 byte 1 48 byte 1 48 byte 1 0 align 1 LABELV $4474 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 114 byte 1 111 byte 1 119 byte 1 115 byte 1 101 byte 1 114 byte 1 83 byte 1 104 byte 1 111 byte 1 119 byte 1 69 byte 1 109 byte 1 112 byte 1 116 byte 1 121 byte 1 0 align 1 LABELV $4473 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 114 byte 1 111 byte 1 119 byte 1 115 byte 1 101 byte 1 114 byte 1 83 byte 1 104 byte 1 111 byte 1 119 byte 1 70 byte 1 117 byte 1 108 byte 1 108 byte 1 0 align 1 LABELV $4472 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 114 byte 1 111 byte 1 119 byte 1 115 byte 1 101 byte 1 114 byte 1 83 byte 1 111 byte 1 114 byte 1 116 byte 1 75 byte 1 101 byte 1 121 byte 1 0 align 1 LABELV $4471 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 114 byte 1 111 byte 1 119 byte 1 115 byte 1 101 byte 1 114 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 84 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $4470 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 114 byte 1 111 byte 1 119 byte 1 115 byte 1 101 byte 1 114 byte 1 77 byte 1 97 byte 1 115 byte 1 116 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $4469 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 112 byte 1 83 byte 1 101 byte 1 108 byte 1 101 byte 1 99 byte 1 116 byte 1 105 byte 1 111 byte 1 110 byte 1 0 align 1 LABELV $4468 byte 1 103 byte 1 95 byte 1 115 byte 1 112 byte 1 86 byte 1 105 byte 1 100 byte 1 101 byte 1 111 byte 1 115 byte 1 0 align 1 LABELV $4467 byte 1 103 byte 1 95 byte 1 115 byte 1 112 byte 1 65 byte 1 119 byte 1 97 byte 1 114 byte 1 100 byte 1 115 byte 1 0 align 1 LABELV $4466 byte 1 103 byte 1 95 byte 1 115 byte 1 112 byte 1 83 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 115 byte 1 53 byte 1 0 align 1 LABELV $4465 byte 1 103 byte 1 95 byte 1 115 byte 1 112 byte 1 83 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 115 byte 1 52 byte 1 0 align 1 LABELV $4464 byte 1 103 byte 1 95 byte 1 115 byte 1 112 byte 1 83 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 115 byte 1 51 byte 1 0 align 1 LABELV $4463 byte 1 103 byte 1 95 byte 1 115 byte 1 112 byte 1 83 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 115 byte 1 50 byte 1 0 align 1 LABELV $4462 byte 1 103 byte 1 95 byte 1 115 byte 1 112 byte 1 83 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 115 byte 1 49 byte 1 0 align 1 LABELV $4461 byte 1 103 byte 1 95 byte 1 98 byte 1 111 byte 1 116 byte 1 115 byte 1 70 byte 1 105 byte 1 108 byte 1 101 byte 1 0 align 1 LABELV $4460 byte 1 103 byte 1 95 byte 1 97 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 115 byte 1 70 byte 1 105 byte 1 108 byte 1 101 byte 1 0 align 1 LABELV $4459 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 116 byte 1 102 byte 1 95 byte 1 102 byte 1 114 byte 1 105 byte 1 101 byte 1 110 byte 1 100 byte 1 108 byte 1 121 byte 1 0 align 1 LABELV $4458 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 116 byte 1 102 byte 1 95 byte 1 116 byte 1 105 byte 1 109 byte 1 101 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $4457 byte 1 56 byte 1 0 align 1 LABELV $4456 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 116 byte 1 102 byte 1 95 byte 1 99 byte 1 97 byte 1 112 byte 1 116 byte 1 117 byte 1 114 byte 1 101 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $4455 byte 1 117 byte 1 105 byte 1 95 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 95 byte 1 102 byte 1 114 byte 1 105 byte 1 101 byte 1 110 byte 1 100 byte 1 108 byte 1 121 byte 1 0 align 1 LABELV $4454 byte 1 117 byte 1 105 byte 1 95 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 95 byte 1 116 byte 1 105 byte 1 109 byte 1 101 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $4453 byte 1 117 byte 1 105 byte 1 95 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 95 byte 1 102 byte 1 114 byte 1 97 byte 1 103 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $4452 byte 1 117 byte 1 105 byte 1 95 byte 1 116 byte 1 111 byte 1 117 byte 1 114 byte 1 110 byte 1 101 byte 1 121 byte 1 95 byte 1 116 byte 1 105 byte 1 109 byte 1 101 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $4451 byte 1 117 byte 1 105 byte 1 95 byte 1 116 byte 1 111 byte 1 117 byte 1 114 byte 1 110 byte 1 101 byte 1 121 byte 1 95 byte 1 102 byte 1 114 byte 1 97 byte 1 103 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $4450 byte 1 117 byte 1 105 byte 1 95 byte 1 102 byte 1 102 byte 1 97 byte 1 95 byte 1 116 byte 1 105 byte 1 109 byte 1 101 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $4449 byte 1 117 byte 1 105 byte 1 95 byte 1 102 byte 1 102 byte 1 97 byte 1 95 byte 1 102 byte 1 114 byte 1 97 byte 1 103 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $4440 byte 1 65 byte 1 119 byte 1 97 byte 1 105 byte 1 116 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 115 byte 1 116 byte 1 97 byte 1 116 byte 1 101 byte 1 46 byte 1 46 byte 1 46 byte 1 0 align 1 LABELV $4437 byte 1 99 byte 1 108 byte 1 95 byte 1 100 byte 1 111 byte 1 119 byte 1 110 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $4434 byte 1 65 byte 1 119 byte 1 97 byte 1 105 byte 1 116 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 99 byte 1 104 byte 1 97 byte 1 108 byte 1 108 byte 1 101 byte 1 110 byte 1 103 byte 1 101 byte 1 46 byte 1 46 byte 1 46 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $4431 byte 1 65 byte 1 119 byte 1 97 byte 1 105 byte 1 116 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 99 byte 1 111 byte 1 110 byte 1 110 byte 1 101 byte 1 99 byte 1 116 byte 1 105 byte 1 111 byte 1 110 byte 1 46 byte 1 46 byte 1 46 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $4421 byte 1 109 byte 1 111 byte 1 116 byte 1 100 byte 1 0 align 1 LABELV $4418 byte 1 67 byte 1 111 byte 1 110 byte 1 110 byte 1 101 byte 1 99 byte 1 116 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $4417 byte 1 83 byte 1 116 byte 1 97 byte 1 114 byte 1 116 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 117 byte 1 112 byte 1 46 byte 1 46 byte 1 46 byte 1 0 align 1 LABELV $4416 byte 1 108 byte 1 111 byte 1 99 byte 1 97 byte 1 108 byte 1 104 byte 1 111 byte 1 115 byte 1 116 byte 1 0 align 1 LABELV $4412 byte 1 76 byte 1 111 byte 1 97 byte 1 100 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $4405 byte 1 67 byte 1 111 byte 1 110 byte 1 110 byte 1 101 byte 1 99 byte 1 116 byte 1 0 align 1 LABELV $4403 byte 1 37 byte 1 115 byte 1 47 byte 1 83 byte 1 101 byte 1 99 byte 1 0 align 1 LABELV $4400 byte 1 40 byte 1 37 byte 1 115 byte 1 32 byte 1 99 byte 1 111 byte 1 112 byte 1 105 byte 1 101 byte 1 100 byte 1 41 byte 1 0 align 1 LABELV $4391 byte 1 40 byte 1 37 byte 1 115 byte 1 32 byte 1 111 byte 1 102 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 99 byte 1 111 byte 1 112 byte 1 105 byte 1 101 byte 1 100 byte 1 41 byte 1 0 align 1 LABELV $4390 byte 1 101 byte 1 115 byte 1 116 byte 1 105 byte 1 109 byte 1 97 byte 1 116 byte 1 105 byte 1 110 byte 1 103 byte 1 0 align 1 LABELV $4386 byte 1 37 byte 1 115 byte 1 32 byte 1 40 byte 1 37 byte 1 100 byte 1 37 byte 1 37 byte 1 41 byte 1 0 align 1 LABELV $4383 byte 1 99 byte 1 108 byte 1 95 byte 1 100 byte 1 111 byte 1 119 byte 1 110 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $4382 byte 1 99 byte 1 108 byte 1 95 byte 1 100 byte 1 111 byte 1 119 byte 1 110 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 67 byte 1 111 byte 1 117 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $4381 byte 1 99 byte 1 108 byte 1 95 byte 1 100 byte 1 111 byte 1 119 byte 1 110 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 83 byte 1 105 byte 1 122 byte 1 101 byte 1 0 align 1 LABELV $4375 byte 1 37 byte 1 100 byte 1 32 byte 1 115 byte 1 101 byte 1 99 byte 1 0 align 1 LABELV $4374 byte 1 37 byte 1 100 byte 1 32 byte 1 109 byte 1 105 byte 1 110 byte 1 32 byte 1 37 byte 1 100 byte 1 32 byte 1 115 byte 1 101 byte 1 99 byte 1 0 align 1 LABELV $4371 byte 1 37 byte 1 100 byte 1 32 byte 1 104 byte 1 114 byte 1 32 byte 1 37 byte 1 100 byte 1 32 byte 1 109 byte 1 105 byte 1 110 byte 1 0 align 1 LABELV $4367 byte 1 37 byte 1 100 byte 1 32 byte 1 98 byte 1 121 byte 1 116 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $4366 byte 1 37 byte 1 100 byte 1 32 byte 1 75 byte 1 66 byte 1 0 align 1 LABELV $4363 byte 1 46 byte 1 37 byte 1 48 byte 1 50 byte 1 100 byte 1 32 byte 1 77 byte 1 66 byte 1 0 align 1 LABELV $4360 byte 1 46 byte 1 37 byte 1 48 byte 1 50 byte 1 100 byte 1 32 byte 1 71 byte 1 66 byte 1 0 align 1 LABELV $4354 byte 1 105 byte 1 110 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $4352 byte 1 101 byte 1 110 byte 1 100 byte 1 111 byte 1 102 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $4344 byte 1 101 byte 1 114 byte 1 114 byte 1 111 byte 1 114 byte 1 95 byte 1 112 byte 1 111 byte 1 112 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 0 align 1 LABELV $4289 byte 1 100 byte 1 101 byte 1 98 byte 1 117 byte 1 103 byte 1 95 byte 1 112 byte 1 114 byte 1 111 byte 1 116 byte 1 111 byte 1 99 byte 1 111 byte 1 108 byte 1 0 align 1 LABELV $4288 byte 1 48 byte 1 46 byte 1 53 byte 1 0 align 1 LABELV $4287 byte 1 115 byte 1 95 byte 1 109 byte 1 117 byte 1 115 byte 1 105 byte 1 99 byte 1 118 byte 1 111 byte 1 108 byte 1 117 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $4286 byte 1 48 byte 1 46 byte 1 56 byte 1 0 align 1 LABELV $4285 byte 1 115 byte 1 95 byte 1 118 byte 1 111 byte 1 108 byte 1 117 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $4284 byte 1 117 byte 1 105 byte 1 95 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 65 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 70 byte 1 105 byte 1 114 byte 1 115 byte 1 116 byte 1 82 byte 1 117 byte 1 110 byte 1 0 align 1 LABELV $4266 byte 1 117 byte 1 105 byte 1 47 byte 1 105 byte 1 110 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 46 byte 1 116 byte 1 120 byte 1 116 byte 1 0 align 1 LABELV $4262 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 105 byte 1 110 byte 1 102 byte 1 111 byte 1 46 byte 1 116 byte 1 120 byte 1 116 byte 1 0 align 1 LABELV $4258 byte 1 119 byte 1 104 byte 1 105 byte 1 116 byte 1 101 byte 1 0 align 1 LABELV $4256 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 51 byte 1 95 byte 1 99 byte 1 117 byte 1 114 byte 1 115 byte 1 111 byte 1 114 byte 1 50 byte 1 0 align 1 LABELV $4183 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 115 byte 1 47 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $4164 byte 1 37 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $4163 byte 1 105 byte 1 99 byte 1 111 byte 1 110 byte 1 95 byte 1 100 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 0 align 1 LABELV $4160 byte 1 105 byte 1 99 byte 1 111 byte 1 110 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $4159 byte 1 105 byte 1 99 byte 1 111 byte 1 110 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 0 align 1 LABELV $4158 byte 1 105 byte 1 99 byte 1 111 byte 1 110 byte 1 95 byte 1 0 align 1 LABELV $4150 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $4149 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 115 byte 1 47 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $4147 byte 1 46 byte 1 46 byte 1 0 align 1 LABELV $4146 byte 1 46 byte 1 0 align 1 LABELV $4136 byte 1 47 byte 1 0 align 1 LABELV $4135 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 115 byte 1 47 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 115 byte 1 0 align 1 LABELV $4086 byte 1 109 byte 1 97 byte 1 112 byte 1 115 byte 1 0 align 1 LABELV $4081 byte 1 106 byte 1 111 byte 1 105 byte 1 110 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $4076 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $4061 byte 1 84 byte 1 111 byte 1 111 byte 1 32 byte 1 109 byte 1 97 byte 1 110 byte 1 121 byte 1 32 byte 1 109 byte 1 97 byte 1 112 byte 1 115 byte 1 44 byte 1 32 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 32 byte 1 111 byte 1 110 byte 1 101 byte 1 32 byte 1 114 byte 1 101 byte 1 112 byte 1 108 byte 1 97 byte 1 99 byte 1 101 byte 1 100 byte 1 33 byte 1 10 byte 1 0 align 1 LABELV $4053 byte 1 108 byte 1 101 byte 1 118 byte 1 101 byte 1 108 byte 1 115 byte 1 104 byte 1 111 byte 1 116 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 95 byte 1 115 byte 1 109 byte 1 97 byte 1 108 byte 1 108 byte 1 0 align 1 LABELV $3997 byte 1 84 byte 1 111 byte 1 111 byte 1 32 byte 1 109 byte 1 97 byte 1 110 byte 1 121 byte 1 32 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 32 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 115 byte 1 44 byte 1 32 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 32 byte 1 111 byte 1 110 byte 1 101 byte 1 32 byte 1 114 byte 1 101 byte 1 112 byte 1 108 byte 1 97 byte 1 99 byte 1 101 byte 1 33 byte 1 10 byte 1 0 align 1 LABELV $3992 byte 1 84 byte 1 111 byte 1 111 byte 1 32 byte 1 109 byte 1 97 byte 1 110 byte 1 121 byte 1 32 byte 1 110 byte 1 101 byte 1 116 byte 1 32 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 32 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 115 byte 1 44 byte 1 32 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 32 byte 1 111 byte 1 110 byte 1 101 byte 1 32 byte 1 114 byte 1 101 byte 1 112 byte 1 108 byte 1 97 byte 1 99 byte 1 101 byte 1 33 byte 1 10 byte 1 0 align 1 LABELV $3950 byte 1 97 byte 1 108 byte 1 105 byte 1 97 byte 1 115 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $3947 byte 1 99 byte 1 104 byte 1 97 byte 1 114 byte 1 97 byte 1 99 byte 1 116 byte 1 101 byte 1 114 byte 1 115 byte 1 0 align 1 LABELV $3942 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 115 byte 1 0 align 1 LABELV $3925 byte 1 84 byte 1 111 byte 1 111 byte 1 32 byte 1 109 byte 1 97 byte 1 110 byte 1 121 byte 1 32 byte 1 97 byte 1 108 byte 1 105 byte 1 97 byte 1 115 byte 1 101 byte 1 115 byte 1 44 byte 1 32 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 32 byte 1 97 byte 1 108 byte 1 105 byte 1 97 byte 1 115 byte 1 32 byte 1 114 byte 1 101 byte 1 112 byte 1 108 byte 1 97 byte 1 99 byte 1 101 byte 1 100 byte 1 33 byte 1 10 byte 1 0 align 1 LABELV $3915 byte 1 76 byte 1 111 byte 1 97 byte 1 100 byte 1 101 byte 1 100 byte 1 32 byte 1 99 byte 1 104 byte 1 97 byte 1 114 byte 1 97 byte 1 99 byte 1 116 byte 1 101 byte 1 114 byte 1 32 byte 1 97 byte 1 108 byte 1 105 byte 1 97 byte 1 115 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 117 byte 1 115 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 99 byte 1 104 byte 1 97 byte 1 114 byte 1 97 byte 1 99 byte 1 116 byte 1 101 byte 1 114 byte 1 32 byte 1 97 byte 1 105 byte 1 32 byte 1 37 byte 1 115 byte 1 46 byte 1 10 byte 1 0 align 1 LABELV $3887 byte 1 84 byte 1 111 byte 1 111 byte 1 32 byte 1 109 byte 1 97 byte 1 110 byte 1 121 byte 1 32 byte 1 99 byte 1 104 byte 1 97 byte 1 114 byte 1 97 byte 1 99 byte 1 116 byte 1 101 byte 1 114 byte 1 115 byte 1 44 byte 1 32 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 32 byte 1 99 byte 1 104 byte 1 97 byte 1 114 byte 1 97 byte 1 99 byte 1 116 byte 1 101 byte 1 114 byte 1 32 byte 1 114 byte 1 101 byte 1 112 byte 1 108 byte 1 97 byte 1 99 byte 1 101 byte 1 100 byte 1 33 byte 1 10 byte 1 0 align 1 LABELV $3877 byte 1 76 byte 1 111 byte 1 97 byte 1 100 byte 1 101 byte 1 100 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 99 byte 1 104 byte 1 97 byte 1 114 byte 1 97 byte 1 99 byte 1 116 byte 1 101 byte 1 114 byte 1 32 byte 1 37 byte 1 115 byte 1 46 byte 1 10 byte 1 0 align 1 LABELV $3870 byte 1 109 byte 1 97 byte 1 108 byte 1 101 byte 1 0 align 1 LABELV $3867 byte 1 74 byte 1 97 byte 1 110 byte 1 101 byte 1 116 byte 1 0 align 1 LABELV $3863 byte 1 102 byte 1 101 byte 1 109 byte 1 97 byte 1 108 byte 1 101 byte 1 0 align 1 LABELV $3858 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 115 byte 1 47 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 115 byte 1 47 byte 1 104 byte 1 101 byte 1 97 byte 1 100 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 47 byte 1 105 byte 1 99 byte 1 111 byte 1 110 byte 1 95 byte 1 100 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $3831 byte 1 84 byte 1 111 byte 1 111 byte 1 32 byte 1 109 byte 1 97 byte 1 110 byte 1 121 byte 1 32 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 115 byte 1 44 byte 1 32 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 32 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 32 byte 1 114 byte 1 101 byte 1 112 byte 1 108 byte 1 97 byte 1 99 byte 1 101 byte 1 100 byte 1 33 byte 1 10 byte 1 0 align 1 LABELV $3824 byte 1 76 byte 1 111 byte 1 97 byte 1 100 byte 1 101 byte 1 100 byte 1 32 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 119 byte 1 105 byte 1 116 byte 1 104 byte 1 32 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 32 byte 1 105 byte 1 99 byte 1 111 byte 1 110 byte 1 32 byte 1 37 byte 1 115 byte 1 46 byte 1 10 byte 1 0 align 1 LABELV $3666 byte 1 42 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $3563 byte 1 46 byte 1 46 byte 1 46 byte 1 0 align 1 LABELV $3559 byte 1 85 byte 1 110 byte 1 107 byte 1 110 byte 1 111 byte 1 119 byte 1 110 byte 1 0 align 1 LABELV $3555 byte 1 37 byte 1 115 byte 1 32 byte 1 40 byte 1 37 byte 1 115 byte 1 41 byte 1 0 align 1 LABELV $3552 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $3551 byte 1 40 byte 1 65 byte 1 41 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $3550 byte 1 115 byte 1 118 byte 1 95 byte 1 97 byte 1 108 byte 1 108 byte 1 111 byte 1 119 byte 1 65 byte 1 110 byte 1 111 byte 1 110 byte 1 121 byte 1 109 byte 1 111 byte 1 117 byte 1 115 byte 1 0 align 1 LABELV $3547 byte 1 110 byte 1 101 byte 1 116 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $3546 byte 1 37 byte 1 115 byte 1 32 byte 1 91 byte 1 37 byte 1 115 byte 1 93 byte 1 0 align 1 LABELV $3369 byte 1 115 byte 1 0 align 1 LABELV $3366 byte 1 37 byte 1 100 byte 1 32 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 37 byte 1 115 byte 1 32 byte 1 102 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 32 byte 1 119 byte 1 105 byte 1 116 byte 1 104 byte 1 32 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $3361 byte 1 110 byte 1 111 byte 1 32 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 32 byte 1 102 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 0 align 1 LABELV $3277 byte 1 115 byte 1 101 byte 1 97 byte 1 114 byte 1 99 byte 1 104 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 37 byte 1 100 byte 1 47 byte 1 37 byte 1 100 byte 1 46 byte 1 46 byte 1 46 byte 1 0 align 1 LABELV $3219 byte 1 115 byte 1 101 byte 1 97 byte 1 114 byte 1 99 byte 1 104 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 37 byte 1 100 byte 1 46 byte 1 46 byte 1 46 byte 1 0 align 1 LABELV $3211 byte 1 99 byte 1 108 byte 1 95 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 83 byte 1 116 byte 1 97 byte 1 116 byte 1 117 byte 1 115 byte 1 82 byte 1 101 byte 1 115 byte 1 101 byte 1 110 byte 1 100 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $3200 byte 1 117 byte 1 105 byte 1 95 byte 1 102 byte 1 105 byte 1 110 byte 1 100 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $3155 byte 1 112 byte 1 105 byte 1 110 byte 1 103 byte 1 0 align 1 LABELV $3154 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 0 align 1 LABELV $3153 byte 1 110 byte 1 117 byte 1 109 byte 1 0 align 1 LABELV $3115 byte 1 116 byte 1 105 byte 1 109 byte 1 101 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $3114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 105 byte 1 111 byte 1 110 byte 1 0 align 1 LABELV $3113 byte 1 77 byte 1 97 byte 1 112 byte 1 0 align 1 LABELV $3112 byte 1 109 byte 1 97 byte 1 112 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $3111 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 32 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $3110 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 32 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $3109 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $3108 byte 1 65 byte 1 100 byte 1 100 byte 1 114 byte 1 101 byte 1 115 byte 1 115 byte 1 0 align 1 LABELV $3107 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $3106 byte 1 115 byte 1 118 byte 1 95 byte 1 104 byte 1 111 byte 1 115 byte 1 116 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $3090 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $3078 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $3058 byte 1 99 byte 1 108 byte 1 105 byte 1 101 byte 1 110 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $3015 byte 1 87 byte 1 101 byte 1 108 byte 1 99 byte 1 111 byte 1 109 byte 1 101 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 32 byte 1 65 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 33 byte 1 0 align 1 LABELV $3004 byte 1 99 byte 1 108 byte 1 95 byte 1 109 byte 1 111 byte 1 116 byte 1 100 byte 1 83 byte 1 116 byte 1 114 byte 1 105 byte 1 110 byte 1 103 byte 1 0 align 1 LABELV $2847 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 115 byte 1 47 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 115 byte 1 47 byte 1 99 byte 1 104 byte 1 97 byte 1 114 byte 1 97 byte 1 99 byte 1 116 byte 1 101 byte 1 114 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 47 byte 1 108 byte 1 111 byte 1 119 byte 1 101 byte 1 114 byte 1 95 byte 1 100 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 46 byte 1 115 byte 1 107 byte 1 105 byte 1 110 byte 1 0 align 1 LABELV $2844 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 115 byte 1 47 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 47 byte 1 108 byte 1 111 byte 1 119 byte 1 101 byte 1 114 byte 1 95 byte 1 100 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 46 byte 1 115 byte 1 107 byte 1 105 byte 1 110 byte 1 0 align 1 LABELV $2808 byte 1 117 byte 1 110 byte 1 107 byte 1 110 byte 1 111 byte 1 119 byte 1 110 byte 1 32 byte 1 85 byte 1 73 byte 1 32 byte 1 115 byte 1 99 byte 1 114 byte 1 105 byte 1 112 byte 1 116 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2805 byte 1 117 byte 1 112 byte 1 100 byte 1 97 byte 1 116 byte 1 101 byte 1 0 align 1 LABELV $2802 byte 1 52 byte 1 0 align 1 LABELV $2801 byte 1 103 byte 1 108 byte 1 67 byte 1 117 byte 1 115 byte 1 116 byte 1 111 byte 1 109 byte 1 0 align 1 LABELV $2792 byte 1 118 byte 1 111 byte 1 105 byte 1 99 byte 1 101 byte 1 79 byte 1 114 byte 1 100 byte 1 101 byte 1 114 byte 1 115 byte 1 0 align 1 LABELV $2784 byte 1 118 byte 1 111 byte 1 105 byte 1 99 byte 1 101 byte 1 79 byte 1 114 byte 1 100 byte 1 101 byte 1 114 byte 1 115 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $2772 byte 1 10 byte 1 0 align 1 LABELV $2765 byte 1 111 byte 1 114 byte 1 100 byte 1 101 byte 1 114 byte 1 115 byte 1 0 align 1 LABELV $2756 byte 1 117 byte 1 105 byte 1 95 byte 1 102 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 65 byte 1 100 byte 1 100 byte 1 114 byte 1 101 byte 1 115 byte 1 115 byte 1 0 align 1 LABELV $2755 byte 1 117 byte 1 105 byte 1 95 byte 1 102 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2751 byte 1 99 byte 1 114 byte 1 101 byte 1 97 byte 1 116 byte 1 101 byte 1 70 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 0 align 1 LABELV $2738 byte 1 100 byte 1 101 byte 1 108 byte 1 101 byte 1 116 byte 1 101 byte 1 70 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 0 align 1 LABELV $2735 byte 1 65 byte 1 100 byte 1 100 byte 1 101 byte 1 100 byte 1 32 byte 1 102 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 32 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2734 byte 1 70 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 32 byte 1 108 byte 1 105 byte 1 115 byte 1 116 byte 1 32 byte 1 102 byte 1 117 byte 1 108 byte 1 108 byte 1 10 byte 1 0 align 1 LABELV $2731 byte 1 70 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 32 byte 1 97 byte 1 108 byte 1 114 byte 1 101 byte 1 97 byte 1 100 byte 1 121 byte 1 32 byte 1 105 byte 1 110 byte 1 32 byte 1 108 byte 1 105 byte 1 115 byte 1 116 byte 1 10 byte 1 0 align 1 LABELV $2726 byte 1 97 byte 1 100 byte 1 100 byte 1 114 byte 1 0 align 1 LABELV $2725 byte 1 104 byte 1 111 byte 1 115 byte 1 116 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2716 byte 1 97 byte 1 100 byte 1 100 byte 1 70 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 0 align 1 LABELV $2700 byte 1 97 byte 1 100 byte 1 100 byte 1 98 byte 1 111 byte 1 116 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 37 byte 1 105 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2697 byte 1 97 byte 1 100 byte 1 100 byte 1 66 byte 1 111 byte 1 116 byte 1 0 align 1 LABELV $2692 byte 1 99 byte 1 97 byte 1 108 byte 1 108 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 118 byte 1 111 byte 1 116 byte 1 101 byte 1 32 byte 1 108 byte 1 101 byte 1 97 byte 1 100 byte 1 101 byte 1 114 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2686 byte 1 118 byte 1 111 byte 1 116 byte 1 101 byte 1 76 byte 1 101 byte 1 97 byte 1 100 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2680 byte 1 99 byte 1 97 byte 1 108 byte 1 108 byte 1 118 byte 1 111 byte 1 116 byte 1 101 byte 1 32 byte 1 103 byte 1 95 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 32 byte 1 37 byte 1 105 byte 1 10 byte 1 0 align 1 LABELV $2674 byte 1 118 byte 1 111 byte 1 116 byte 1 101 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2669 byte 1 99 byte 1 97 byte 1 108 byte 1 108 byte 1 118 byte 1 111 byte 1 116 byte 1 101 byte 1 32 byte 1 107 byte 1 105 byte 1 99 byte 1 107 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2663 byte 1 118 byte 1 111 byte 1 116 byte 1 101 byte 1 75 byte 1 105 byte 1 99 byte 1 107 byte 1 0 align 1 LABELV $2657 byte 1 99 byte 1 97 byte 1 108 byte 1 108 byte 1 118 byte 1 111 byte 1 116 byte 1 101 byte 1 32 byte 1 109 byte 1 97 byte 1 112 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2651 byte 1 118 byte 1 111 byte 1 116 byte 1 101 byte 1 77 byte 1 97 byte 1 112 byte 1 0 align 1 LABELV $2648 byte 1 99 byte 1 108 byte 1 111 byte 1 115 byte 1 101 byte 1 105 byte 1 110 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2645 byte 1 83 byte 1 107 byte 1 105 byte 1 114 byte 1 109 byte 1 105 byte 1 115 byte 1 104 byte 1 83 byte 1 116 byte 1 97 byte 1 114 byte 1 116 byte 1 0 align 1 LABELV $2642 byte 1 110 byte 1 101 byte 1 120 byte 1 116 byte 1 83 byte 1 107 byte 1 105 byte 1 114 byte 1 109 byte 1 105 byte 1 115 byte 1 104 byte 1 0 align 1 LABELV $2626 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 83 byte 1 111 byte 1 114 byte 1 116 byte 1 0 align 1 LABELV $2623 byte 1 100 byte 1 105 byte 1 115 byte 1 99 byte 1 111 byte 1 110 byte 1 110 byte 1 101 byte 1 99 byte 1 116 byte 1 10 byte 1 0 align 1 LABELV $2622 byte 1 76 byte 1 101 byte 1 97 byte 1 118 byte 1 101 byte 1 0 align 1 LABELV $2619 byte 1 115 byte 1 101 byte 1 116 byte 1 117 byte 1 112 byte 1 95 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 50 byte 1 0 align 1 LABELV $2618 byte 1 99 byte 1 108 byte 1 95 byte 1 112 byte 1 97 byte 1 117 byte 1 115 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $2617 byte 1 67 byte 1 111 byte 1 110 byte 1 116 byte 1 114 byte 1 111 byte 1 108 byte 1 115 byte 1 0 align 1 LABELV $2614 byte 1 113 byte 1 117 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $2613 byte 1 81 byte 1 117 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $2603 byte 1 70 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 74 byte 1 111 byte 1 105 byte 1 110 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2600 byte 1 99 byte 1 111 byte 1 110 byte 1 110 byte 1 101 byte 1 99 byte 1 116 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2586 byte 1 74 byte 1 111 byte 1 105 byte 1 110 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2581 byte 1 70 byte 1 105 byte 1 110 byte 1 100 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2574 byte 1 70 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 83 byte 1 116 byte 1 97 byte 1 116 byte 1 117 byte 1 115 byte 1 0 align 1 LABELV $2564 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 83 byte 1 116 byte 1 97 byte 1 116 byte 1 117 byte 1 115 byte 1 0 align 1 LABELV $2558 byte 1 85 byte 1 112 byte 1 100 byte 1 97 byte 1 116 byte 1 101 byte 1 70 byte 1 105 byte 1 108 byte 1 116 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2551 byte 1 83 byte 1 116 byte 1 111 byte 1 112 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 0 align 1 LABELV $2548 byte 1 109 byte 1 97 byte 1 105 byte 1 110 byte 1 0 align 1 LABELV $2547 byte 1 106 byte 1 111 byte 1 105 byte 1 110 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2538 byte 1 99 byte 1 108 byte 1 111 byte 1 115 byte 1 101 byte 1 74 byte 1 111 byte 1 105 byte 1 110 byte 1 0 align 1 LABELV $2535 byte 1 81 byte 1 117 byte 1 97 byte 1 107 byte 1 101 byte 1 51 byte 1 0 align 1 LABELV $2530 byte 1 100 byte 1 101 byte 1 109 byte 1 111 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2529 byte 1 82 byte 1 117 byte 1 110 byte 1 68 byte 1 101 byte 1 109 byte 1 111 byte 1 0 align 1 LABELV $2526 byte 1 118 byte 1 105 byte 1 100 byte 1 95 byte 1 114 byte 1 101 byte 1 115 byte 1 116 byte 1 97 byte 1 114 byte 1 116 byte 1 59 byte 1 0 align 1 LABELV $2523 byte 1 102 byte 1 115 byte 1 95 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2522 byte 1 82 byte 1 117 byte 1 110 byte 1 77 byte 1 111 byte 1 100 byte 1 0 align 1 LABELV $2517 byte 1 99 byte 1 105 byte 1 110 byte 1 101 byte 1 109 byte 1 97 byte 1 116 byte 1 105 byte 1 99 byte 1 32 byte 1 37 byte 1 115 byte 1 46 byte 1 114 byte 1 111 byte 1 113 byte 1 32 byte 1 50 byte 1 10 byte 1 0 align 1 LABELV $2512 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 77 byte 1 111 byte 1 118 byte 1 105 byte 1 101 byte 1 0 align 1 LABELV $2509 byte 1 76 byte 1 111 byte 1 97 byte 1 100 byte 1 77 byte 1 111 byte 1 100 byte 1 115 byte 1 0 align 1 LABELV $2506 byte 1 76 byte 1 111 byte 1 97 byte 1 100 byte 1 77 byte 1 111 byte 1 118 byte 1 105 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $2503 byte 1 76 byte 1 111 byte 1 97 byte 1 100 byte 1 68 byte 1 101 byte 1 109 byte 1 111 byte 1 115 byte 1 0 align 1 LABELV $2494 byte 1 100 byte 1 101 byte 1 109 byte 1 111 byte 1 32 byte 1 37 byte 1 115 byte 1 95 byte 1 37 byte 1 105 byte 1 10 byte 1 0 align 1 LABELV $2490 byte 1 82 byte 1 117 byte 1 110 byte 1 83 byte 1 80 byte 1 68 byte 1 101 byte 1 109 byte 1 111 byte 1 0 align 1 LABELV $2487 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 70 byte 1 105 byte 1 108 byte 1 116 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2484 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 0 align 1 LABELV $2481 byte 1 114 byte 1 101 byte 1 115 byte 1 101 byte 1 116 byte 1 83 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $2472 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 73 byte 1 110 byte 1 102 byte 1 111 byte 1 0 align 1 LABELV $2469 byte 1 99 byte 1 111 byte 1 109 byte 1 95 byte 1 101 byte 1 114 byte 1 114 byte 1 111 byte 1 114 byte 1 77 byte 1 101 byte 1 115 byte 1 115 byte 1 97 byte 1 103 byte 1 101 byte 1 0 align 1 LABELV $2468 byte 1 99 byte 1 108 byte 1 101 byte 1 97 byte 1 114 byte 1 69 byte 1 114 byte 1 114 byte 1 111 byte 1 114 byte 1 0 align 1 LABELV $2465 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 67 byte 1 111 byte 1 110 byte 1 116 byte 1 114 byte 1 111 byte 1 108 byte 1 115 byte 1 0 align 1 LABELV $2462 byte 1 115 byte 1 97 byte 1 118 byte 1 101 byte 1 67 byte 1 111 byte 1 110 byte 1 116 byte 1 114 byte 1 111 byte 1 108 byte 1 115 byte 1 0 align 1 LABELV $2459 byte 1 99 byte 1 114 byte 1 101 byte 1 97 byte 1 116 byte 1 101 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2458 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 65 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 115 byte 1 0 align 1 LABELV $2455 byte 1 67 byte 1 68 byte 1 32 byte 1 75 byte 1 101 byte 1 121 byte 1 32 byte 1 100 byte 1 111 byte 1 101 byte 1 115 byte 1 32 byte 1 110 byte 1 111 byte 1 116 byte 1 32 byte 1 97 byte 1 112 byte 1 112 byte 1 101 byte 1 97 byte 1 114 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 98 byte 1 101 byte 1 32 byte 1 118 byte 1 97 byte 1 108 byte 1 105 byte 1 100 byte 1 46 byte 1 0 align 1 LABELV $2454 byte 1 67 byte 1 68 byte 1 32 byte 1 75 byte 1 101 byte 1 121 byte 1 32 byte 1 65 byte 1 112 byte 1 112 byte 1 101 byte 1 97 byte 1 114 byte 1 115 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 98 byte 1 101 byte 1 32 byte 1 118 byte 1 97 byte 1 108 byte 1 105 byte 1 100 byte 1 46 byte 1 0 align 1 LABELV $2453 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 100 byte 1 107 byte 1 101 byte 1 121 byte 1 118 byte 1 97 byte 1 108 byte 1 105 byte 1 100 byte 1 0 align 1 LABELV $2452 byte 1 99 byte 1 100 byte 1 107 byte 1 101 byte 1 121 byte 1 99 byte 1 104 byte 1 101 byte 1 99 byte 1 107 byte 1 115 byte 1 117 byte 1 109 byte 1 0 align 1 LABELV $2449 byte 1 99 byte 1 100 byte 1 107 byte 1 101 byte 1 121 byte 1 0 align 1 LABELV $2448 byte 1 118 byte 1 101 byte 1 114 byte 1 105 byte 1 102 byte 1 121 byte 1 67 byte 1 68 byte 1 75 byte 1 101 byte 1 121 byte 1 0 align 1 LABELV $2440 byte 1 99 byte 1 100 byte 1 107 byte 1 101 byte 1 121 byte 1 52 byte 1 0 align 1 LABELV $2439 byte 1 99 byte 1 100 byte 1 107 byte 1 101 byte 1 121 byte 1 51 byte 1 0 align 1 LABELV $2438 byte 1 99 byte 1 100 byte 1 107 byte 1 101 byte 1 121 byte 1 50 byte 1 0 align 1 LABELV $2437 byte 1 99 byte 1 100 byte 1 107 byte 1 101 byte 1 121 byte 1 49 byte 1 0 align 1 LABELV $2436 byte 1 103 byte 1 101 byte 1 116 byte 1 67 byte 1 68 byte 1 75 byte 1 101 byte 1 121 byte 1 0 align 1 LABELV $2433 byte 1 118 byte 1 105 byte 1 100 byte 1 95 byte 1 114 byte 1 101 byte 1 115 byte 1 116 byte 1 97 byte 1 114 byte 1 116 byte 1 10 byte 1 0 align 1 LABELV $2432 byte 1 99 byte 1 111 byte 1 109 byte 1 95 byte 1 105 byte 1 110 byte 1 116 byte 1 114 byte 1 111 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $2431 byte 1 99 byte 1 118 byte 1 97 byte 1 114 byte 1 95 byte 1 114 byte 1 101 byte 1 115 byte 1 116 byte 1 97 byte 1 114 byte 1 116 byte 1 10 byte 1 0 align 1 LABELV $2430 byte 1 101 byte 1 120 byte 1 101 byte 1 99 byte 1 32 byte 1 100 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 46 byte 1 99 byte 1 102 byte 1 103 byte 1 10 byte 1 0 align 1 LABELV $2429 byte 1 114 byte 1 101 byte 1 115 byte 1 101 byte 1 116 byte 1 68 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $2422 byte 1 117 byte 1 112 byte 1 100 byte 1 97 byte 1 116 byte 1 101 byte 1 83 byte 1 80 byte 1 77 byte 1 101 byte 1 110 byte 1 117 byte 1 0 align 1 LABELV $2412 byte 1 97 byte 1 100 byte 1 100 byte 1 98 byte 1 111 byte 1 116 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 37 byte 1 102 byte 1 32 byte 1 10 byte 1 0 align 1 LABELV $2409 byte 1 97 byte 1 100 byte 1 100 byte 1 98 byte 1 111 byte 1 116 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 37 byte 1 102 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2380 byte 1 100 byte 1 101 byte 1 100 byte 1 105 byte 1 99 byte 1 97 byte 1 116 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $2379 byte 1 83 byte 1 116 byte 1 97 byte 1 114 byte 1 116 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2373 byte 1 109 byte 1 95 byte 1 112 byte 1 105 byte 1 116 byte 1 99 byte 1 104 byte 1 0 align 1 LABELV $2370 byte 1 117 byte 1 105 byte 1 95 byte 1 109 byte 1 111 byte 1 117 byte 1 115 byte 1 101 byte 1 80 byte 1 105 byte 1 116 byte 1 99 byte 1 104 byte 1 0 align 1 LABELV $2365 byte 1 71 byte 1 76 byte 1 95 byte 1 76 byte 1 73 byte 1 78 byte 1 69 byte 1 65 byte 1 82 byte 1 95 byte 1 77 byte 1 73 byte 1 80 byte 1 77 byte 1 65 byte 1 80 byte 1 95 byte 1 78 byte 1 69 byte 1 65 byte 1 82 byte 1 69 byte 1 83 byte 1 84 byte 1 0 align 1 LABELV $2362 byte 1 71 byte 1 76 byte 1 95 byte 1 76 byte 1 73 byte 1 78 byte 1 69 byte 1 65 byte 1 82 byte 1 95 byte 1 77 byte 1 73 byte 1 80 byte 1 77 byte 1 65 byte 1 80 byte 1 95 byte 1 76 byte 1 73 byte 1 78 byte 1 69 byte 1 65 byte 1 82 byte 1 0 align 1 LABELV $2361 byte 1 114 byte 1 95 byte 1 116 byte 1 101 byte 1 120 byte 1 116 byte 1 117 byte 1 114 byte 1 101 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 0 align 1 LABELV $2360 byte 1 99 byte 1 103 byte 1 95 byte 1 98 byte 1 114 byte 1 97 byte 1 115 byte 1 115 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2359 byte 1 99 byte 1 103 byte 1 95 byte 1 115 byte 1 104 byte 1 97 byte 1 100 byte 1 111 byte 1 119 byte 1 115 byte 1 0 align 1 LABELV $2358 byte 1 114 byte 1 95 byte 1 105 byte 1 110 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 86 byte 1 105 byte 1 100 byte 1 101 byte 1 111 byte 1 0 align 1 LABELV $2357 byte 1 114 byte 1 95 byte 1 102 byte 1 97 byte 1 115 byte 1 116 byte 1 83 byte 1 107 byte 1 121 byte 1 0 align 1 LABELV $2356 byte 1 114 byte 1 95 byte 1 116 byte 1 101 byte 1 120 byte 1 116 byte 1 117 byte 1 114 byte 1 101 byte 1 98 byte 1 105 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $2355 byte 1 114 byte 1 95 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 0 align 1 LABELV $2354 byte 1 114 byte 1 95 byte 1 112 byte 1 105 byte 1 99 byte 1 109 byte 1 105 byte 1 112 byte 1 0 align 1 LABELV $2353 byte 1 114 byte 1 95 byte 1 118 byte 1 101 byte 1 114 byte 1 116 byte 1 101 byte 1 120 byte 1 108 byte 1 105 byte 1 103 byte 1 104 byte 1 116 byte 1 0 align 1 LABELV $2352 byte 1 114 byte 1 95 byte 1 102 byte 1 117 byte 1 108 byte 1 108 byte 1 83 byte 1 99 byte 1 114 byte 1 101 byte 1 101 byte 1 110 byte 1 0 align 1 LABELV $2348 byte 1 117 byte 1 105 byte 1 95 byte 1 103 byte 1 108 byte 1 67 byte 1 117 byte 1 115 byte 1 116 byte 1 111 byte 1 109 byte 1 0 align 1 LABELV $2343 byte 1 114 byte 1 95 byte 1 115 byte 1 117 byte 1 98 byte 1 100 byte 1 105 byte 1 118 byte 1 105 byte 1 115 byte 1 105 byte 1 111 byte 1 110 byte 1 115 byte 1 0 align 1 LABELV $2339 byte 1 114 byte 1 95 byte 1 108 byte 1 111 byte 1 100 byte 1 98 byte 1 105 byte 1 97 byte 1 115 byte 1 0 align 1 LABELV $2332 byte 1 114 byte 1 95 byte 1 115 byte 1 116 byte 1 101 byte 1 110 byte 1 99 byte 1 105 byte 1 108 byte 1 98 byte 1 105 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $2331 byte 1 114 byte 1 95 byte 1 100 byte 1 101 byte 1 112 byte 1 116 byte 1 104 byte 1 98 byte 1 105 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $2327 byte 1 114 byte 1 95 byte 1 99 byte 1 111 byte 1 108 byte 1 111 byte 1 114 byte 1 98 byte 1 105 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $2324 byte 1 117 byte 1 105 byte 1 95 byte 1 71 byte 1 101 byte 1 116 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2319 byte 1 99 byte 1 108 byte 1 95 byte 1 112 byte 1 97 byte 1 99 byte 1 107 byte 1 101 byte 1 116 byte 1 100 byte 1 117 byte 1 112 byte 1 0 align 1 LABELV $2318 byte 1 99 byte 1 108 byte 1 95 byte 1 109 byte 1 97 byte 1 120 byte 1 112 byte 1 97 byte 1 99 byte 1 107 byte 1 101 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $2315 byte 1 114 byte 1 97 byte 1 116 byte 1 101 byte 1 0 align 1 LABELV $2314 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 101 byte 1 116 byte 1 82 byte 1 97 byte 1 116 byte 1 101 byte 1 0 align 1 LABELV $2311 byte 1 117 byte 1 105 byte 1 95 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2310 byte 1 117 byte 1 105 byte 1 95 byte 1 83 byte 1 101 byte 1 116 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2306 byte 1 119 byte 1 97 byte 1 105 byte 1 116 byte 1 32 byte 1 53 byte 1 59 byte 1 32 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 32 byte 1 82 byte 1 101 byte 1 100 byte 1 10 byte 1 0 align 1 LABELV $2282 byte 1 97 byte 1 100 byte 1 100 byte 1 98 byte 1 111 byte 1 116 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 37 byte 1 102 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 37 byte 1 105 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2268 byte 1 119 byte 1 97 byte 1 105 byte 1 116 byte 1 32 byte 1 59 byte 1 32 byte 1 97 byte 1 100 byte 1 100 byte 1 98 byte 1 111 byte 1 116 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 37 byte 1 102 byte 1 32 byte 1 44 byte 1 32 byte 1 37 byte 1 105 byte 1 32 byte 1 10 byte 1 0 align 1 LABELV $2267 byte 1 50 byte 1 0 align 1 LABELV $2264 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 99 byte 1 111 byte 1 114 byte 1 100 byte 1 83 byte 1 80 byte 1 68 byte 1 101 byte 1 109 byte 1 111 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $2260 byte 1 37 byte 1 115 byte 1 95 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $2259 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 99 byte 1 111 byte 1 114 byte 1 100 byte 1 83 byte 1 80 byte 1 68 byte 1 101 byte 1 109 byte 1 111 byte 1 0 align 1 LABELV $2256 byte 1 103 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $2255 byte 1 103 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $2254 byte 1 117 byte 1 105 byte 1 95 byte 1 112 byte 1 117 byte 1 114 byte 1 101 byte 1 0 align 1 LABELV $2253 byte 1 115 byte 1 118 byte 1 95 byte 1 112 byte 1 117 byte 1 114 byte 1 101 byte 1 0 align 1 LABELV $2252 byte 1 117 byte 1 105 byte 1 95 byte 1 87 byte 1 97 byte 1 114 byte 1 109 byte 1 117 byte 1 112 byte 1 0 align 1 LABELV $2251 byte 1 103 byte 1 95 byte 1 119 byte 1 97 byte 1 114 byte 1 109 byte 1 117 byte 1 112 byte 1 0 align 1 LABELV $2250 byte 1 117 byte 1 105 byte 1 95 byte 1 109 byte 1 97 byte 1 120 byte 1 67 byte 1 108 byte 1 105 byte 1 101 byte 1 110 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $2249 byte 1 115 byte 1 118 byte 1 95 byte 1 109 byte 1 97 byte 1 120 byte 1 67 byte 1 108 byte 1 105 byte 1 101 byte 1 110 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $2248 byte 1 117 byte 1 105 byte 1 95 byte 1 102 byte 1 114 byte 1 105 byte 1 101 byte 1 110 byte 1 100 byte 1 108 byte 1 121 byte 1 70 byte 1 105 byte 1 114 byte 1 101 byte 1 0 align 1 LABELV $2247 byte 1 103 byte 1 95 byte 1 102 byte 1 114 byte 1 105 byte 1 101 byte 1 110 byte 1 100 byte 1 108 byte 1 121 byte 1 70 byte 1 105 byte 1 114 byte 1 101 byte 1 0 align 1 LABELV $2246 byte 1 117 byte 1 105 byte 1 95 byte 1 100 byte 1 111 byte 1 87 byte 1 97 byte 1 114 byte 1 109 byte 1 117 byte 1 112 byte 1 0 align 1 LABELV $2245 byte 1 103 byte 1 95 byte 1 100 byte 1 111 byte 1 87 byte 1 97 byte 1 114 byte 1 109 byte 1 117 byte 1 112 byte 1 0 align 1 LABELV $2244 byte 1 117 byte 1 105 byte 1 95 byte 1 100 byte 1 114 byte 1 97 byte 1 119 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2243 byte 1 99 byte 1 103 byte 1 95 byte 1 100 byte 1 114 byte 1 97 byte 1 119 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $2242 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 97 byte 1 118 byte 1 101 byte 1 70 byte 1 114 byte 1 97 byte 1 103 byte 1 76 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $2241 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 97 byte 1 118 byte 1 101 byte 1 67 byte 1 97 byte 1 112 byte 1 116 byte 1 117 byte 1 114 byte 1 101 byte 1 76 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $2240 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 105 byte 1 110 byte 1 103 byte 1 108 byte 1 101 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 65 byte 1 99 byte 1 116 byte 1 105 byte 1 118 byte 1 101 byte 1 0 align 1 LABELV $2237 byte 1 117 byte 1 105 byte 1 95 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 77 byte 1 97 byte 1 112 byte 1 0 align 1 LABELV $2233 byte 1 119 byte 1 97 byte 1 105 byte 1 116 byte 1 32 byte 1 59 byte 1 32 byte 1 119 byte 1 97 byte 1 105 byte 1 116 byte 1 32 byte 1 59 byte 1 32 byte 1 109 byte 1 97 byte 1 112 byte 1 32 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $2227 byte 1 117 byte 1 105 byte 1 95 byte 1 109 byte 1 97 byte 1 112 byte 1 73 byte 1 110 byte 1 100 byte 1 101 byte 1 120 byte 1 0 align 1 LABELV $2223 byte 1 115 byte 1 107 byte 1 105 byte 1 114 byte 1 109 byte 1 105 byte 1 115 byte 1 104 byte 1 0 align 1 LABELV $2197 byte 1 46 byte 1 100 byte 1 109 byte 1 95 byte 1 37 byte 1 100 byte 1 0 align 1 LABELV $2196 byte 1 100 byte 1 101 byte 1 109 byte 1 111 byte 1 115 byte 1 0 align 1 LABELV $2194 byte 1 112 byte 1 114 byte 1 111 byte 1 116 byte 1 111 byte 1 99 byte 1 111 byte 1 108 byte 1 0 align 1 LABELV $2193 byte 1 100 byte 1 109 byte 1 95 byte 1 37 byte 1 100 byte 1 0 align 1 LABELV $2190 byte 1 46 byte 1 114 byte 1 111 byte 1 113 byte 1 0 align 1 LABELV $2175 byte 1 114 byte 1 111 byte 1 113 byte 1 0 align 1 LABELV $2174 byte 1 118 byte 1 105 byte 1 100 byte 1 101 byte 1 111 byte 1 0 align 1 LABELV $2165 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $2150 byte 1 36 byte 1 109 byte 1 111 byte 1 100 byte 1 108 byte 1 105 byte 1 115 byte 1 116 byte 1 0 align 1 LABELV $2102 byte 1 69 byte 1 118 byte 1 101 byte 1 114 byte 1 121 byte 1 111 byte 1 110 byte 1 101 byte 1 0 align 1 LABELV $2080 byte 1 99 byte 1 103 byte 1 95 byte 1 100 byte 1 114 byte 1 97 byte 1 119 byte 1 67 byte 1 114 byte 1 111 byte 1 115 byte 1 115 byte 1 104 byte 1 97 byte 1 105 byte 1 114 byte 1 0 align 1 LABELV $1987 byte 1 117 byte 1 105 byte 1 95 byte 1 110 byte 1 101 byte 1 116 byte 1 83 byte 1 111 byte 1 117 byte 1 114 byte 1 99 byte 1 101 byte 1 0 align 1 LABELV $1884 byte 1 117 byte 1 105 byte 1 95 byte 1 97 byte 1 99 byte 1 116 byte 1 117 byte 1 97 byte 1 108 byte 1 110 byte 1 101 byte 1 116 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 84 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $1853 byte 1 117 byte 1 105 byte 1 95 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 84 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $1795 byte 1 99 byte 1 111 byte 1 108 byte 1 111 byte 1 114 byte 1 49 byte 1 0 align 1 LABELV $1776 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $1579 byte 1 80 byte 1 73 byte 1 88 byte 1 69 byte 1 76 byte 1 70 byte 1 79 byte 1 82 byte 1 77 byte 1 65 byte 1 84 byte 1 58 byte 1 32 byte 1 99 byte 1 111 byte 1 108 byte 1 111 byte 1 114 byte 1 40 byte 1 37 byte 1 100 byte 1 45 byte 1 98 byte 1 105 byte 1 116 byte 1 115 byte 1 41 byte 1 32 byte 1 90 byte 1 40 byte 1 37 byte 1 100 byte 1 45 byte 1 98 byte 1 105 byte 1 116 byte 1 115 byte 1 41 byte 1 32 byte 1 115 byte 1 116 byte 1 101 byte 1 110 byte 1 99 byte 1 105 byte 1 108 byte 1 40 byte 1 37 byte 1 100 byte 1 45 byte 1 98 byte 1 105 byte 1 116 byte 1 115 byte 1 41 byte 1 0 align 1 LABELV $1575 byte 1 86 byte 1 69 byte 1 82 byte 1 83 byte 1 73 byte 1 79 byte 1 78 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $1572 byte 1 86 byte 1 69 byte 1 78 byte 1 68 byte 1 79 byte 1 82 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $1464 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 32 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $1461 byte 1 71 byte 1 101 byte 1 116 byte 1 116 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 105 byte 1 110 byte 1 102 byte 1 111 byte 1 32 byte 1 102 byte 1 111 byte 1 114 byte 1 32 byte 1 37 byte 1 100 byte 1 32 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 115 byte 1 32 byte 1 40 byte 1 69 byte 1 83 byte 1 67 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 99 byte 1 97 byte 1 110 byte 1 99 byte 1 101 byte 1 108 byte 1 41 byte 1 0 align 1 LABELV $1448 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $1438 byte 1 99 byte 1 103 byte 1 95 byte 1 115 byte 1 101 byte 1 108 byte 1 101 byte 1 99 byte 1 116 byte 1 101 byte 1 100 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $1430 byte 1 99 byte 1 103 byte 1 95 byte 1 115 byte 1 101 byte 1 108 byte 1 101 byte 1 99 byte 1 116 byte 1 101 byte 1 100 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $1410 byte 1 110 byte 1 0 align 1 LABELV $1399 byte 1 115 byte 1 118 byte 1 95 byte 1 109 byte 1 97 byte 1 120 byte 1 99 byte 1 108 byte 1 105 byte 1 101 byte 1 110 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $1398 byte 1 116 byte 1 0 align 1 LABELV $1397 byte 1 116 byte 1 108 byte 1 0 align 1 LABELV $1362 byte 1 103 byte 1 95 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 116 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $1353 byte 1 117 byte 1 105 byte 1 95 byte 1 108 byte 1 97 byte 1 115 byte 1 116 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 82 byte 1 101 byte 1 102 byte 1 114 byte 1 101 byte 1 115 byte 1 104 byte 1 95 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $1351 byte 1 80 byte 1 114 byte 1 101 byte 1 115 byte 1 115 byte 1 32 byte 1 69 byte 1 78 byte 1 84 byte 1 69 byte 1 82 byte 1 32 byte 1 111 byte 1 114 byte 1 32 byte 1 67 byte 1 76 byte 1 73 byte 1 67 byte 1 75 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 99 byte 1 104 byte 1 97 byte 1 110 byte 1 103 byte 1 101 byte 1 44 byte 1 32 byte 1 80 byte 1 114 byte 1 101 byte 1 115 byte 1 115 byte 1 32 byte 1 66 byte 1 65 byte 1 67 byte 1 75 byte 1 83 byte 1 80 byte 1 65 byte 1 67 byte 1 69 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 99 byte 1 108 byte 1 101 byte 1 97 byte 1 114 byte 1 0 align 1 LABELV $1350 byte 1 87 byte 1 97 byte 1 105 byte 1 116 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 102 byte 1 111 byte 1 114 byte 1 32 byte 1 110 byte 1 101 byte 1 119 byte 1 32 byte 1 107 byte 1 101 byte 1 121 byte 1 46 byte 1 46 byte 1 46 byte 1 32 byte 1 80 byte 1 114 byte 1 101 byte 1 115 byte 1 115 byte 1 32 byte 1 69 byte 1 83 byte 1 67 byte 1 65 byte 1 80 byte 1 69 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 99 byte 1 97 byte 1 110 byte 1 99 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $1315 byte 1 37 byte 1 105 byte 1 46 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $1132 byte 1 117 byte 1 105 byte 1 95 byte 1 111 byte 1 112 byte 1 112 byte 1 111 byte 1 110 byte 1 101 byte 1 110 byte 1 116 byte 1 77 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $1095 byte 1 74 byte 1 97 byte 1 109 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $1081 byte 1 117 byte 1 105 byte 1 95 byte 1 111 byte 1 112 byte 1 112 byte 1 111 byte 1 110 byte 1 101 byte 1 110 byte 1 116 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $1043 byte 1 108 byte 1 101 byte 1 118 byte 1 101 byte 1 108 byte 1 115 byte 1 104 byte 1 111 byte 1 116 byte 1 115 byte 1 47 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $1030 byte 1 84 byte 1 105 byte 1 101 byte 1 114 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $1025 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 117 byte 1 114 byte 1 114 byte 1 101 byte 1 110 byte 1 116 byte 1 84 byte 1 105 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $1022 byte 1 70 byte 1 105 byte 1 108 byte 1 116 byte 1 101 byte 1 114 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $988 byte 1 83 byte 1 111 byte 1 117 byte 1 114 byte 1 99 byte 1 101 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $970 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 95 byte 1 104 byte 1 101 byte 1 97 byte 1 100 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $969 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 95 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $966 byte 1 104 byte 1 101 byte 1 97 byte 1 100 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $965 byte 1 109 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $964 byte 1 117 byte 1 105 byte 1 95 byte 1 81 byte 1 51 byte 1 77 byte 1 111 byte 1 100 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $921 byte 1 37 byte 1 48 byte 1 50 byte 1 105 byte 1 58 byte 1 37 byte 1 48 byte 1 50 byte 1 105 byte 1 0 align 1 LABELV $906 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 117 byte 1 110 byte 1 107 byte 1 110 byte 1 111 byte 1 119 byte 1 110 byte 1 109 byte 1 97 byte 1 112 byte 1 0 align 1 LABELV $891 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 117 byte 1 114 byte 1 114 byte 1 101 byte 1 110 byte 1 116 byte 1 77 byte 1 97 byte 1 112 byte 1 0 align 1 LABELV $889 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 117 byte 1 114 byte 1 114 byte 1 101 byte 1 110 byte 1 116 byte 1 78 byte 1 101 byte 1 116 byte 1 77 byte 1 97 byte 1 112 byte 1 0 align 1 LABELV $859 byte 1 72 byte 1 117 byte 1 109 byte 1 97 byte 1 110 byte 1 0 align 1 LABELV $856 byte 1 67 byte 1 108 byte 1 111 byte 1 115 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $850 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $849 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $843 byte 1 82 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $842 byte 1 66 byte 1 108 byte 1 117 byte 1 101 byte 1 0 align 1 LABELV $841 byte 1 37 byte 1 115 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 0 align 1 LABELV $834 byte 1 117 byte 1 105 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $833 byte 1 117 byte 1 105 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 0 align 1 LABELV $827 byte 1 103 byte 1 95 byte 1 115 byte 1 112 byte 1 83 byte 1 107 byte 1 105 byte 1 108 byte 1 108 byte 1 0 align 1 LABELV $793 byte 1 37 byte 1 115 byte 1 46 byte 1 114 byte 1 111 byte 1 113 byte 1 0 align 1 LABELV $774 byte 1 37 byte 1 115 byte 1 95 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $769 byte 1 37 byte 1 115 byte 1 95 byte 1 109 byte 1 101 byte 1 116 byte 1 97 byte 1 108 byte 1 0 align 1 LABELV $741 byte 1 117 byte 1 105 byte 1 95 byte 1 106 byte 1 111 byte 1 105 byte 1 110 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 84 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $731 byte 1 117 byte 1 105 byte 1 95 byte 1 97 byte 1 99 byte 1 116 byte 1 117 byte 1 97 byte 1 108 byte 1 78 byte 1 101 byte 1 116 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 84 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $730 byte 1 117 byte 1 105 byte 1 95 byte 1 110 byte 1 101 byte 1 116 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 84 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $719 byte 1 102 byte 1 114 byte 1 97 byte 1 103 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $718 byte 1 99 byte 1 97 byte 1 112 byte 1 116 byte 1 117 byte 1 114 byte 1 101 byte 1 108 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $717 byte 1 117 byte 1 105 byte 1 95 byte 1 102 byte 1 114 byte 1 97 byte 1 103 byte 1 76 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $716 byte 1 37 byte 1 100 byte 1 0 align 1 LABELV $715 byte 1 117 byte 1 105 byte 1 95 byte 1 99 byte 1 97 byte 1 112 byte 1 116 byte 1 117 byte 1 114 byte 1 101 byte 1 76 byte 1 105 byte 1 109 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $701 byte 1 117 byte 1 105 byte 1 95 byte 1 116 byte 1 101 byte 1 97 byte 1 109 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $699 byte 1 104 byte 1 97 byte 1 110 byte 1 100 byte 1 105 byte 1 99 byte 1 97 byte 1 112 byte 1 0 align 1 LABELV $697 byte 1 53 byte 1 0 align 1 LABELV $696 byte 1 49 byte 1 48 byte 1 0 align 1 LABELV $695 byte 1 49 byte 1 53 byte 1 0 align 1 LABELV $694 byte 1 50 byte 1 48 byte 1 0 align 1 LABELV $693 byte 1 50 byte 1 53 byte 1 0 align 1 LABELV $692 byte 1 51 byte 1 48 byte 1 0 align 1 LABELV $691 byte 1 51 byte 1 53 byte 1 0 align 1 LABELV $690 byte 1 52 byte 1 48 byte 1 0 align 1 LABELV $689 byte 1 52 byte 1 53 byte 1 0 align 1 LABELV $688 byte 1 53 byte 1 48 byte 1 0 align 1 LABELV $687 byte 1 53 byte 1 53 byte 1 0 align 1 LABELV $686 byte 1 54 byte 1 48 byte 1 0 align 1 LABELV $685 byte 1 54 byte 1 53 byte 1 0 align 1 LABELV $684 byte 1 55 byte 1 48 byte 1 0 align 1 LABELV $683 byte 1 55 byte 1 53 byte 1 0 align 1 LABELV $682 byte 1 56 byte 1 48 byte 1 0 align 1 LABELV $681 byte 1 56 byte 1 53 byte 1 0 align 1 LABELV $680 byte 1 57 byte 1 48 byte 1 0 align 1 LABELV $679 byte 1 57 byte 1 53 byte 1 0 align 1 LABELV $678 byte 1 78 byte 1 111 byte 1 110 byte 1 101 byte 1 0 align 1 LABELV $677 byte 1 103 byte 1 97 byte 1 109 byte 1 101 byte 1 105 byte 1 110 byte 1 102 byte 1 111 byte 1 46 byte 1 116 byte 1 120 byte 1 116 byte 1 0 align 1 LABELV $671 byte 1 117 byte 1 105 byte 1 95 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 70 byte 1 105 byte 1 108 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $669 byte 1 85 byte 1 73 byte 1 32 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 32 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 32 byte 1 116 byte 1 105 byte 1 109 byte 1 101 byte 1 32 byte 1 61 byte 1 32 byte 1 37 byte 1 100 byte 1 32 byte 1 109 byte 1 105 byte 1 108 byte 1 108 byte 1 105 byte 1 32 byte 1 115 byte 1 101 byte 1 99 byte 1 111 byte 1 110 byte 1 100 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $666 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 0 align 1 LABELV $646 byte 1 94 byte 1 49 byte 1 100 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 32 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 32 byte 1 102 byte 1 105 byte 1 108 byte 1 101 byte 1 32 byte 1 110 byte 1 111 byte 1 116 byte 1 32 byte 1 102 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 58 byte 1 32 byte 1 117 byte 1 105 byte 1 47 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 115 byte 1 46 byte 1 116 byte 1 120 byte 1 116 byte 1 44 byte 1 32 byte 1 117 byte 1 110 byte 1 97 byte 1 98 byte 1 108 byte 1 101 byte 1 32 byte 1 116 byte 1 111 byte 1 32 byte 1 99 byte 1 111 byte 1 110 byte 1 116 byte 1 105 byte 1 110 byte 1 117 byte 1 101 byte 1 33 byte 1 10 byte 1 0 align 1 LABELV $643 byte 1 117 byte 1 105 byte 1 47 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 115 byte 1 46 byte 1 116 byte 1 120 byte 1 116 byte 1 0 align 1 LABELV $642 byte 1 94 byte 1 51 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 32 byte 1 102 byte 1 105 byte 1 108 byte 1 101 byte 1 32 byte 1 110 byte 1 111 byte 1 116 byte 1 32 byte 1 102 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 44 byte 1 32 byte 1 117 byte 1 115 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 100 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 10 byte 1 0 align 1 LABELV $620 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 100 byte 1 101 byte 1 102 byte 1 0 align 1 LABELV $614 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 71 byte 1 108 byte 1 111 byte 1 98 byte 1 97 byte 1 108 byte 1 68 byte 1 101 byte 1 102 byte 1 0 align 1 LABELV $600 byte 1 80 byte 1 97 byte 1 114 byte 1 115 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 32 byte 1 102 byte 1 105 byte 1 108 byte 1 101 byte 1 58 byte 1 37 byte 1 115 byte 1 10 byte 1 0 align 1 LABELV $594 byte 1 71 byte 1 108 byte 1 121 byte 1 112 byte 1 104 byte 1 32 byte 1 104 byte 1 97 byte 1 110 byte 1 100 byte 1 108 byte 1 101 byte 1 32 byte 1 37 byte 1 105 byte 1 58 byte 1 32 byte 1 37 byte 1 105 byte 1 10 byte 1 0 align 1 LABELV $589 byte 1 61 byte 1 61 byte 1 61 byte 1 61 byte 1 61 byte 1 61 byte 1 61 byte 1 61 byte 1 61 byte 1 10 byte 1 0 align 1 LABELV $588 byte 1 70 byte 1 111 byte 1 110 byte 1 116 byte 1 32 byte 1 73 byte 1 110 byte 1 102 byte 1 111 byte 1 10 byte 1 0 align 1 LABELV $577 byte 1 115 byte 1 104 byte 1 97 byte 1 100 byte 1 111 byte 1 119 byte 1 67 byte 1 111 byte 1 108 byte 1 111 byte 1 114 byte 1 0 align 1 LABELV $569 byte 1 115 byte 1 104 byte 1 97 byte 1 100 byte 1 111 byte 1 119 byte 1 89 byte 1 0 align 1 LABELV $561 byte 1 115 byte 1 104 byte 1 97 byte 1 100 byte 1 111 byte 1 119 byte 1 88 byte 1 0 align 1 LABELV $553 byte 1 102 byte 1 97 byte 1 100 byte 1 101 byte 1 65 byte 1 109 byte 1 111 byte 1 117 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $545 byte 1 102 byte 1 97 byte 1 100 byte 1 101 byte 1 67 byte 1 121 byte 1 99 byte 1 108 byte 1 101 byte 1 0 align 1 LABELV $537 byte 1 102 byte 1 97 byte 1 100 byte 1 101 byte 1 67 byte 1 108 byte 1 97 byte 1 109 byte 1 112 byte 1 0 align 1 LABELV $525 byte 1 99 byte 1 117 byte 1 114 byte 1 115 byte 1 111 byte 1 114 byte 1 0 align 1 LABELV $517 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 66 byte 1 117 byte 1 122 byte 1 122 byte 1 83 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 0 align 1 LABELV $509 byte 1 105 byte 1 116 byte 1 101 byte 1 109 byte 1 70 byte 1 111 byte 1 99 byte 1 117 byte 1 115 byte 1 83 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 0 align 1 LABELV $501 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 69 byte 1 120 byte 1 105 byte 1 116 byte 1 83 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 0 align 1 LABELV $493 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 69 byte 1 110 byte 1 116 byte 1 101 byte 1 114 byte 1 83 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 0 align 1 LABELV $485 byte 1 103 byte 1 114 byte 1 97 byte 1 100 byte 1 105 byte 1 101 byte 1 110 byte 1 116 byte 1 98 byte 1 97 byte 1 114 byte 1 0 align 1 LABELV $476 byte 1 98 byte 1 105 byte 1 103 byte 1 70 byte 1 111 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $467 byte 1 115 byte 1 109 byte 1 97 byte 1 108 byte 1 108 byte 1 70 byte 1 111 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $456 byte 1 102 byte 1 111 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $452 byte 1 125 byte 1 0 align 1 LABELV $443 byte 1 123 byte 1 0 align 1 LABELV $436 byte 1 94 byte 1 49 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 32 byte 1 102 byte 1 105 byte 1 108 byte 1 101 byte 1 32 byte 1 116 byte 1 111 byte 1 111 byte 1 32 byte 1 108 byte 1 97 byte 1 114 byte 1 103 byte 1 101 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 32 byte 1 105 byte 1 115 byte 1 32 byte 1 37 byte 1 105 byte 1 44 byte 1 32 byte 1 109 byte 1 97 byte 1 120 byte 1 32 byte 1 97 byte 1 108 byte 1 108 byte 1 111 byte 1 119 byte 1 101 byte 1 100 byte 1 32 byte 1 105 byte 1 115 byte 1 32 byte 1 37 byte 1 105 byte 1 0 align 1 LABELV $433 byte 1 94 byte 1 49 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 32 byte 1 102 byte 1 105 byte 1 108 byte 1 101 byte 1 32 byte 1 110 byte 1 111 byte 1 116 byte 1 32 byte 1 102 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 58 byte 1 32 byte 1 37 byte 1 115 byte 1 44 byte 1 32 byte 1 117 byte 1 115 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 100 byte 1 101 byte 1 102 byte 1 97 byte 1 117 byte 1 108 byte 1 116 byte 1 10 byte 1 0 align 1 LABELV $398 byte 1 49 byte 1 0 align 1 LABELV $397 byte 1 115 byte 1 118 byte 1 95 byte 1 107 byte 1 105 byte 1 108 byte 1 108 byte 1 115 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $396 byte 1 99 byte 1 103 byte 1 95 byte 1 116 byte 1 104 byte 1 105 byte 1 114 byte 1 100 byte 1 80 byte 1 101 byte 1 114 byte 1 115 byte 1 111 byte 1 110 byte 1 0 align 1 LABELV $395 byte 1 48 byte 1 0 align 1 LABELV $394 byte 1 99 byte 1 103 byte 1 95 byte 1 99 byte 1 97 byte 1 109 byte 1 101 byte 1 114 byte 1 97 byte 1 79 byte 1 114 byte 1 98 byte 1 105 byte 1 116 byte 1 0 align 1 LABELV $231 byte 1 115 byte 1 111 byte 1 117 byte 1 110 byte 1 100 byte 1 47 byte 1 102 byte 1 101 byte 1 101 byte 1 100 byte 1 98 byte 1 97 byte 1 99 byte 1 107 byte 1 47 byte 1 118 byte 1 111 byte 1 99 byte 1 95 byte 1 110 byte 1 101 byte 1 119 byte 1 104 byte 1 105 byte 1 103 byte 1 104 byte 1 115 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 46 byte 1 119 byte 1 97 byte 1 118 byte 1 0 align 1 LABELV $229 byte 1 103 byte 1 102 byte 1 120 byte 1 47 byte 1 50 byte 1 100 byte 1 47 byte 1 99 byte 1 114 byte 1 111 byte 1 115 byte 1 115 byte 1 104 byte 1 97 byte 1 105 byte 1 114 byte 1 37 byte 1 99 byte 1 0 align 1 LABELV $222 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 115 byte 1 108 byte 1 105 byte 1 100 byte 1 101 byte 1 114 byte 1 98 byte 1 117 byte 1 116 byte 1 116 byte 1 95 byte 1 49 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $219 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 115 byte 1 108 byte 1 105 byte 1 100 byte 1 101 byte 1 114 byte 1 50 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $216 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 115 byte 1 99 byte 1 114 byte 1 111 byte 1 108 byte 1 108 byte 1 98 byte 1 97 byte 1 114 byte 1 95 byte 1 116 byte 1 104 byte 1 117 byte 1 109 byte 1 98 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $213 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 115 byte 1 99 byte 1 114 byte 1 111 byte 1 108 byte 1 108 byte 1 98 byte 1 97 byte 1 114 byte 1 95 byte 1 97 byte 1 114 byte 1 114 byte 1 111 byte 1 119 byte 1 95 byte 1 114 byte 1 105 byte 1 103 byte 1 104 byte 1 116 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $210 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 115 byte 1 99 byte 1 114 byte 1 111 byte 1 108 byte 1 108 byte 1 98 byte 1 97 byte 1 114 byte 1 95 byte 1 97 byte 1 114 byte 1 114 byte 1 111 byte 1 119 byte 1 95 byte 1 108 byte 1 101 byte 1 102 byte 1 116 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $207 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 115 byte 1 99 byte 1 114 byte 1 111 byte 1 108 byte 1 108 byte 1 98 byte 1 97 byte 1 114 byte 1 95 byte 1 97 byte 1 114 byte 1 114 byte 1 111 byte 1 119 byte 1 95 byte 1 117 byte 1 112 byte 1 95 byte 1 97 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $204 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 115 byte 1 99 byte 1 114 byte 1 111 byte 1 108 byte 1 108 byte 1 98 byte 1 97 byte 1 114 byte 1 95 byte 1 97 byte 1 114 byte 1 114 byte 1 111 byte 1 119 byte 1 95 byte 1 100 byte 1 119 byte 1 110 byte 1 95 byte 1 97 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $201 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 115 byte 1 99 byte 1 114 byte 1 111 byte 1 108 byte 1 108 byte 1 98 byte 1 97 byte 1 114 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $198 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 102 byte 1 120 byte 1 95 byte 1 119 byte 1 104 byte 1 105 byte 1 116 byte 1 101 byte 1 0 align 1 LABELV $194 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 102 byte 1 120 byte 1 95 byte 1 99 byte 1 121 byte 1 97 byte 1 110 byte 1 0 align 1 LABELV $190 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 102 byte 1 120 byte 1 95 byte 1 98 byte 1 108 byte 1 117 byte 1 101 byte 1 0 align 1 LABELV $186 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 102 byte 1 120 byte 1 95 byte 1 116 byte 1 101 byte 1 97 byte 1 108 byte 1 0 align 1 LABELV $182 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 102 byte 1 120 byte 1 95 byte 1 103 byte 1 114 byte 1 110 byte 1 0 align 1 LABELV $178 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 102 byte 1 120 byte 1 95 byte 1 121 byte 1 101 byte 1 108 byte 1 0 align 1 LABELV $174 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 102 byte 1 120 byte 1 95 byte 1 114 byte 1 101 byte 1 100 byte 1 0 align 1 LABELV $171 byte 1 109 byte 1 101 byte 1 110 byte 1 117 byte 1 47 byte 1 97 byte 1 114 byte 1 116 byte 1 47 byte 1 102 byte 1 120 byte 1 95 byte 1 98 byte 1 97 byte 1 115 byte 1 101 byte 1 0 align 1 LABELV $168 byte 1 117 byte 1 105 byte 1 47 byte 1 97 byte 1 115 byte 1 115 byte 1 101 byte 1 116 byte 1 115 byte 1 47 byte 1 103 byte 1 114 byte 1 97 byte 1 100 byte 1 105 byte 1 101 byte 1 110 byte 1 116 byte 1 98 byte 1 97 byte 1 114 byte 1 50 byte 1 46 byte 1 116 byte 1 103 byte 1 97 byte 1 0 align 1 LABELV $149 byte 1 73 byte 1 80 byte 1 88 byte 1 0 align 1 LABELV $148 byte 1 85 byte 1 68 byte 1 80 byte 1 0 align 1 LABELV $147 byte 1 63 byte 1 63 byte 1 63 byte 1 0 align 1 LABELV $146 byte 1 80 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 84 byte 1 105 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $145 byte 1 71 byte 1 97 byte 1 109 byte 1 101 byte 1 32 byte 1 84 byte 1 121 byte 1 112 byte 1 101 byte 1 0 align 1 LABELV $144 byte 1 79 byte 1 112 byte 1 101 byte 1 110 byte 1 32 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 32 byte 1 83 byte 1 112 byte 1 111 byte 1 116 byte 1 115 byte 1 0 align 1 LABELV $143 byte 1 77 byte 1 97 byte 1 112 byte 1 32 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $142 byte 1 83 byte 1 101 byte 1 114 byte 1 118 byte 1 101 byte 1 114 byte 1 32 byte 1 78 byte 1 97 byte 1 109 byte 1 101 byte 1 0 align 1 LABELV $141 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 32 byte 1 84 byte 1 111 byte 1 117 byte 1 114 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $140 byte 1 72 byte 1 97 byte 1 114 byte 1 118 byte 1 101 byte 1 115 byte 1 116 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $139 byte 1 79 byte 1 118 byte 1 101 byte 1 114 byte 1 108 byte 1 111 byte 1 97 byte 1 100 byte 1 0 align 1 LABELV $138 byte 1 79 byte 1 110 byte 1 101 byte 1 32 byte 1 70 byte 1 108 byte 1 97 byte 1 103 byte 1 32 byte 1 67 byte 1 84 byte 1 70 byte 1 0 align 1 LABELV $137 byte 1 67 byte 1 97 byte 1 112 byte 1 116 byte 1 117 byte 1 114 byte 1 101 byte 1 32 byte 1 116 byte 1 104 byte 1 101 byte 1 32 byte 1 70 byte 1 108 byte 1 97 byte 1 103 byte 1 0 align 1 LABELV $136 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 32 byte 1 68 byte 1 101 byte 1 97 byte 1 116 byte 1 104 byte 1 109 byte 1 97 byte 1 116 byte 1 99 byte 1 104 byte 1 0 align 1 LABELV $135 byte 1 83 byte 1 105 byte 1 110 byte 1 103 byte 1 108 byte 1 101 byte 1 32 byte 1 80 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $134 byte 1 84 byte 1 111 byte 1 117 byte 1 114 byte 1 110 byte 1 97 byte 1 109 byte 1 101 byte 1 110 byte 1 116 byte 1 0 align 1 LABELV $133 byte 1 70 byte 1 114 byte 1 101 byte 1 101 byte 1 32 byte 1 70 byte 1 111 byte 1 114 byte 1 32 byte 1 65 byte 1 108 byte 1 108 byte 1 0 align 1 LABELV $132 byte 1 84 byte 1 69 byte 1 65 byte 1 77 byte 1 84 byte 1 79 byte 1 85 byte 1 82 byte 1 78 byte 1 65 byte 1 77 byte 1 69 byte 1 78 byte 1 84 byte 1 0 align 1 LABELV $131 byte 1 72 byte 1 65 byte 1 82 byte 1 86 byte 1 69 byte 1 83 byte 1 84 byte 1 69 byte 1 82 byte 1 0 align 1 LABELV $130 byte 1 79 byte 1 86 byte 1 69 byte 1 82 byte 1 76 byte 1 79 byte 1 65 byte 1 68 byte 1 0 align 1 LABELV $129 byte 1 49 byte 1 70 byte 1 67 byte 1 84 byte 1 70 byte 1 0 align 1 LABELV $128 byte 1 67 byte 1 84 byte 1 70 byte 1 0 align 1 LABELV $127 byte 1 84 byte 1 69 byte 1 65 byte 1 77 byte 1 32 byte 1 68 byte 1 77 byte 1 0 align 1 LABELV $126 byte 1 83 byte 1 80 byte 1 0 align 1 LABELV $125 byte 1 84 byte 1 79 byte 1 85 byte 1 82 byte 1 78 byte 1 65 byte 1 77 byte 1 69 byte 1 78 byte 1 84 byte 1 0 align 1 LABELV $124 byte 1 70 byte 1 70 byte 1 65 byte 1 0 align 1 LABELV $123 byte 1 111 byte 1 115 byte 1 112 byte 1 0 align 1 LABELV $122 byte 1 79 byte 1 83 byte 1 80 byte 1 0 align 1 LABELV $121 byte 1 119 byte 1 102 byte 1 97 byte 1 0 align 1 LABELV $120 byte 1 87 byte 1 101 byte 1 97 byte 1 112 byte 1 111 byte 1 110 byte 1 115 byte 1 32 byte 1 70 byte 1 97 byte 1 99 byte 1 116 byte 1 111 byte 1 114 byte 1 121 byte 1 32 byte 1 65 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 0 align 1 LABELV $119 byte 1 97 byte 1 108 byte 1 108 byte 1 105 byte 1 97 byte 1 110 byte 1 99 byte 1 101 byte 1 50 byte 1 48 byte 1 0 align 1 LABELV $118 byte 1 65 byte 1 108 byte 1 108 byte 1 105 byte 1 97 byte 1 110 byte 1 99 byte 1 101 byte 1 0 align 1 LABELV $117 byte 1 97 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 0 align 1 LABELV $116 byte 1 82 byte 1 111 byte 1 99 byte 1 107 byte 1 101 byte 1 116 byte 1 32 byte 1 65 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 0 align 1 LABELV $115 byte 1 109 byte 1 105 byte 1 115 byte 1 115 byte 1 105 byte 1 111 byte 1 110 byte 1 112 byte 1 97 byte 1 99 byte 1 107 byte 1 0 align 1 LABELV $114 byte 1 84 byte 1 101 byte 1 97 byte 1 109 byte 1 32 byte 1 65 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 0 align 1 LABELV $113 byte 1 81 byte 1 117 byte 1 97 byte 1 107 byte 1 101 byte 1 32 byte 1 51 byte 1 32 byte 1 65 byte 1 114 byte 1 101 byte 1 110 byte 1 97 byte 1 0 align 1 LABELV $112 byte 1 0 align 1 LABELV $111 byte 1 65 byte 1 108 byte 1 108 byte 1 0 align 1 LABELV $110 byte 1 70 byte 1 97 byte 1 118 byte 1 111 byte 1 114 byte 1 105 byte 1 116 byte 1 101 byte 1 115 byte 1 0 align 1 LABELV $109 byte 1 73 byte 1 110 byte 1 116 byte 1 101 byte 1 114 byte 1 110 byte 1 101 byte 1 116 byte 1 0 align 1 LABELV $108 byte 1 77 byte 1 112 byte 1 108 byte 1 97 byte 1 121 byte 1 101 byte 1 114 byte 1 0 align 1 LABELV $107 byte 1 76 byte 1 111 byte 1 99 byte 1 97 byte 1 108 byte 1 0 align 1 LABELV $106 byte 1 78 byte 1 105 byte 1 103 byte 1 104 byte 1 116 byte 1 109 byte 1 97 byte 1 114 byte 1 101 byte 1 0 align 1 LABELV $105 byte 1 72 byte 1 97 byte 1 114 byte 1 100 byte 1 99 byte 1 111 byte 1 114 byte 1 101 byte 1 0 align 1 LABELV $104 byte 1 72 byte 1 117 byte 1 114 byte 1 116 byte 1 32 byte 1 77 byte 1 101 byte 1 32 byte 1 80 byte 1 108 byte 1 101 byte 1 110 byte 1 116 byte 1 121 byte 1 0 align 1 LABELV $103 byte 1 66 byte 1 114 byte 1 105 byte 1 110 byte 1 103 byte 1 32 byte 1 73 byte 1 116 byte 1 32 byte 1 79 byte 1 110 byte 1 0 align 1 LABELV $102 byte 1 73 byte 1 32 byte 1 67 byte 1 97 byte 1 110 byte 1 32 byte 1 87 byte 1 105 byte 1 110 byte 1 0 align 1 LABELV $101 byte 1 68 byte 1 101 byte 1 99 byte 1 0 align 1 LABELV $100 byte 1 78 byte 1 111 byte 1 118 byte 1 0 align 1 LABELV $99 byte 1 79 byte 1 99 byte 1 116 byte 1 0 align 1 LABELV $98 byte 1 83 byte 1 101 byte 1 112 byte 1 0 align 1 LABELV $97 byte 1 65 byte 1 117 byte 1 103 byte 1 0 align 1 LABELV $96 byte 1 74 byte 1 117 byte 1 108 byte 1 0 align 1 LABELV $95 byte 1 74 byte 1 117 byte 1 110 byte 1 0 align 1 LABELV $94 byte 1 77 byte 1 97 byte 1 121 byte 1 0 align 1 LABELV $93 byte 1 65 byte 1 112 byte 1 114 byte 1 0 align 1 LABELV $92 byte 1 77 byte 1 97 byte 1 114 byte 1 0 align 1 LABELV $91 byte 1 70 byte 1 101 byte 1 98 byte 1 0 align 1 LABELV $90 byte 1 74 byte 1 97 byte 1 110 byte 1 0