mirror of
https://github.com/ioquake/jedi-outcast.git
synced 2025-02-24 04:32:17 +00:00
19339 lines
264 KiB
NASM
19339 lines
264 KiB
NASM
export DeathmatchScoreboardMessage
|
|
code
|
|
proc DeathmatchScoreboardMessage 2484 68
|
|
file "../g_cmds.c"
|
|
line 20
|
|
;1:// Copyright (C) 1999-2000 Id Software, Inc.
|
|
;2://
|
|
;3:#include "g_local.h"
|
|
;4:
|
|
;5:#include "../../ui/menudef.h" // for the voice chats
|
|
;6:
|
|
;7://rww - for getting bot commands...
|
|
;8:int AcceptBotCommand(char *cmd, gentity_t *pl);
|
|
;9://end rww
|
|
;10:
|
|
;11:void BG_CycleInven(playerState_t *ps, int direction);
|
|
;12:void BG_CycleForce(playerState_t *ps, int direction);
|
|
;13:
|
|
;14:/*
|
|
;15:==================
|
|
;16:DeathmatchScoreboardMessage
|
|
;17:
|
|
;18:==================
|
|
;19:*/
|
|
;20:void DeathmatchScoreboardMessage( gentity_t *ent ) {
|
|
line 29
|
|
;21: char entry[1024];
|
|
;22: char string[1400];
|
|
;23: int stringlength;
|
|
;24: int i, j;
|
|
;25: gclient_t *cl;
|
|
;26: int numSorted, scoreFlags, accuracy, perfect;
|
|
;27:
|
|
;28: // send the latest information on all clients
|
|
;29: string[0] = 0;
|
|
ADDRLP4 1052
|
|
CNSTI1 0
|
|
ASGNI1
|
|
line 30
|
|
;30: stringlength = 0;
|
|
ADDRLP4 1032
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 31
|
|
;31: scoreFlags = 0;
|
|
ADDRLP4 2452
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 33
|
|
;32:
|
|
;33: numSorted = level.numConnectedClients;
|
|
ADDRLP4 1048
|
|
ADDRGP4 level+72
|
|
INDIRI4
|
|
ASGNI4
|
|
line 35
|
|
;34:
|
|
;35: if (numSorted > MAX_CLIENT_SCORE_SEND)
|
|
ADDRLP4 1048
|
|
INDIRI4
|
|
CNSTI4 20
|
|
LEI4 $80
|
|
line 36
|
|
;36: {
|
|
line 37
|
|
;37: numSorted = MAX_CLIENT_SCORE_SEND;
|
|
ADDRLP4 1048
|
|
CNSTI4 20
|
|
ASGNI4
|
|
line 38
|
|
;38: }
|
|
LABELV $80
|
|
line 40
|
|
;39:
|
|
;40: for (i=0 ; i < numSorted ; i++) {
|
|
ADDRLP4 4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $85
|
|
JUMPV
|
|
LABELV $82
|
|
line 43
|
|
;41: int ping;
|
|
;42:
|
|
;43: cl = &level.clients[level.sortedClients[i]];
|
|
ADDRLP4 0
|
|
CNSTI4 1756
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+84
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
ASGNP4
|
|
line 45
|
|
;44:
|
|
;45: if ( cl->pers.connected == CON_CONNECTING ) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1368
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $87
|
|
line 46
|
|
;46: ping = -1;
|
|
ADDRLP4 2456
|
|
CNSTI4 -1
|
|
ASGNI4
|
|
line 47
|
|
;47: } else {
|
|
ADDRGP4 $88
|
|
JUMPV
|
|
LABELV $87
|
|
line 48
|
|
;48: ping = cl->ps.ping < 999 ? cl->ps.ping : 999;
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 484
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 999
|
|
GEI4 $90
|
|
ADDRLP4 2460
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 484
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRGP4 $91
|
|
JUMPV
|
|
LABELV $90
|
|
ADDRLP4 2460
|
|
CNSTI4 999
|
|
ASGNI4
|
|
LABELV $91
|
|
ADDRLP4 2456
|
|
ADDRLP4 2460
|
|
INDIRI4
|
|
ASGNI4
|
|
line 49
|
|
;49: }
|
|
LABELV $88
|
|
line 51
|
|
;50:
|
|
;51: if( cl->accuracy_shots ) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1652
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $92
|
|
line 52
|
|
;52: accuracy = cl->accuracy_hits * 100 / cl->accuracy_shots;
|
|
ADDRLP4 1040
|
|
CNSTI4 100
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1656
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1652
|
|
ADDP4
|
|
INDIRI4
|
|
DIVI4
|
|
ASGNI4
|
|
line 53
|
|
;53: }
|
|
ADDRGP4 $93
|
|
JUMPV
|
|
LABELV $92
|
|
line 54
|
|
;54: else {
|
|
line 55
|
|
;55: accuracy = 0;
|
|
ADDRLP4 1040
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 56
|
|
;56: }
|
|
LABELV $93
|
|
line 57
|
|
;57: perfect = ( cl->ps.persistant[PERS_RANK] == 0 && cl->ps.persistant[PERS_KILLED] == 0 ) ? 1 : 0;
|
|
ADDRLP4 2468
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 288
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 2468
|
|
INDIRI4
|
|
NEI4 $95
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 312
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 2468
|
|
INDIRI4
|
|
NEI4 $95
|
|
ADDRLP4 2460
|
|
CNSTI4 1
|
|
ASGNI4
|
|
ADDRGP4 $96
|
|
JUMPV
|
|
LABELV $95
|
|
ADDRLP4 2460
|
|
CNSTI4 0
|
|
ASGNI4
|
|
LABELV $96
|
|
ADDRLP4 1044
|
|
ADDRLP4 2460
|
|
INDIRI4
|
|
ASGNI4
|
|
line 59
|
|
;58:
|
|
;59: Com_sprintf (entry, sizeof(entry),
|
|
ADDRLP4 8
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $97
|
|
ARGP4
|
|
ADDRLP4 2472
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ASGNI4
|
|
ADDRLP4 2472
|
|
INDIRI4
|
|
ADDRGP4 level+84
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 280
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2456
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1456
|
|
ADDP4
|
|
INDIRI4
|
|
SUBI4
|
|
CNSTI4 60000
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2452
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 828
|
|
ADDRLP4 2472
|
|
INDIRI4
|
|
ADDRGP4 level+84
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities+272
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1040
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 316
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 320
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 332
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 324
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 328
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1044
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 336
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 70
|
|
;60: " %i %i %i %i %i %i %i %i %i %i %i %i %i %i", level.sortedClients[i],
|
|
;61: cl->ps.persistant[PERS_SCORE], ping, (level.time - cl->pers.enterTime)/60000,
|
|
;62: scoreFlags, g_entities[level.sortedClients[i]].s.powerups, accuracy,
|
|
;63: cl->ps.persistant[PERS_IMPRESSIVE_COUNT],
|
|
;64: cl->ps.persistant[PERS_EXCELLENT_COUNT],
|
|
;65: cl->ps.persistant[PERS_GAUNTLET_FRAG_COUNT],
|
|
;66: cl->ps.persistant[PERS_DEFEND_COUNT],
|
|
;67: cl->ps.persistant[PERS_ASSIST_COUNT],
|
|
;68: perfect,
|
|
;69: cl->ps.persistant[PERS_CAPTURES]);
|
|
;70: j = strlen(entry);
|
|
ADDRLP4 8
|
|
ARGP4
|
|
ADDRLP4 2480
|
|
ADDRGP4 strlen
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1036
|
|
ADDRLP4 2480
|
|
INDIRI4
|
|
ASGNI4
|
|
line 71
|
|
;71: if (stringlength + j > 1022)
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
ADDI4
|
|
CNSTI4 1022
|
|
LEI4 $102
|
|
line 72
|
|
;72: break;
|
|
ADDRGP4 $84
|
|
JUMPV
|
|
LABELV $102
|
|
line 73
|
|
;73: strcpy (string + stringlength, entry);
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
ADDRLP4 1052
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ARGP4
|
|
ADDRGP4 strcpy
|
|
CALLP4
|
|
pop
|
|
line 74
|
|
;74: stringlength += j;
|
|
ADDRLP4 1032
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
ADDI4
|
|
ASGNI4
|
|
line 75
|
|
;75: }
|
|
LABELV $83
|
|
line 40
|
|
ADDRLP4 4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $85
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRLP4 1048
|
|
INDIRI4
|
|
LTI4 $82
|
|
LABELV $84
|
|
line 78
|
|
;76:
|
|
;77: //still want to know the total # of clients
|
|
;78: i = level.numConnectedClients;
|
|
ADDRLP4 4
|
|
ADDRGP4 level+72
|
|
INDIRI4
|
|
ASGNI4
|
|
line 80
|
|
;79:
|
|
;80: trap_SendServerCommand( ent-g_entities, va("scores %i %i %i%s", i,
|
|
ADDRGP4 $105
|
|
ARGP4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 level+44+4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 level+44+8
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1052
|
|
ARGP4
|
|
ADDRLP4 2456
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2456
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 83
|
|
;81: level.teamScores[TEAM_RED], level.teamScores[TEAM_BLUE],
|
|
;82: string ) );
|
|
;83:}
|
|
LABELV $78
|
|
endproc DeathmatchScoreboardMessage 2484 68
|
|
export Cmd_Score_f
|
|
proc Cmd_Score_f 0 4
|
|
line 93
|
|
;84:
|
|
;85:
|
|
;86:/*
|
|
;87:==================
|
|
;88:Cmd_Score_f
|
|
;89:
|
|
;90:Request current scoreboard information
|
|
;91:==================
|
|
;92:*/
|
|
;93:void Cmd_Score_f( gentity_t *ent ) {
|
|
line 94
|
|
;94: DeathmatchScoreboardMessage( ent );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 DeathmatchScoreboardMessage
|
|
CALLV
|
|
pop
|
|
line 95
|
|
;95:}
|
|
LABELV $110
|
|
endproc Cmd_Score_f 0 4
|
|
export CheatsOk
|
|
proc CheatsOk 8 8
|
|
line 104
|
|
;96:
|
|
;97:
|
|
;98:
|
|
;99:/*
|
|
;100:==================
|
|
;101:CheatsOk
|
|
;102:==================
|
|
;103:*/
|
|
;104:qboolean CheatsOk( gentity_t *ent ) {
|
|
line 105
|
|
;105: if ( !g_cheats.integer ) {
|
|
ADDRGP4 g_cheats+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $112
|
|
line 106
|
|
;106: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOCHEATS")));
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $117
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 107
|
|
;107: return qfalse;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $111
|
|
JUMPV
|
|
LABELV $112
|
|
line 109
|
|
;108: }
|
|
;109: if ( ent->health <= 0 ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
GTI4 $118
|
|
line 110
|
|
;110: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "MUSTBEALIVE")));
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $120
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 111
|
|
;111: return qfalse;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $111
|
|
JUMPV
|
|
LABELV $118
|
|
line 113
|
|
;112: }
|
|
;113: return qtrue;
|
|
CNSTI4 1
|
|
RETI4
|
|
LABELV $111
|
|
endproc CheatsOk 8 8
|
|
bss
|
|
align 1
|
|
LABELV $122
|
|
skip 1024
|
|
export ConcatArgs
|
|
code
|
|
proc ConcatArgs 1048 12
|
|
line 122
|
|
;114:}
|
|
;115:
|
|
;116:
|
|
;117:/*
|
|
;118:==================
|
|
;119:ConcatArgs
|
|
;120:==================
|
|
;121:*/
|
|
;122:char *ConcatArgs( int start ) {
|
|
line 128
|
|
;123: int i, c, tlen;
|
|
;124: static char line[MAX_STRING_CHARS];
|
|
;125: int len;
|
|
;126: char arg[MAX_STRING_CHARS];
|
|
;127:
|
|
;128: len = 0;
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 129
|
|
;129: c = trap_Argc();
|
|
ADDRLP4 1040
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1036
|
|
ADDRLP4 1040
|
|
INDIRI4
|
|
ASGNI4
|
|
line 130
|
|
;130: for ( i = start ; i < c ; i++ ) {
|
|
ADDRLP4 4
|
|
ADDRFP4 0
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRGP4 $126
|
|
JUMPV
|
|
LABELV $123
|
|
line 131
|
|
;131: trap_Argv( i, arg, sizeof( arg ) );
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 12
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 132
|
|
;132: tlen = strlen( arg );
|
|
ADDRLP4 12
|
|
ARGP4
|
|
ADDRLP4 1044
|
|
ADDRGP4 strlen
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 8
|
|
ADDRLP4 1044
|
|
INDIRI4
|
|
ASGNI4
|
|
line 133
|
|
;133: if ( len + tlen >= MAX_STRING_CHARS - 1 ) {
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ADDI4
|
|
CNSTI4 1023
|
|
LTI4 $127
|
|
line 134
|
|
;134: break;
|
|
ADDRGP4 $125
|
|
JUMPV
|
|
LABELV $127
|
|
line 136
|
|
;135: }
|
|
;136: memcpy( line + len, arg, tlen );
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 $122
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 12
|
|
ARGP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 memcpy
|
|
CALLP4
|
|
pop
|
|
line 137
|
|
;137: len += tlen;
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ADDI4
|
|
ASGNI4
|
|
line 138
|
|
;138: if ( i != c - 1 ) {
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
CNSTI4 1
|
|
SUBI4
|
|
EQI4 $129
|
|
line 139
|
|
;139: line[len] = ' ';
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 $122
|
|
ADDP4
|
|
CNSTI1 32
|
|
ASGNI1
|
|
line 140
|
|
;140: len++;
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 141
|
|
;141: }
|
|
LABELV $129
|
|
line 142
|
|
;142: }
|
|
LABELV $124
|
|
line 130
|
|
ADDRLP4 4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $126
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
LTI4 $123
|
|
LABELV $125
|
|
line 144
|
|
;143:
|
|
;144: line[len] = 0;
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 $122
|
|
ADDP4
|
|
CNSTI1 0
|
|
ASGNI1
|
|
line 146
|
|
;145:
|
|
;146: return line;
|
|
ADDRGP4 $122
|
|
RETP4
|
|
LABELV $121
|
|
endproc ConcatArgs 1048 12
|
|
export SanitizeString
|
|
proc SanitizeString 16 4
|
|
line 156
|
|
;147:}
|
|
;148:
|
|
;149:/*
|
|
;150:==================
|
|
;151:SanitizeString
|
|
;152:
|
|
;153:Remove case and control characters
|
|
;154:==================
|
|
;155:*/
|
|
;156:void SanitizeString( char *in, char *out ) {
|
|
ADDRGP4 $133
|
|
JUMPV
|
|
LABELV $132
|
|
line 157
|
|
;157: while ( *in ) {
|
|
line 158
|
|
;158: if ( *in == 27 ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 27
|
|
NEI4 $135
|
|
line 159
|
|
;159: in += 2; // skip color code
|
|
ADDRFP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 2
|
|
ADDP4
|
|
ASGNP4
|
|
line 160
|
|
;160: continue;
|
|
ADDRGP4 $133
|
|
JUMPV
|
|
LABELV $135
|
|
line 162
|
|
;161: }
|
|
;162: if ( *in < 32 ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 32
|
|
GEI4 $137
|
|
line 163
|
|
;163: in++;
|
|
ADDRFP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1
|
|
ADDP4
|
|
ASGNP4
|
|
line 164
|
|
;164: continue;
|
|
ADDRGP4 $133
|
|
JUMPV
|
|
LABELV $137
|
|
line 166
|
|
;165: }
|
|
;166: *out++ = tolower( *in++ );
|
|
ADDRLP4 0
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
CNSTI4 1
|
|
ASGNI4
|
|
ADDRFP4 4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
INDIRI1
|
|
CVII4 1
|
|
ARGI4
|
|
ADDRLP4 12
|
|
ADDRGP4 tolower
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
CVII1 4
|
|
ASGNI1
|
|
line 167
|
|
;167: }
|
|
LABELV $133
|
|
line 157
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 0
|
|
NEI4 $132
|
|
line 169
|
|
;168:
|
|
;169: *out = 0;
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CNSTI1 0
|
|
ASGNI1
|
|
line 170
|
|
;170:}
|
|
LABELV $131
|
|
endproc SanitizeString 16 4
|
|
export ClientNumberFromString
|
|
proc ClientNumberFromString 2072 8
|
|
line 180
|
|
;171:
|
|
;172:/*
|
|
;173:==================
|
|
;174:ClientNumberFromString
|
|
;175:
|
|
;176:Returns a player number for either a number or name string
|
|
;177:Returns -1 if invalid
|
|
;178:==================
|
|
;179:*/
|
|
;180:int ClientNumberFromString( gentity_t *to, char *s ) {
|
|
line 187
|
|
;181: gclient_t *cl;
|
|
;182: int idnum;
|
|
;183: char s2[MAX_STRING_CHARS];
|
|
;184: char n2[MAX_STRING_CHARS];
|
|
;185:
|
|
;186: // numeric values are just slot numbers
|
|
;187: if (s[0] >= '0' && s[0] <= '9') {
|
|
ADDRLP4 2056
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
INDIRI1
|
|
CVII4 1
|
|
ASGNI4
|
|
ADDRLP4 2056
|
|
INDIRI4
|
|
CNSTI4 48
|
|
LTI4 $140
|
|
ADDRLP4 2056
|
|
INDIRI4
|
|
CNSTI4 57
|
|
GTI4 $140
|
|
line 188
|
|
;188: idnum = atoi( s );
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
ADDRLP4 2060
|
|
INDIRI4
|
|
ASGNI4
|
|
line 189
|
|
;189: if ( idnum < 0 || idnum >= level.maxclients ) {
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $145
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $142
|
|
LABELV $145
|
|
line 190
|
|
;190: trap_SendServerCommand( to-g_entities, va("print \"Bad client slot: %i\n\"", idnum));
|
|
ADDRGP4 $146
|
|
ARGP4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2068
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2068
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 191
|
|
;191: return -1;
|
|
CNSTI4 -1
|
|
RETI4
|
|
ADDRGP4 $139
|
|
JUMPV
|
|
LABELV $142
|
|
line 194
|
|
;192: }
|
|
;193:
|
|
;194: cl = &level.clients[idnum];
|
|
ADDRLP4 0
|
|
CNSTI4 1756
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
ASGNP4
|
|
line 195
|
|
;195: if ( cl->pers.connected != CON_CONNECTED ) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1368
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $147
|
|
line 196
|
|
;196: trap_SendServerCommand( to-g_entities, va("print \"Client %i is not active\n\"", idnum));
|
|
ADDRGP4 $149
|
|
ARGP4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2068
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2068
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 197
|
|
;197: return -1;
|
|
CNSTI4 -1
|
|
RETI4
|
|
ADDRGP4 $139
|
|
JUMPV
|
|
LABELV $147
|
|
line 199
|
|
;198: }
|
|
;199: return idnum;
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
RETI4
|
|
ADDRGP4 $139
|
|
JUMPV
|
|
LABELV $140
|
|
line 203
|
|
;200: }
|
|
;201:
|
|
;202: // check for a name match
|
|
;203: SanitizeString( s, s2 );
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
ARGP4
|
|
ADDRGP4 SanitizeString
|
|
CALLV
|
|
pop
|
|
line 204
|
|
;204: for ( idnum=0,cl=level.clients ; idnum < level.maxclients ; idnum++,cl++ ) {
|
|
ADDRLP4 4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRGP4 $153
|
|
JUMPV
|
|
LABELV $150
|
|
line 205
|
|
;205: if ( cl->pers.connected != CON_CONNECTED ) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1368
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $155
|
|
line 206
|
|
;206: continue;
|
|
ADDRGP4 $151
|
|
JUMPV
|
|
LABELV $155
|
|
line 208
|
|
;207: }
|
|
;208: SanitizeString( cl->pers.netname, n2 );
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ARGP4
|
|
ADDRGP4 SanitizeString
|
|
CALLV
|
|
pop
|
|
line 209
|
|
;209: if ( !strcmp( n2, s2 ) ) {
|
|
ADDRLP4 8
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 strcmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2060
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $157
|
|
line 210
|
|
;210: return idnum;
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
RETI4
|
|
ADDRGP4 $139
|
|
JUMPV
|
|
LABELV $157
|
|
line 212
|
|
;211: }
|
|
;212: }
|
|
LABELV $151
|
|
line 204
|
|
ADDRLP4 4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1756
|
|
ADDP4
|
|
ASGNP4
|
|
LABELV $153
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $150
|
|
line 214
|
|
;213:
|
|
;214: trap_SendServerCommand( to-g_entities, va("print \"User %s is not on the server\n\"", s));
|
|
ADDRGP4 $159
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2060
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 215
|
|
;215: return -1;
|
|
CNSTI4 -1
|
|
RETI4
|
|
LABELV $139
|
|
endproc ClientNumberFromString 2072 8
|
|
export Cmd_Give_f
|
|
proc Cmd_Give_f 3200 12
|
|
line 226
|
|
;216:}
|
|
;217:
|
|
;218:/*
|
|
;219:==================
|
|
;220:Cmd_Give_f
|
|
;221:
|
|
;222:Give items to a client
|
|
;223:==================
|
|
;224:*/
|
|
;225:void Cmd_Give_f (gentity_t *ent)
|
|
;226:{
|
|
line 235
|
|
;227: char name[MAX_TOKEN_CHARS];
|
|
;228: gitem_t *it;
|
|
;229: int i;
|
|
;230: qboolean give_all;
|
|
;231: gentity_t *it_ent;
|
|
;232: trace_t trace;
|
|
;233: char arg[MAX_TOKEN_CHARS];
|
|
;234:
|
|
;235: if ( !CheatsOk( ent ) ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 3144
|
|
ADDRGP4 CheatsOk
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3144
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $161
|
|
line 236
|
|
;236: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $161
|
|
line 239
|
|
;237: }
|
|
;238:
|
|
;239: trap_Argv( 1, name, sizeof( name ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 241
|
|
;240:
|
|
;241: if (Q_stricmp(name, "all") == 0)
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $165
|
|
ARGP4
|
|
ADDRLP4 3148
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3148
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $163
|
|
line 242
|
|
;242: give_all = qtrue;
|
|
ADDRLP4 1028
|
|
CNSTI4 1
|
|
ASGNI4
|
|
ADDRGP4 $164
|
|
JUMPV
|
|
LABELV $163
|
|
line 244
|
|
;243: else
|
|
;244: give_all = qfalse;
|
|
ADDRLP4 1028
|
|
CNSTI4 0
|
|
ASGNI4
|
|
LABELV $164
|
|
line 246
|
|
;245:
|
|
;246: if (give_all)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $166
|
|
line 247
|
|
;247: {
|
|
line 248
|
|
;248: i = 0;
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $169
|
|
JUMPV
|
|
LABELV $168
|
|
line 250
|
|
;249: while (i < HI_NUM_HOLDABLE)
|
|
;250: {
|
|
line 251
|
|
;251: ent->client->ps.stats[STAT_HOLDABLE_ITEMS] |= (1 << i);
|
|
ADDRLP4 3152
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 224
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 3152
|
|
INDIRP4
|
|
ADDRLP4 3152
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
LSHI4
|
|
BORI4
|
|
ASGNI4
|
|
line 252
|
|
;252: i++;
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 253
|
|
;253: }
|
|
LABELV $169
|
|
line 249
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 7
|
|
LTI4 $168
|
|
line 254
|
|
;254: i = 0;
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 255
|
|
;255: }
|
|
LABELV $166
|
|
line 257
|
|
;256:
|
|
;257: if (give_all || Q_stricmp( name, "health") == 0)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $174
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $173
|
|
ARGP4
|
|
ADDRLP4 3152
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3152
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $171
|
|
LABELV $174
|
|
line 258
|
|
;258: {
|
|
line 259
|
|
;259: if (trap_Argc() == 3) {
|
|
ADDRLP4 3156
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3156
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $175
|
|
line 260
|
|
;260: trap_Argv( 2, arg, sizeof( arg ) );
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 261
|
|
;261: ent->health = atoi(arg);
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
ADDRLP4 3160
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
ADDRLP4 3160
|
|
INDIRI4
|
|
ASGNI4
|
|
line 262
|
|
;262: if (ent->health > ent->client->ps.stats[STAT_MAX_HEALTH]) {
|
|
ADDRLP4 3164
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 3164
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 3164
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 248
|
|
ADDP4
|
|
INDIRI4
|
|
LEI4 $176
|
|
line 263
|
|
;263: ent->health = ent->client->ps.stats[STAT_MAX_HEALTH];
|
|
ADDRLP4 3168
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 3168
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
ADDRLP4 3168
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 248
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 264
|
|
;264: }
|
|
line 265
|
|
;265: }
|
|
ADDRGP4 $176
|
|
JUMPV
|
|
LABELV $175
|
|
line 266
|
|
;266: else {
|
|
line 267
|
|
;267: ent->health = ent->client->ps.stats[STAT_MAX_HEALTH];
|
|
ADDRLP4 3160
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 3160
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
ADDRLP4 3160
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 248
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 268
|
|
;268: }
|
|
LABELV $176
|
|
line 269
|
|
;269: if (!give_all)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $179
|
|
line 270
|
|
;270: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $179
|
|
line 271
|
|
;271: }
|
|
LABELV $171
|
|
line 273
|
|
;272:
|
|
;273: if (give_all || Q_stricmp(name, "weapons") == 0)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $184
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $183
|
|
ARGP4
|
|
ADDRLP4 3156
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3156
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $181
|
|
LABELV $184
|
|
line 274
|
|
;274: {
|
|
line 275
|
|
;275: ent->client->ps.stats[STAT_WEAPONS] = (1 << (WP_DET_PACK+1)) - ( 1 << WP_NONE );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 232
|
|
ADDP4
|
|
CNSTI4 16383
|
|
ASGNI4
|
|
line 276
|
|
;276: if (!give_all)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $185
|
|
line 277
|
|
;277: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $185
|
|
line 278
|
|
;278: }
|
|
LABELV $181
|
|
line 280
|
|
;279:
|
|
;280: if ( !give_all && Q_stricmp(name, "weaponnum") == 0 )
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $187
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $189
|
|
ARGP4
|
|
ADDRLP4 3160
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3160
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $187
|
|
line 281
|
|
;281: {
|
|
line 282
|
|
;282: trap_Argv( 2, arg, sizeof( arg ) );
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 283
|
|
;283: ent->client->ps.stats[STAT_WEAPONS] |= (1 << atoi(arg));
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
ADDRLP4 3164
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3168
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 232
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 3168
|
|
INDIRP4
|
|
ADDRLP4 3168
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDRLP4 3164
|
|
INDIRI4
|
|
LSHI4
|
|
BORI4
|
|
ASGNI4
|
|
line 284
|
|
;284: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $187
|
|
line 287
|
|
;285: }
|
|
;286:
|
|
;287: if (give_all || Q_stricmp(name, "ammo") == 0)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $193
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $192
|
|
ARGP4
|
|
ADDRLP4 3164
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3164
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $190
|
|
LABELV $193
|
|
line 288
|
|
;288: {
|
|
line 289
|
|
;289: int num = 999;
|
|
ADDRLP4 3168
|
|
CNSTI4 999
|
|
ASGNI4
|
|
line 290
|
|
;290: if (trap_Argc() == 3) {
|
|
ADDRLP4 3172
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3172
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $194
|
|
line 291
|
|
;291: trap_Argv( 2, arg, sizeof( arg ) );
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 292
|
|
;292: num = atoi(arg);
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
ADDRLP4 3176
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3168
|
|
ADDRLP4 3176
|
|
INDIRI4
|
|
ASGNI4
|
|
line 293
|
|
;293: }
|
|
LABELV $194
|
|
line 294
|
|
;294: for ( i = 0 ; i < MAX_WEAPONS ; i++ ) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
LABELV $196
|
|
line 295
|
|
;295: ent->client->ps.ammo[i] = num;
|
|
ADDRLP4 3176
|
|
CNSTI4 408
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ADDRLP4 3176
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 3176
|
|
INDIRI4
|
|
ADDP4
|
|
ADDP4
|
|
ADDRLP4 3168
|
|
INDIRI4
|
|
ASGNI4
|
|
line 296
|
|
;296: }
|
|
LABELV $197
|
|
line 294
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 16
|
|
LTI4 $196
|
|
line 297
|
|
;297: if (!give_all)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $200
|
|
line 298
|
|
;298: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $200
|
|
line 299
|
|
;299: }
|
|
LABELV $190
|
|
line 301
|
|
;300:
|
|
;301: if (give_all || Q_stricmp(name, "armor") == 0)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $205
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $204
|
|
ARGP4
|
|
ADDRLP4 3168
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3168
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $202
|
|
LABELV $205
|
|
line 302
|
|
;302: {
|
|
line 303
|
|
;303: if (trap_Argc() == 3) {
|
|
ADDRLP4 3172
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3172
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $206
|
|
line 304
|
|
;304: trap_Argv( 2, arg, sizeof( arg ) );
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 305
|
|
;305: ent->client->ps.stats[STAT_ARMOR] = atoi(arg);
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
ADDRLP4 3176
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 236
|
|
ADDP4
|
|
ADDRLP4 3176
|
|
INDIRI4
|
|
ASGNI4
|
|
line 306
|
|
;306: } else {
|
|
ADDRGP4 $207
|
|
JUMPV
|
|
LABELV $206
|
|
line 307
|
|
;307: ent->client->ps.stats[STAT_ARMOR] = ent->client->ps.stats[STAT_MAX_HEALTH];
|
|
ADDRLP4 3176
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 3176
|
|
INDIRP4
|
|
CNSTI4 236
|
|
ADDP4
|
|
ADDRLP4 3176
|
|
INDIRP4
|
|
CNSTI4 248
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 308
|
|
;308: }
|
|
LABELV $207
|
|
line 310
|
|
;309:
|
|
;310: if (!give_all)
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $208
|
|
line 311
|
|
;311: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $208
|
|
line 312
|
|
;312: }
|
|
LABELV $202
|
|
line 314
|
|
;313:
|
|
;314: if (Q_stricmp(name, "excellent") == 0) {
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $212
|
|
ARGP4
|
|
ADDRLP4 3172
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3172
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $210
|
|
line 315
|
|
;315: ent->client->ps.persistant[PERS_EXCELLENT_COUNT]++;
|
|
ADDRLP4 3176
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 320
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 3176
|
|
INDIRP4
|
|
ADDRLP4 3176
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 316
|
|
;316: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $210
|
|
line 318
|
|
;317: }
|
|
;318: if (Q_stricmp(name, "impressive") == 0) {
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $215
|
|
ARGP4
|
|
ADDRLP4 3176
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3176
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $213
|
|
line 319
|
|
;319: ent->client->ps.persistant[PERS_IMPRESSIVE_COUNT]++;
|
|
ADDRLP4 3180
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 316
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 3180
|
|
INDIRP4
|
|
ADDRLP4 3180
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 320
|
|
;320: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $213
|
|
line 322
|
|
;321: }
|
|
;322: if (Q_stricmp(name, "gauntletaward") == 0) {
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $218
|
|
ARGP4
|
|
ADDRLP4 3180
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3180
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $216
|
|
line 323
|
|
;323: ent->client->ps.persistant[PERS_GAUNTLET_FRAG_COUNT]++;
|
|
ADDRLP4 3184
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 332
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 3184
|
|
INDIRP4
|
|
ADDRLP4 3184
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 324
|
|
;324: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $216
|
|
line 326
|
|
;325: }
|
|
;326: if (Q_stricmp(name, "defend") == 0) {
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $221
|
|
ARGP4
|
|
ADDRLP4 3184
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3184
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $219
|
|
line 327
|
|
;327: ent->client->ps.persistant[PERS_DEFEND_COUNT]++;
|
|
ADDRLP4 3188
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 324
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 3188
|
|
INDIRP4
|
|
ADDRLP4 3188
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 328
|
|
;328: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $219
|
|
line 330
|
|
;329: }
|
|
;330: if (Q_stricmp(name, "assist") == 0) {
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $224
|
|
ARGP4
|
|
ADDRLP4 3188
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3188
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $222
|
|
line 331
|
|
;331: ent->client->ps.persistant[PERS_ASSIST_COUNT]++;
|
|
ADDRLP4 3192
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 328
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 3192
|
|
INDIRP4
|
|
ADDRLP4 3192
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 332
|
|
;332: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $222
|
|
line 336
|
|
;333: }
|
|
;334:
|
|
;335: // spawn a specific item right on the player
|
|
;336: if ( !give_all ) {
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $225
|
|
line 337
|
|
;337: it = BG_FindItem (name);
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 3192
|
|
ADDRGP4 BG_FindItem
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 2060
|
|
ADDRLP4 3192
|
|
INDIRP4
|
|
ASGNP4
|
|
line 338
|
|
;338: if (!it) {
|
|
ADDRLP4 2060
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $227
|
|
line 339
|
|
;339: return;
|
|
ADDRGP4 $160
|
|
JUMPV
|
|
LABELV $227
|
|
line 342
|
|
;340: }
|
|
;341:
|
|
;342: it_ent = G_Spawn();
|
|
ADDRLP4 3196
|
|
ADDRGP4 G_Spawn
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 1032
|
|
ADDRLP4 3196
|
|
INDIRP4
|
|
ASGNP4
|
|
line 343
|
|
;343: VectorCopy( ent->r.currentOrigin, it_ent->s.origin );
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
CNSTI4 92
|
|
ADDP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 368
|
|
ADDP4
|
|
INDIRB
|
|
ASGNB 12
|
|
line 344
|
|
;344: it_ent->classname = it->classname;
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
CNSTI4 416
|
|
ADDP4
|
|
ADDRLP4 2060
|
|
INDIRP4
|
|
INDIRP4
|
|
ASGNP4
|
|
line 345
|
|
;345: G_SpawnItem (it_ent, it);
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_SpawnItem
|
|
CALLV
|
|
pop
|
|
line 346
|
|
;346: FinishSpawningItem(it_ent );
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 FinishSpawningItem
|
|
CALLV
|
|
pop
|
|
line 347
|
|
;347: memset( &trace, 0, sizeof( trace ) );
|
|
ADDRLP4 2064
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
CNSTI4 1080
|
|
ARGI4
|
|
ADDRGP4 memset
|
|
CALLP4
|
|
pop
|
|
line 348
|
|
;348: Touch_Item (it_ent, ent, &trace);
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2064
|
|
ARGP4
|
|
ADDRGP4 Touch_Item
|
|
CALLV
|
|
pop
|
|
line 349
|
|
;349: if (it_ent->inuse) {
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
CNSTI4 412
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $229
|
|
line 350
|
|
;350: G_FreeEntity( it_ent );
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_FreeEntity
|
|
CALLV
|
|
pop
|
|
line 351
|
|
;351: }
|
|
LABELV $229
|
|
line 352
|
|
;352: }
|
|
LABELV $225
|
|
line 353
|
|
;353:}
|
|
LABELV $160
|
|
endproc Cmd_Give_f 3200 12
|
|
export Cmd_God_f
|
|
proc Cmd_God_f 16 8
|
|
line 366
|
|
;354:
|
|
;355:
|
|
;356:/*
|
|
;357:==================
|
|
;358:Cmd_God_f
|
|
;359:
|
|
;360:Sets client to godmode
|
|
;361:
|
|
;362:argv(0) god
|
|
;363:==================
|
|
;364:*/
|
|
;365:void Cmd_God_f (gentity_t *ent)
|
|
;366:{
|
|
line 369
|
|
;367: char *msg;
|
|
;368:
|
|
;369: if ( !CheatsOk( ent ) ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 CheatsOk
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $232
|
|
line 370
|
|
;370: return;
|
|
ADDRGP4 $231
|
|
JUMPV
|
|
LABELV $232
|
|
line 373
|
|
;371: }
|
|
;372:
|
|
;373: ent->flags ^= FL_GODMODE;
|
|
ADDRLP4 8
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 472
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 16
|
|
BXORI4
|
|
ASGNI4
|
|
line 374
|
|
;374: if (!(ent->flags & FL_GODMODE) )
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 472
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 16
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $234
|
|
line 375
|
|
;375: msg = "godmode OFF\n";
|
|
ADDRLP4 0
|
|
ADDRGP4 $236
|
|
ASGNP4
|
|
ADDRGP4 $235
|
|
JUMPV
|
|
LABELV $234
|
|
line 377
|
|
;376: else
|
|
;377: msg = "godmode ON\n";
|
|
ADDRLP4 0
|
|
ADDRGP4 $237
|
|
ASGNP4
|
|
LABELV $235
|
|
line 379
|
|
;378:
|
|
;379: trap_SendServerCommand( ent-g_entities, va("print \"%s\"", msg));
|
|
ADDRGP4 $238
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 12
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 380
|
|
;380:}
|
|
LABELV $231
|
|
endproc Cmd_God_f 16 8
|
|
export Cmd_Notarget_f
|
|
proc Cmd_Notarget_f 16 8
|
|
line 392
|
|
;381:
|
|
;382:
|
|
;383:/*
|
|
;384:==================
|
|
;385:Cmd_Notarget_f
|
|
;386:
|
|
;387:Sets client to notarget
|
|
;388:
|
|
;389:argv(0) notarget
|
|
;390:==================
|
|
;391:*/
|
|
;392:void Cmd_Notarget_f( gentity_t *ent ) {
|
|
line 395
|
|
;393: char *msg;
|
|
;394:
|
|
;395: if ( !CheatsOk( ent ) ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 CheatsOk
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $240
|
|
line 396
|
|
;396: return;
|
|
ADDRGP4 $239
|
|
JUMPV
|
|
LABELV $240
|
|
line 399
|
|
;397: }
|
|
;398:
|
|
;399: ent->flags ^= FL_NOTARGET;
|
|
ADDRLP4 8
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 472
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 32
|
|
BXORI4
|
|
ASGNI4
|
|
line 400
|
|
;400: if (!(ent->flags & FL_NOTARGET) )
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 472
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 32
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $242
|
|
line 401
|
|
;401: msg = "notarget OFF\n";
|
|
ADDRLP4 0
|
|
ADDRGP4 $244
|
|
ASGNP4
|
|
ADDRGP4 $243
|
|
JUMPV
|
|
LABELV $242
|
|
line 403
|
|
;402: else
|
|
;403: msg = "notarget ON\n";
|
|
ADDRLP4 0
|
|
ADDRGP4 $245
|
|
ASGNP4
|
|
LABELV $243
|
|
line 405
|
|
;404:
|
|
;405: trap_SendServerCommand( ent-g_entities, va("print \"%s\"", msg));
|
|
ADDRGP4 $238
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 12
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 406
|
|
;406:}
|
|
LABELV $239
|
|
endproc Cmd_Notarget_f 16 8
|
|
export Cmd_Noclip_f
|
|
proc Cmd_Noclip_f 20 8
|
|
line 416
|
|
;407:
|
|
;408:
|
|
;409:/*
|
|
;410:==================
|
|
;411:Cmd_Noclip_f
|
|
;412:
|
|
;413:argv(0) noclip
|
|
;414:==================
|
|
;415:*/
|
|
;416:void Cmd_Noclip_f( gentity_t *ent ) {
|
|
line 419
|
|
;417: char *msg;
|
|
;418:
|
|
;419: if ( !CheatsOk( ent ) ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 CheatsOk
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $247
|
|
line 420
|
|
;420: return;
|
|
ADDRGP4 $246
|
|
JUMPV
|
|
LABELV $247
|
|
line 423
|
|
;421: }
|
|
;422:
|
|
;423: if ( ent->client->noclip ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1576
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $249
|
|
line 424
|
|
;424: msg = "noclip OFF\n";
|
|
ADDRLP4 0
|
|
ADDRGP4 $251
|
|
ASGNP4
|
|
line 425
|
|
;425: } else {
|
|
ADDRGP4 $250
|
|
JUMPV
|
|
LABELV $249
|
|
line 426
|
|
;426: msg = "noclip ON\n";
|
|
ADDRLP4 0
|
|
ADDRGP4 $252
|
|
ASGNP4
|
|
line 427
|
|
;427: }
|
|
LABELV $250
|
|
line 428
|
|
;428: ent->client->noclip = !ent->client->noclip;
|
|
ADDRLP4 12
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1576
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $254
|
|
ADDRLP4 8
|
|
CNSTI4 1
|
|
ASGNI4
|
|
ADDRGP4 $255
|
|
JUMPV
|
|
LABELV $254
|
|
ADDRLP4 8
|
|
CNSTI4 0
|
|
ASGNI4
|
|
LABELV $255
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ASGNI4
|
|
line 430
|
|
;429:
|
|
;430: trap_SendServerCommand( ent-g_entities, va("print \"%s\"", msg));
|
|
ADDRGP4 $238
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 16
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 16
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 431
|
|
;431:}
|
|
LABELV $246
|
|
endproc Cmd_Noclip_f 20 8
|
|
export Cmd_LevelShot_f
|
|
proc Cmd_LevelShot_f 4 8
|
|
line 444
|
|
;432:
|
|
;433:
|
|
;434:/*
|
|
;435:==================
|
|
;436:Cmd_LevelShot_f
|
|
;437:
|
|
;438:This is just to help generate the level pictures
|
|
;439:for the menus. It goes to the intermission immediately
|
|
;440:and sends over a command to the client to resize the view,
|
|
;441:hide the scoreboard, and take a special screenshot
|
|
;442:==================
|
|
;443:*/
|
|
;444:void Cmd_LevelShot_f( gentity_t *ent ) {
|
|
line 445
|
|
;445: if ( !CheatsOk( ent ) ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ADDRGP4 CheatsOk
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $257
|
|
line 446
|
|
;446: return;
|
|
ADDRGP4 $256
|
|
JUMPV
|
|
LABELV $257
|
|
line 450
|
|
;447: }
|
|
;448:
|
|
;449: // doesn't work in single player
|
|
;450: if ( g_gametype.integer != 0 ) {
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $259
|
|
line 451
|
|
;451: trap_SendServerCommand( ent-g_entities,
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $262
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 453
|
|
;452: "print \"Must be in g_gametype 0 for levelshot\n\"" );
|
|
;453: return;
|
|
ADDRGP4 $256
|
|
JUMPV
|
|
LABELV $259
|
|
line 456
|
|
;454: }
|
|
;455:
|
|
;456: BeginIntermission();
|
|
ADDRGP4 BeginIntermission
|
|
CALLV
|
|
pop
|
|
line 457
|
|
;457: trap_SendServerCommand( ent-g_entities, "clientLevelShot" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $263
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 458
|
|
;458:}
|
|
LABELV $256
|
|
endproc Cmd_LevelShot_f 4 8
|
|
export Cmd_TeamTask_f
|
|
proc Cmd_TeamTask_f 2068 12
|
|
line 471
|
|
;459:
|
|
;460:
|
|
;461:/*
|
|
;462:==================
|
|
;463:Cmd_LevelShot_f
|
|
;464:
|
|
;465:This is just to help generate the level pictures
|
|
;466:for the menus. It goes to the intermission immediately
|
|
;467:and sends over a command to the client to resize the view,
|
|
;468:hide the scoreboard, and take a special screenshot
|
|
;469:==================
|
|
;470:*/
|
|
;471:void Cmd_TeamTask_f( gentity_t *ent ) {
|
|
line 475
|
|
;472: char userinfo[MAX_INFO_STRING];
|
|
;473: char arg[MAX_TOKEN_CHARS];
|
|
;474: int task;
|
|
;475: int client = ent->client - level.clients;
|
|
ADDRLP4 1024
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 1756
|
|
DIVI4
|
|
ASGNI4
|
|
line 477
|
|
;476:
|
|
;477: if ( trap_Argc() != 2 ) {
|
|
ADDRLP4 2056
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2056
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $265
|
|
line 478
|
|
;478: return;
|
|
ADDRGP4 $264
|
|
JUMPV
|
|
LABELV $265
|
|
line 480
|
|
;479: }
|
|
;480: trap_Argv( 1, arg, sizeof( arg ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 481
|
|
;481: task = atoi( arg );
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2052
|
|
ADDRLP4 2060
|
|
INDIRI4
|
|
ASGNI4
|
|
line 483
|
|
;482:
|
|
;483: trap_GetUserinfo(client, userinfo, sizeof(userinfo));
|
|
ADDRLP4 1024
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_GetUserinfo
|
|
CALLV
|
|
pop
|
|
line 484
|
|
;484: Info_SetValueForKey(userinfo, "teamtask", va("%d", task));
|
|
ADDRGP4 $268
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2064
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $267
|
|
ARGP4
|
|
ADDRLP4 2064
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Info_SetValueForKey
|
|
CALLV
|
|
pop
|
|
line 485
|
|
;485: trap_SetUserinfo(client, userinfo);
|
|
ADDRLP4 1024
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 trap_SetUserinfo
|
|
CALLV
|
|
pop
|
|
line 486
|
|
;486: ClientUserinfoChanged(client);
|
|
ADDRLP4 1024
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 ClientUserinfoChanged
|
|
CALLV
|
|
pop
|
|
line 487
|
|
;487:}
|
|
LABELV $264
|
|
endproc Cmd_TeamTask_f 2068 12
|
|
export Cmd_Kill_f
|
|
proc Cmd_Kill_f 16 20
|
|
line 496
|
|
;488:
|
|
;489:
|
|
;490:
|
|
;491:/*
|
|
;492:=================
|
|
;493:Cmd_Kill_f
|
|
;494:=================
|
|
;495:*/
|
|
;496:void Cmd_Kill_f( gentity_t *ent ) {
|
|
line 497
|
|
;497: if ( ent->client->sess.sessionTeam == TEAM_SPECTATOR ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $270
|
|
line 498
|
|
;498: return;
|
|
ADDRGP4 $269
|
|
JUMPV
|
|
LABELV $270
|
|
line 500
|
|
;499: }
|
|
;500: if (ent->health <= 0) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
GTI4 $272
|
|
line 501
|
|
;501: return;
|
|
ADDRGP4 $269
|
|
JUMPV
|
|
LABELV $272
|
|
line 504
|
|
;502: }
|
|
;503:
|
|
;504: if (g_gametype.integer == GT_TOURNAMENT && level.numPlayingClients > 1 && !level.warmupTime)
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $274
|
|
ADDRGP4 level+80
|
|
INDIRI4
|
|
CNSTI4 1
|
|
LEI4 $274
|
|
ADDRGP4 level+16
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $274
|
|
line 505
|
|
;505: {
|
|
line 506
|
|
;506: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "ATTEMPTDUELKILL")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $279
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 507
|
|
;507: return;
|
|
ADDRGP4 $269
|
|
JUMPV
|
|
LABELV $274
|
|
line 510
|
|
;508: }
|
|
;509:
|
|
;510: ent->flags &= ~FL_GODMODE;
|
|
ADDRLP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 472
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 -17
|
|
BANDI4
|
|
ASGNI4
|
|
line 511
|
|
;511: ent->client->ps.stats[STAT_HEALTH] = ent->health = -999;
|
|
ADDRLP4 4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
CNSTI4 -999
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 216
|
|
ADDP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ASGNI4
|
|
line 512
|
|
;512: player_die (ent, ent, ent, 100000, MOD_SUICIDE);
|
|
ADDRLP4 12
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 100000
|
|
ARGI4
|
|
CNSTI4 35
|
|
ARGI4
|
|
ADDRGP4 player_die
|
|
CALLV
|
|
pop
|
|
line 513
|
|
;513:}
|
|
LABELV $269
|
|
endproc Cmd_Kill_f 16 20
|
|
export G_GetDuelWinner
|
|
proc G_GetDuelWinner 16 0
|
|
line 516
|
|
;514:
|
|
;515:gentity_t *G_GetDuelWinner(gclient_t *client)
|
|
;516:{
|
|
line 520
|
|
;517: gclient_t *wCl;
|
|
;518: int i;
|
|
;519:
|
|
;520: for ( i = 0 ; i < level.maxclients ; i++ ) {
|
|
ADDRLP4 4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $284
|
|
JUMPV
|
|
LABELV $281
|
|
line 521
|
|
;521: wCl = &level.clients[i];
|
|
ADDRLP4 0
|
|
CNSTI4 1756
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
ASGNP4
|
|
line 523
|
|
;522:
|
|
;523: if (wCl && wCl != client && /*wCl->ps.clientNum != client->ps.clientNum &&*/
|
|
ADDRLP4 12
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ASGNU4
|
|
ADDRLP4 12
|
|
INDIRU4
|
|
CNSTU4 0
|
|
EQU4 $286
|
|
ADDRLP4 12
|
|
INDIRU4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
EQU4 $286
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1368
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $286
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
EQI4 $286
|
|
line 525
|
|
;524: wCl->pers.connected == CON_CONNECTED && wCl->sess.sessionTeam != TEAM_SPECTATOR)
|
|
;525: {
|
|
line 526
|
|
;526: return &g_entities[wCl->ps.clientNum];
|
|
CNSTI4 828
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
RETP4
|
|
ADDRGP4 $280
|
|
JUMPV
|
|
LABELV $286
|
|
line 528
|
|
;527: }
|
|
;528: }
|
|
LABELV $282
|
|
line 520
|
|
ADDRLP4 4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $284
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $281
|
|
line 530
|
|
;529:
|
|
;530: return NULL;
|
|
CNSTP4 0
|
|
RETP4
|
|
LABELV $280
|
|
endproc G_GetDuelWinner 16 0
|
|
export BroadcastTeamChange
|
|
proc BroadcastTeamChange 12 16
|
|
line 541
|
|
;531:}
|
|
;532:
|
|
;533:/*
|
|
;534:=================
|
|
;535:BroadCastTeamChange
|
|
;536:
|
|
;537:Let everyone know about a team change
|
|
;538:=================
|
|
;539:*/
|
|
;540:void BroadcastTeamChange( gclient_t *client, int oldTeam )
|
|
;541:{
|
|
line 542
|
|
;542: client->ps.fd.forceDoInit = 1; //every time we change teams make sure our force powers are set right
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1172
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 544
|
|
;543:
|
|
;544: if ( client->sess.sessionTeam == TEAM_RED ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $289
|
|
line 545
|
|
;545: trap_SendServerCommand( -1, va("cp \"%s" S_COLOR_WHITE " %s\n\"",
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $292
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $291
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 -1
|
|
ARGI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 547
|
|
;546: client->pers.netname, G_GetStripEdString("SVINGAME", "JOINEDTHEREDTEAM")) );
|
|
;547: } else if ( client->sess.sessionTeam == TEAM_BLUE ) {
|
|
ADDRGP4 $290
|
|
JUMPV
|
|
LABELV $289
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $293
|
|
line 548
|
|
;548: trap_SendServerCommand( -1, va("cp \"%s" S_COLOR_WHITE " %s\n\"",
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $295
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $291
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 -1
|
|
ARGI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 550
|
|
;549: client->pers.netname, G_GetStripEdString("SVINGAME", "JOINEDTHEBLUETEAM")));
|
|
;550: } else if ( client->sess.sessionTeam == TEAM_SPECTATOR && oldTeam != TEAM_SPECTATOR ) {
|
|
ADDRGP4 $294
|
|
JUMPV
|
|
LABELV $293
|
|
ADDRLP4 0
|
|
CNSTI4 3
|
|
ASGNI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
NEI4 $296
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
EQI4 $296
|
|
line 551
|
|
;551: trap_SendServerCommand( -1, va("cp \"%s" S_COLOR_WHITE " %s\n\"",
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $298
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $291
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 -1
|
|
ARGI4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 553
|
|
;552: client->pers.netname, G_GetStripEdString("SVINGAME", "JOINEDTHESPECTATORS")));
|
|
;553: } else if ( client->sess.sessionTeam == TEAM_FREE ) {
|
|
ADDRGP4 $297
|
|
JUMPV
|
|
LABELV $296
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $299
|
|
line 554
|
|
;554: if (g_gametype.integer == GT_TOURNAMENT)
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $301
|
|
line 555
|
|
;555: {
|
|
line 571
|
|
;556: /*
|
|
;557: gentity_t *currentWinner = G_GetDuelWinner(client);
|
|
;558:
|
|
;559: if (currentWinner && currentWinner->client)
|
|
;560: {
|
|
;561: trap_SendServerCommand( -1, va("cp \"%s" S_COLOR_WHITE " %s %s\n\"",
|
|
;562: currentWinner->client->pers.netname, G_GetStripEdString("SVINGAME", "VERSUS"), client->pers.netname));
|
|
;563: }
|
|
;564: else
|
|
;565: {
|
|
;566: trap_SendServerCommand( -1, va("cp \"%s" S_COLOR_WHITE " %s\n\"",
|
|
;567: client->pers.netname, G_GetStripEdString("SVINGAME", "JOINEDTHEBATTLE")));
|
|
;568: }
|
|
;569: */
|
|
;570: //NOTE: Just doing a vs. once it counts two players up
|
|
;571: }
|
|
ADDRGP4 $302
|
|
JUMPV
|
|
LABELV $301
|
|
line 573
|
|
;572: else
|
|
;573: {
|
|
line 574
|
|
;574: trap_SendServerCommand( -1, va("cp \"%s" S_COLOR_WHITE " %s\n\"",
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $304
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $291
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 -1
|
|
ARGI4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 576
|
|
;575: client->pers.netname, G_GetStripEdString("SVINGAME", "JOINEDTHEBATTLE")));
|
|
;576: }
|
|
LABELV $302
|
|
line 577
|
|
;577: }
|
|
LABELV $299
|
|
LABELV $297
|
|
LABELV $294
|
|
LABELV $290
|
|
line 579
|
|
;578:
|
|
;579: G_LogPrintf ( "setteam: %i %s %s\n",
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 4
|
|
ADDRGP4 TeamName
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 8
|
|
ADDRGP4 TeamName
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $305
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 1756
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_LogPrintf
|
|
CALLV
|
|
pop
|
|
line 583
|
|
;580: client - &level.clients[0],
|
|
;581: TeamName ( oldTeam ),
|
|
;582: TeamName ( client->sess.sessionTeam ) );
|
|
;583:}
|
|
LABELV $288
|
|
endproc BroadcastTeamChange 12 16
|
|
export SetTeam
|
|
proc SetTeam 104 20
|
|
line 590
|
|
;584:
|
|
;585:/*
|
|
;586:=================
|
|
;587:SetTeam
|
|
;588:=================
|
|
;589:*/
|
|
;590:void SetTeam( gentity_t *ent, char *s ) {
|
|
line 601
|
|
;591: int team, oldTeam;
|
|
;592: gclient_t *client;
|
|
;593: int clientNum;
|
|
;594: spectatorState_t specState;
|
|
;595: int specClient;
|
|
;596: int teamLeader;
|
|
;597:
|
|
;598: //
|
|
;599: // see what change is requested
|
|
;600: //
|
|
;601: client = ent->client;
|
|
ADDRLP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
line 603
|
|
;602:
|
|
;603: clientNum = client - level.clients;
|
|
ADDRLP4 12
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 1756
|
|
DIVI4
|
|
ASGNI4
|
|
line 604
|
|
;604: specClient = 0;
|
|
ADDRLP4 20
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 605
|
|
;605: specState = SPECTATOR_NOT;
|
|
ADDRLP4 16
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 606
|
|
;606: if ( !Q_stricmp( s, "scoreboard" ) || !Q_stricmp( s, "score" ) ) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $309
|
|
ARGP4
|
|
ADDRLP4 28
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 28
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $311
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $310
|
|
ARGP4
|
|
ADDRLP4 32
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 32
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $307
|
|
LABELV $311
|
|
line 607
|
|
;607: team = TEAM_SPECTATOR;
|
|
ADDRLP4 4
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 608
|
|
;608: specState = SPECTATOR_SCOREBOARD;
|
|
ADDRLP4 16
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 609
|
|
;609: } else if ( !Q_stricmp( s, "follow1" ) ) {
|
|
ADDRGP4 $308
|
|
JUMPV
|
|
LABELV $307
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $314
|
|
ARGP4
|
|
ADDRLP4 36
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 36
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $312
|
|
line 610
|
|
;610: team = TEAM_SPECTATOR;
|
|
ADDRLP4 4
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 611
|
|
;611: specState = SPECTATOR_FOLLOW;
|
|
ADDRLP4 16
|
|
CNSTI4 2
|
|
ASGNI4
|
|
line 612
|
|
;612: specClient = -1;
|
|
ADDRLP4 20
|
|
CNSTI4 -1
|
|
ASGNI4
|
|
line 613
|
|
;613: } else if ( !Q_stricmp( s, "follow2" ) ) {
|
|
ADDRGP4 $313
|
|
JUMPV
|
|
LABELV $312
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $317
|
|
ARGP4
|
|
ADDRLP4 40
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 40
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $315
|
|
line 614
|
|
;614: team = TEAM_SPECTATOR;
|
|
ADDRLP4 4
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 615
|
|
;615: specState = SPECTATOR_FOLLOW;
|
|
ADDRLP4 16
|
|
CNSTI4 2
|
|
ASGNI4
|
|
line 616
|
|
;616: specClient = -2;
|
|
ADDRLP4 20
|
|
CNSTI4 -2
|
|
ASGNI4
|
|
line 617
|
|
;617: } else if ( !Q_stricmp( s, "spectator" ) || !Q_stricmp( s, "s" ) ) {
|
|
ADDRGP4 $316
|
|
JUMPV
|
|
LABELV $315
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $320
|
|
ARGP4
|
|
ADDRLP4 44
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 44
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $322
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $321
|
|
ARGP4
|
|
ADDRLP4 48
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 48
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $318
|
|
LABELV $322
|
|
line 618
|
|
;618: team = TEAM_SPECTATOR;
|
|
ADDRLP4 4
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 619
|
|
;619: specState = SPECTATOR_FREE;
|
|
ADDRLP4 16
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 620
|
|
;620: } else if ( g_gametype.integer >= GT_TEAM ) {
|
|
ADDRGP4 $319
|
|
JUMPV
|
|
LABELV $318
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 5
|
|
LTI4 $323
|
|
line 622
|
|
;621: // if running a team game, assign player to one of the teams
|
|
;622: specState = SPECTATOR_NOT;
|
|
ADDRLP4 16
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 623
|
|
;623: if ( !Q_stricmp( s, "red" ) || !Q_stricmp( s, "r" ) ) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $328
|
|
ARGP4
|
|
ADDRLP4 52
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 52
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $330
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $329
|
|
ARGP4
|
|
ADDRLP4 56
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 56
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $326
|
|
LABELV $330
|
|
line 624
|
|
;624: team = TEAM_RED;
|
|
ADDRLP4 4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 625
|
|
;625: } else if ( !Q_stricmp( s, "blue" ) || !Q_stricmp( s, "b" ) ) {
|
|
ADDRGP4 $327
|
|
JUMPV
|
|
LABELV $326
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $333
|
|
ARGP4
|
|
ADDRLP4 60
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 60
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $335
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $334
|
|
ARGP4
|
|
ADDRLP4 64
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $331
|
|
LABELV $335
|
|
line 626
|
|
;626: team = TEAM_BLUE;
|
|
ADDRLP4 4
|
|
CNSTI4 2
|
|
ASGNI4
|
|
line 627
|
|
;627: } else {
|
|
ADDRGP4 $332
|
|
JUMPV
|
|
LABELV $331
|
|
line 645
|
|
;628: // pick the team with the least number of players
|
|
;629: //For now, don't do this. The legalize function will set powers properly now.
|
|
;630: /*
|
|
;631: if (g_forceBasedTeams.integer)
|
|
;632: {
|
|
;633: if (ent->client->ps.fd.forceSide == FORCE_LIGHTSIDE)
|
|
;634: {
|
|
;635: team = TEAM_BLUE;
|
|
;636: }
|
|
;637: else
|
|
;638: {
|
|
;639: team = TEAM_RED;
|
|
;640: }
|
|
;641: }
|
|
;642: else
|
|
;643: {
|
|
;644: */
|
|
;645: team = PickTeam( clientNum );
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 68
|
|
ADDRGP4 PickTeam
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
ADDRLP4 68
|
|
INDIRI4
|
|
ASGNI4
|
|
line 647
|
|
;646: //}
|
|
;647: }
|
|
LABELV $332
|
|
LABELV $327
|
|
line 649
|
|
;648:
|
|
;649: if ( g_teamForceBalance.integer ) {
|
|
ADDRGP4 g_teamForceBalance+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $324
|
|
line 652
|
|
;650: int counts[TEAM_NUM_TEAMS];
|
|
;651:
|
|
;652: counts[TEAM_BLUE] = TeamCount( ent->client->ps.clientNum, TEAM_BLUE );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 84
|
|
ADDRGP4 TeamCount
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 68+8
|
|
ADDRLP4 84
|
|
INDIRI4
|
|
ASGNI4
|
|
line 653
|
|
;653: counts[TEAM_RED] = TeamCount( ent->client->ps.clientNum, TEAM_RED );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 88
|
|
ADDRGP4 TeamCount
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 68+4
|
|
ADDRLP4 88
|
|
INDIRI4
|
|
ASGNI4
|
|
line 656
|
|
;654:
|
|
;655: // We allow a spread of two
|
|
;656: if ( team == TEAM_RED && counts[TEAM_RED] - counts[TEAM_BLUE] > 1 ) {
|
|
ADDRLP4 92
|
|
CNSTI4 1
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRLP4 92
|
|
INDIRI4
|
|
NEI4 $341
|
|
ADDRLP4 68+4
|
|
INDIRI4
|
|
ADDRLP4 68+8
|
|
INDIRI4
|
|
SUBI4
|
|
ADDRLP4 92
|
|
INDIRI4
|
|
LEI4 $341
|
|
line 666
|
|
;657: //For now, don't do this. The legalize function will set powers properly now.
|
|
;658: /*
|
|
;659: if (g_forceBasedTeams.integer && ent->client->ps.fd.forceSide == FORCE_DARKSIDE)
|
|
;660: {
|
|
;661: trap_SendServerCommand( ent->client->ps.clientNum,
|
|
;662: va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "TOOMANYRED_SWITCH")) );
|
|
;663: }
|
|
;664: else
|
|
;665: */
|
|
;666: {
|
|
line 667
|
|
;667: trap_SendServerCommand( ent->client->ps.clientNum,
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $345
|
|
ARGP4
|
|
ADDRLP4 96
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 96
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 100
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 100
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 669
|
|
;668: va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "TOOMANYRED")) );
|
|
;669: }
|
|
line 670
|
|
;670: return; // ignore the request
|
|
ADDRGP4 $306
|
|
JUMPV
|
|
LABELV $341
|
|
line 672
|
|
;671: }
|
|
;672: if ( team == TEAM_BLUE && counts[TEAM_BLUE] - counts[TEAM_RED] > 1 ) {
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $324
|
|
ADDRLP4 68+8
|
|
INDIRI4
|
|
ADDRLP4 68+4
|
|
INDIRI4
|
|
SUBI4
|
|
CNSTI4 1
|
|
LEI4 $324
|
|
line 682
|
|
;673: //For now, don't do this. The legalize function will set powers properly now.
|
|
;674: /*
|
|
;675: if (g_forceBasedTeams.integer && ent->client->ps.fd.forceSide == FORCE_LIGHTSIDE)
|
|
;676: {
|
|
;677: trap_SendServerCommand( ent->client->ps.clientNum,
|
|
;678: va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "TOOMANYBLUE_SWITCH")) );
|
|
;679: }
|
|
;680: else
|
|
;681: */
|
|
;682: {
|
|
line 683
|
|
;683: trap_SendServerCommand( ent->client->ps.clientNum,
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $350
|
|
ARGP4
|
|
ADDRLP4 96
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 96
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 100
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 100
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 685
|
|
;684: va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "TOOMANYBLUE")) );
|
|
;685: }
|
|
line 686
|
|
;686: return; // ignore the request
|
|
ADDRGP4 $306
|
|
JUMPV
|
|
line 690
|
|
;687: }
|
|
;688:
|
|
;689: // It's ok, the team we are switching to has less or same number of players
|
|
;690: }
|
|
line 709
|
|
;691:
|
|
;692: //For now, don't do this. The legalize function will set powers properly now.
|
|
;693: /*
|
|
;694: if (g_forceBasedTeams.integer)
|
|
;695: {
|
|
;696: if (team == TEAM_BLUE && ent->client->ps.fd.forceSide != FORCE_LIGHTSIDE)
|
|
;697: {
|
|
;698: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "MUSTBELIGHT")) );
|
|
;699: return;
|
|
;700: }
|
|
;701: if (team == TEAM_RED && ent->client->ps.fd.forceSide != FORCE_DARKSIDE)
|
|
;702: {
|
|
;703: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "MUSTBEDARK")) );
|
|
;704: return;
|
|
;705: }
|
|
;706: }
|
|
;707: */
|
|
;708:
|
|
;709: } else {
|
|
LABELV $323
|
|
line 711
|
|
;710: // force them to spectators if there aren't any spots free
|
|
;711: team = TEAM_FREE;
|
|
ADDRLP4 4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 712
|
|
;712: }
|
|
LABELV $324
|
|
LABELV $319
|
|
LABELV $316
|
|
LABELV $313
|
|
LABELV $308
|
|
line 715
|
|
;713:
|
|
;714: // override decision if limiting the players
|
|
;715: if ( (g_gametype.integer == GT_TOURNAMENT)
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $351
|
|
ADDRGP4 level+76
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LTI4 $351
|
|
line 716
|
|
;716: && level.numNonSpectatorClients >= 2 ) {
|
|
line 717
|
|
;717: team = TEAM_SPECTATOR;
|
|
ADDRLP4 4
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 718
|
|
;718: } else if ( g_maxGameClients.integer > 0 &&
|
|
ADDRGP4 $352
|
|
JUMPV
|
|
LABELV $351
|
|
ADDRGP4 g_maxGameClients+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LEI4 $355
|
|
ADDRGP4 level+76
|
|
INDIRI4
|
|
ADDRGP4 g_maxGameClients+12
|
|
INDIRI4
|
|
LTI4 $355
|
|
line 719
|
|
;719: level.numNonSpectatorClients >= g_maxGameClients.integer ) {
|
|
line 720
|
|
;720: team = TEAM_SPECTATOR;
|
|
ADDRLP4 4
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 721
|
|
;721: }
|
|
LABELV $355
|
|
LABELV $352
|
|
line 726
|
|
;722:
|
|
;723: //
|
|
;724: // decide if we will allow the change
|
|
;725: //
|
|
;726: oldTeam = client->sess.sessionTeam;
|
|
ADDRLP4 8
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 727
|
|
;727: if ( team == oldTeam && team != TEAM_SPECTATOR ) {
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
NEI4 $360
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
EQI4 $360
|
|
line 728
|
|
;728: return;
|
|
ADDRGP4 $306
|
|
JUMPV
|
|
LABELV $360
|
|
line 736
|
|
;729: }
|
|
;730:
|
|
;731: //
|
|
;732: // execute the team change
|
|
;733: //
|
|
;734:
|
|
;735: // if the player was dead leave the body
|
|
;736: if ( client->ps.stats[STAT_HEALTH] <= 0 ) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 216
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
GTI4 $362
|
|
line 737
|
|
;737: CopyToBodyQue(ent);
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 CopyToBodyQue
|
|
CALLV
|
|
pop
|
|
line 738
|
|
;738: }
|
|
LABELV $362
|
|
line 741
|
|
;739:
|
|
;740: // he starts at 'base'
|
|
;741: client->pers.teamState.state = TEAM_BEGIN;
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1460
|
|
ADDP4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 742
|
|
;742: if ( oldTeam != TEAM_SPECTATOR ) {
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
CNSTI4 3
|
|
EQI4 $364
|
|
line 744
|
|
;743: // Kill him (makes sure he loses flags, etc)
|
|
;744: ent->flags &= ~FL_GODMODE;
|
|
ADDRLP4 56
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 472
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 56
|
|
INDIRP4
|
|
ADDRLP4 56
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 -17
|
|
BANDI4
|
|
ASGNI4
|
|
line 745
|
|
;745: ent->client->ps.stats[STAT_HEALTH] = ent->health = 0;
|
|
ADDRLP4 60
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 64
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 60
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRLP4 60
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 216
|
|
ADDP4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
ASGNI4
|
|
line 746
|
|
;746: player_die (ent, ent, ent, 100000, MOD_SUICIDE);
|
|
ADDRLP4 68
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 68
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 68
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 68
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 100000
|
|
ARGI4
|
|
CNSTI4 35
|
|
ARGI4
|
|
ADDRGP4 player_die
|
|
CALLV
|
|
pop
|
|
line 748
|
|
;747:
|
|
;748: }
|
|
LABELV $364
|
|
line 750
|
|
;749: // they go to the end of the line for tournements
|
|
;750: if ( team == TEAM_SPECTATOR ) {
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $366
|
|
line 751
|
|
;751: client->sess.spectatorTime = level.time;
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1524
|
|
ADDP4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
ASGNI4
|
|
line 752
|
|
;752: }
|
|
LABELV $366
|
|
line 754
|
|
;753:
|
|
;754: client->sess.sessionTeam = team;
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 755
|
|
;755: client->sess.spectatorState = specState;
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1528
|
|
ADDP4
|
|
ADDRLP4 16
|
|
INDIRI4
|
|
ASGNI4
|
|
line 756
|
|
;756: client->sess.spectatorClient = specClient;
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1532
|
|
ADDP4
|
|
ADDRLP4 20
|
|
INDIRI4
|
|
ASGNI4
|
|
line 758
|
|
;757:
|
|
;758: client->sess.teamLeader = qfalse;
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 1560
|
|
ADDP4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 759
|
|
;759: if ( team == TEAM_RED || team == TEAM_BLUE ) {
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
EQI4 $371
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $369
|
|
LABELV $371
|
|
line 760
|
|
;760: teamLeader = TeamLeader( team );
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 60
|
|
ADDRGP4 TeamLeader
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 24
|
|
ADDRLP4 60
|
|
INDIRI4
|
|
ASGNI4
|
|
line 762
|
|
;761: // if there is no team leader or the team leader is a bot and this client is not a bot
|
|
;762: if ( teamLeader == -1 || ( !(g_entities[clientNum].r.svFlags & SVF_BOT) && (g_entities[teamLeader].r.svFlags & SVF_BOT) ) ) {
|
|
ADDRLP4 64
|
|
ADDRLP4 24
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 -1
|
|
EQI4 $378
|
|
ADDRLP4 68
|
|
CNSTI4 828
|
|
ASGNI4
|
|
ADDRLP4 72
|
|
CNSTI4 8
|
|
ASGNI4
|
|
ADDRLP4 76
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 68
|
|
INDIRI4
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities+296+8
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 72
|
|
INDIRI4
|
|
BANDI4
|
|
ADDRLP4 76
|
|
INDIRI4
|
|
NEI4 $372
|
|
ADDRLP4 68
|
|
INDIRI4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities+296+8
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 72
|
|
INDIRI4
|
|
BANDI4
|
|
ADDRLP4 76
|
|
INDIRI4
|
|
EQI4 $372
|
|
LABELV $378
|
|
line 763
|
|
;763: SetLeader( team, clientNum );
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 SetLeader
|
|
CALLV
|
|
pop
|
|
line 764
|
|
;764: }
|
|
LABELV $372
|
|
line 765
|
|
;765: }
|
|
LABELV $369
|
|
line 767
|
|
;766: // make sure there is a team leader on the team the player came from
|
|
;767: if ( oldTeam == TEAM_RED || oldTeam == TEAM_BLUE ) {
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
CNSTI4 1
|
|
EQI4 $381
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $379
|
|
LABELV $381
|
|
line 768
|
|
;768: CheckTeamLeader( oldTeam );
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 CheckTeamLeader
|
|
CALLV
|
|
pop
|
|
line 769
|
|
;769: }
|
|
LABELV $379
|
|
line 771
|
|
;770:
|
|
;771: BroadcastTeamChange( client, oldTeam );
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 BroadcastTeamChange
|
|
CALLV
|
|
pop
|
|
line 774
|
|
;772:
|
|
;773: // get and distribute relevent paramters
|
|
;774: ClientUserinfoChanged( clientNum );
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 ClientUserinfoChanged
|
|
CALLV
|
|
pop
|
|
line 776
|
|
;775:
|
|
;776: ClientBegin( clientNum, qfalse );
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 ClientBegin
|
|
CALLV
|
|
pop
|
|
line 777
|
|
;777:}
|
|
LABELV $306
|
|
endproc SetTeam 104 20
|
|
export StopFollowing
|
|
proc StopFollowing 12 0
|
|
line 787
|
|
;778:
|
|
;779:/*
|
|
;780:=================
|
|
;781:StopFollowing
|
|
;782:
|
|
;783:If the client being followed leaves the game, or you just want to drop
|
|
;784:to free floating spectator mode
|
|
;785:=================
|
|
;786:*/
|
|
;787:void StopFollowing( gentity_t *ent ) {
|
|
line 788
|
|
;788: ent->client->ps.persistant[ PERS_TEAM ] = TEAM_SPECTATOR;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 292
|
|
ADDP4
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 789
|
|
;789: ent->client->sess.sessionTeam = TEAM_SPECTATOR;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
CNSTI4 3
|
|
ASGNI4
|
|
line 790
|
|
;790: ent->client->sess.spectatorState = SPECTATOR_FREE;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1528
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 791
|
|
;791: ent->client->ps.pm_flags &= ~PMF_FOLLOW;
|
|
ADDRLP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 12
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 -4097
|
|
BANDI4
|
|
ASGNI4
|
|
line 792
|
|
;792: ent->r.svFlags &= ~SVF_BOT;
|
|
ADDRLP4 4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 -9
|
|
BANDI4
|
|
ASGNI4
|
|
line 793
|
|
;793: ent->client->ps.clientNum = ent - g_entities;
|
|
ADDRLP4 8
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ASGNI4
|
|
line 794
|
|
;794: ent->client->ps.weapon = WP_NONE;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 148
|
|
ADDP4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 795
|
|
;795:}
|
|
LABELV $382
|
|
endproc StopFollowing 12 0
|
|
export Cmd_Team_f
|
|
proc Cmd_Team_f 1068 12
|
|
line 802
|
|
;796:
|
|
;797:/*
|
|
;798:=================
|
|
;799:Cmd_Team_f
|
|
;800:=================
|
|
;801:*/
|
|
;802:void Cmd_Team_f( gentity_t *ent ) {
|
|
line 806
|
|
;803: int oldTeam;
|
|
;804: char s[MAX_TOKEN_CHARS];
|
|
;805:
|
|
;806: if ( trap_Argc() != 2 ) {
|
|
ADDRLP4 1028
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $384
|
|
line 807
|
|
;807: oldTeam = ent->client->sess.sessionTeam;
|
|
ADDRLP4 1024
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 808
|
|
;808: switch ( oldTeam ) {
|
|
ADDRLP4 1032
|
|
ADDRLP4 1024
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $383
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 3
|
|
GTI4 $383
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 $399
|
|
ADDP4
|
|
INDIRP4
|
|
JUMPV
|
|
lit
|
|
align 4
|
|
LABELV $399
|
|
address $393
|
|
address $390
|
|
address $388
|
|
address $396
|
|
code
|
|
LABELV $388
|
|
line 810
|
|
;809: case TEAM_BLUE:
|
|
;810: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "PRINTBLUETEAM")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $389
|
|
ARGP4
|
|
ADDRLP4 1036
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 1036
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1040
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1040
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 811
|
|
;811: break;
|
|
ADDRGP4 $383
|
|
JUMPV
|
|
LABELV $390
|
|
line 813
|
|
;812: case TEAM_RED:
|
|
;813: trap_SendServerCommand( ent-g_entities, va("print \"Red team\n\"", G_GetStripEdString("SVINGAME", "PRINTREDTEAM")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $392
|
|
ARGP4
|
|
ADDRLP4 1044
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $391
|
|
ARGP4
|
|
ADDRLP4 1044
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1048
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1048
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 814
|
|
;814: break;
|
|
ADDRGP4 $383
|
|
JUMPV
|
|
LABELV $393
|
|
line 816
|
|
;815: case TEAM_FREE:
|
|
;816: trap_SendServerCommand( ent-g_entities, va("print \"Free team\n\"", G_GetStripEdString("SVINGAME", "PRINTFREETEAM")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $395
|
|
ARGP4
|
|
ADDRLP4 1052
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $394
|
|
ARGP4
|
|
ADDRLP4 1052
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1056
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1056
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 817
|
|
;817: break;
|
|
ADDRGP4 $383
|
|
JUMPV
|
|
LABELV $396
|
|
line 819
|
|
;818: case TEAM_SPECTATOR:
|
|
;819: trap_SendServerCommand( ent-g_entities, va("print \"Spectator team\n\"", G_GetStripEdString("SVINGAME", "PRINTSPECTEAM")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $398
|
|
ARGP4
|
|
ADDRLP4 1060
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $397
|
|
ARGP4
|
|
ADDRLP4 1060
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1064
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1064
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 820
|
|
;820: break;
|
|
line 822
|
|
;821: }
|
|
;822: return;
|
|
ADDRGP4 $383
|
|
JUMPV
|
|
LABELV $384
|
|
line 825
|
|
;823: }
|
|
;824:
|
|
;825: if ( ent->client->switchTeamTime > level.time ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1704
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
LEI4 $400
|
|
line 826
|
|
;826: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOSWITCH")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $403
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1036
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1036
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 827
|
|
;827: return;
|
|
ADDRGP4 $383
|
|
JUMPV
|
|
LABELV $400
|
|
line 831
|
|
;828: }
|
|
;829:
|
|
;830: // if they are playing a tournement game, count as a loss
|
|
;831: if ( (g_gametype.integer == GT_TOURNAMENT )
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $404
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $404
|
|
line 832
|
|
;832: && ent->client->sess.sessionTeam == TEAM_FREE ) {
|
|
line 833
|
|
;833: ent->client->sess.losses++;
|
|
ADDRLP4 1032
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1540
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 834
|
|
;834: }
|
|
LABELV $404
|
|
line 836
|
|
;835:
|
|
;836: trap_Argv( 1, s, sizeof( s ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 838
|
|
;837:
|
|
;838: SetTeam( ent, s );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 SetTeam
|
|
CALLV
|
|
pop
|
|
line 840
|
|
;839:
|
|
;840: ent->client->switchTeamTime = level.time + 5000;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1704
|
|
ADDP4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
CNSTI4 5000
|
|
ADDI4
|
|
ASGNI4
|
|
line 841
|
|
;841:}
|
|
LABELV $383
|
|
endproc Cmd_Team_f 1068 12
|
|
export Cmd_ForceChanged_f
|
|
proc Cmd_ForceChanged_f 2064 12
|
|
line 849
|
|
;842:
|
|
;843:/*
|
|
;844:=================
|
|
;845:Cmd_Team_f
|
|
;846:=================
|
|
;847:*/
|
|
;848:void Cmd_ForceChanged_f( gentity_t *ent )
|
|
;849:{
|
|
line 853
|
|
;850: char fpChStr[1024];
|
|
;851: const char *buf;
|
|
;852:// Cmd_Kill_f(ent);
|
|
;853: if (ent->client->sess.sessionTeam == TEAM_SPECTATOR)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $409
|
|
line 854
|
|
;854: { //if it's a spec, just make the changes now
|
|
line 857
|
|
;855: //trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "FORCEAPPLIED")) );
|
|
;856: //No longer print it, as the UI calls this a lot.
|
|
;857: WP_InitForcePowers( ent );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 WP_InitForcePowers
|
|
CALLV
|
|
pop
|
|
line 858
|
|
;858: goto argCheck;
|
|
ADDRGP4 $411
|
|
JUMPV
|
|
LABELV $409
|
|
line 861
|
|
;859: }
|
|
;860:
|
|
;861: buf = G_GetStripEdString("SVINGAME", "FORCEPOWERCHANGED");
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $412
|
|
ARGP4
|
|
ADDRLP4 1028
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 1024
|
|
ADDRLP4 1028
|
|
INDIRP4
|
|
ASGNP4
|
|
line 863
|
|
;862:
|
|
;863: strcpy(fpChStr, buf);
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 strcpy
|
|
CALLP4
|
|
pop
|
|
line 865
|
|
;864:
|
|
;865: trap_SendServerCommand( ent-g_entities, va("print \"%s%s\n\"", S_COLOR_GREEN, fpChStr) );
|
|
ADDRGP4 $413
|
|
ARGP4
|
|
ADDRGP4 $414
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1032
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 867
|
|
;866:
|
|
;867: ent->client->ps.fd.forceDoInit = 1;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1172
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
LABELV $411
|
|
line 869
|
|
;868:argCheck:
|
|
;869: if (trap_Argc() > 1)
|
|
ADDRLP4 1036
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
CNSTI4 1
|
|
LEI4 $415
|
|
line 870
|
|
;870: {
|
|
line 873
|
|
;871: char arg[MAX_TOKEN_CHARS];
|
|
;872:
|
|
;873: trap_Argv( 1, arg, sizeof( arg ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 1040
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 875
|
|
;874:
|
|
;875: if (arg && arg[0])
|
|
ADDRLP4 1040
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $417
|
|
ADDRLP4 1040
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 0
|
|
EQI4 $417
|
|
line 876
|
|
;876: { //if there's an arg, assume it's a combo team command from the UI.
|
|
line 877
|
|
;877: Cmd_Team_f(ent);
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Team_f
|
|
CALLV
|
|
pop
|
|
line 878
|
|
;878: }
|
|
LABELV $417
|
|
line 879
|
|
;879: }
|
|
LABELV $415
|
|
line 880
|
|
;880:}
|
|
LABELV $408
|
|
endproc Cmd_ForceChanged_f 2064 12
|
|
export Cmd_Follow_f
|
|
proc Cmd_Follow_f 1040 12
|
|
line 887
|
|
;881:
|
|
;882:/*
|
|
;883:=================
|
|
;884:Cmd_Follow_f
|
|
;885:=================
|
|
;886:*/
|
|
;887:void Cmd_Follow_f( gentity_t *ent ) {
|
|
line 891
|
|
;888: int i;
|
|
;889: char arg[MAX_TOKEN_CHARS];
|
|
;890:
|
|
;891: if ( trap_Argc() != 2 ) {
|
|
ADDRLP4 1028
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $420
|
|
line 892
|
|
;892: if ( ent->client->sess.spectatorState == SPECTATOR_FOLLOW ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1528
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $419
|
|
line 893
|
|
;893: StopFollowing( ent );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 StopFollowing
|
|
CALLV
|
|
pop
|
|
line 894
|
|
;894: }
|
|
line 895
|
|
;895: return;
|
|
ADDRGP4 $419
|
|
JUMPV
|
|
LABELV $420
|
|
line 898
|
|
;896: }
|
|
;897:
|
|
;898: trap_Argv( 1, arg, sizeof( arg ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 899
|
|
;899: i = ClientNumberFromString( ent, arg );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
ADDRGP4 ClientNumberFromString
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
ASGNI4
|
|
line 900
|
|
;900: if ( i == -1 ) {
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 -1
|
|
NEI4 $424
|
|
line 901
|
|
;901: return;
|
|
ADDRGP4 $419
|
|
JUMPV
|
|
LABELV $424
|
|
line 905
|
|
;902: }
|
|
;903:
|
|
;904: // can't follow self
|
|
;905: if ( &level.clients[ i ] == ent->client ) {
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CVPU4 4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
NEU4 $426
|
|
line 906
|
|
;906: return;
|
|
ADDRGP4 $419
|
|
JUMPV
|
|
LABELV $426
|
|
line 910
|
|
;907: }
|
|
;908:
|
|
;909: // can't follow another spectator
|
|
;910: if ( level.clients[ i ].sess.sessionTeam == TEAM_SPECTATOR ) {
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $428
|
|
line 911
|
|
;911: return;
|
|
ADDRGP4 $419
|
|
JUMPV
|
|
LABELV $428
|
|
line 915
|
|
;912: }
|
|
;913:
|
|
;914: // if they are playing a tournement game, count as a loss
|
|
;915: if ( (g_gametype.integer == GT_TOURNAMENT )
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $430
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $430
|
|
line 916
|
|
;916: && ent->client->sess.sessionTeam == TEAM_FREE ) {
|
|
line 917
|
|
;917: ent->client->sess.losses++;
|
|
ADDRLP4 1036
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1540
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 1036
|
|
INDIRP4
|
|
ADDRLP4 1036
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 918
|
|
;918: }
|
|
LABELV $430
|
|
line 921
|
|
;919:
|
|
;920: // first set them to spectator
|
|
;921: if ( ent->client->sess.sessionTeam != TEAM_SPECTATOR ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
EQI4 $433
|
|
line 922
|
|
;922: SetTeam( ent, "spectator" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $320
|
|
ARGP4
|
|
ADDRGP4 SetTeam
|
|
CALLV
|
|
pop
|
|
line 923
|
|
;923: }
|
|
LABELV $433
|
|
line 925
|
|
;924:
|
|
;925: ent->client->sess.spectatorState = SPECTATOR_FOLLOW;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1528
|
|
ADDP4
|
|
CNSTI4 2
|
|
ASGNI4
|
|
line 926
|
|
;926: ent->client->sess.spectatorClient = i;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1532
|
|
ADDP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ASGNI4
|
|
line 927
|
|
;927:}
|
|
LABELV $419
|
|
endproc Cmd_Follow_f 1040 12
|
|
export Cmd_FollowCycle_f
|
|
proc Cmd_FollowCycle_f 12 8
|
|
line 934
|
|
;928:
|
|
;929:/*
|
|
;930:=================
|
|
;931:Cmd_FollowCycle_f
|
|
;932:=================
|
|
;933:*/
|
|
;934:void Cmd_FollowCycle_f( gentity_t *ent, int dir ) {
|
|
line 939
|
|
;935: int clientnum;
|
|
;936: int original;
|
|
;937:
|
|
;938: // if they are playing a tournement game, count as a loss
|
|
;939: if ( (g_gametype.integer == GT_TOURNAMENT )
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $436
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $436
|
|
line 940
|
|
;940: && ent->client->sess.sessionTeam == TEAM_FREE ) {
|
|
line 941
|
|
;941: ent->client->sess.losses++;
|
|
ADDRLP4 8
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1540
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 942
|
|
;942: }
|
|
LABELV $436
|
|
line 944
|
|
;943: // first set them to spectator
|
|
;944: if ( ent->client->sess.spectatorState == SPECTATOR_NOT ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1528
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $439
|
|
line 945
|
|
;945: SetTeam( ent, "spectator" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 $320
|
|
ARGP4
|
|
ADDRGP4 SetTeam
|
|
CALLV
|
|
pop
|
|
line 946
|
|
;946: }
|
|
LABELV $439
|
|
line 948
|
|
;947:
|
|
;948: if ( dir != 1 && dir != -1 ) {
|
|
ADDRLP4 8
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
CNSTI4 1
|
|
EQI4 $441
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
CNSTI4 -1
|
|
EQI4 $441
|
|
line 949
|
|
;949: G_Error( "Cmd_FollowCycle_f: bad dir %i", dir );
|
|
ADDRGP4 $443
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Error
|
|
CALLV
|
|
pop
|
|
line 950
|
|
;950: }
|
|
LABELV $441
|
|
line 952
|
|
;951:
|
|
;952: clientnum = ent->client->sess.spectatorClient;
|
|
ADDRLP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1532
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 953
|
|
;953: original = clientnum;
|
|
ADDRLP4 4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ASGNI4
|
|
LABELV $444
|
|
line 954
|
|
;954: do {
|
|
line 955
|
|
;955: clientnum += dir;
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ADDI4
|
|
ASGNI4
|
|
line 956
|
|
;956: if ( clientnum >= level.maxclients ) {
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $447
|
|
line 957
|
|
;957: clientnum = 0;
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 958
|
|
;958: }
|
|
LABELV $447
|
|
line 959
|
|
;959: if ( clientnum < 0 ) {
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 0
|
|
GEI4 $450
|
|
line 960
|
|
;960: clientnum = level.maxclients - 1;
|
|
ADDRLP4 0
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
CNSTI4 1
|
|
SUBI4
|
|
ASGNI4
|
|
line 961
|
|
;961: }
|
|
LABELV $450
|
|
line 964
|
|
;962:
|
|
;963: // can only follow connected clients
|
|
;964: if ( level.clients[ clientnum ].pers.connected != CON_CONNECTED ) {
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1368
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $453
|
|
line 965
|
|
;965: continue;
|
|
ADDRGP4 $445
|
|
JUMPV
|
|
LABELV $453
|
|
line 969
|
|
;966: }
|
|
;967:
|
|
;968: // can't follow another spectator
|
|
;969: if ( level.clients[ clientnum ].sess.sessionTeam == TEAM_SPECTATOR ) {
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $455
|
|
line 970
|
|
;970: continue;
|
|
ADDRGP4 $445
|
|
JUMPV
|
|
LABELV $455
|
|
line 974
|
|
;971: }
|
|
;972:
|
|
;973: // this is good, we can use it
|
|
;974: ent->client->sess.spectatorClient = clientnum;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1532
|
|
ADDP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ASGNI4
|
|
line 975
|
|
;975: ent->client->sess.spectatorState = SPECTATOR_FOLLOW;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1528
|
|
ADDP4
|
|
CNSTI4 2
|
|
ASGNI4
|
|
line 976
|
|
;976: return;
|
|
ADDRGP4 $435
|
|
JUMPV
|
|
LABELV $445
|
|
line 977
|
|
;977: } while ( clientnum != original );
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
NEI4 $444
|
|
line 980
|
|
;978:
|
|
;979: // leave it where it was
|
|
;980:}
|
|
LABELV $435
|
|
endproc Cmd_FollowCycle_f 12 8
|
|
proc G_SayTo 24 24
|
|
line 989
|
|
;981:
|
|
;982:
|
|
;983:/*
|
|
;984:==================
|
|
;985:G_Say
|
|
;986:==================
|
|
;987:*/
|
|
;988:
|
|
;989:static void G_SayTo( gentity_t *ent, gentity_t *other, int mode, int color, const char *name, const char *message ) {
|
|
line 990
|
|
;990: if (!other) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $458
|
|
line 991
|
|
;991: return;
|
|
ADDRGP4 $457
|
|
JUMPV
|
|
LABELV $458
|
|
line 993
|
|
;992: }
|
|
;993: if (!other->inuse) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CNSTI4 412
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $460
|
|
line 994
|
|
;994: return;
|
|
ADDRGP4 $457
|
|
JUMPV
|
|
LABELV $460
|
|
line 996
|
|
;995: }
|
|
;996: if (!other->client) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $462
|
|
line 997
|
|
;997: return;
|
|
ADDRGP4 $457
|
|
JUMPV
|
|
LABELV $462
|
|
line 999
|
|
;998: }
|
|
;999: if ( other->client->pers.connected != CON_CONNECTED ) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1368
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $464
|
|
line 1000
|
|
;1000: return;
|
|
ADDRGP4 $457
|
|
JUMPV
|
|
LABELV $464
|
|
line 1002
|
|
;1001: }
|
|
;1002: if ( mode == SAY_TEAM && !OnSameTeam(ent, other) ) {
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $466
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ADDRGP4 OnSameTeam
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $466
|
|
line 1003
|
|
;1003: return;
|
|
ADDRGP4 $457
|
|
JUMPV
|
|
LABELV $466
|
|
line 1006
|
|
;1004: }
|
|
;1005: // no chatting to players in tournements
|
|
;1006: if ( (g_gametype.integer == GT_TOURNAMENT )
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $468
|
|
ADDRLP4 4
|
|
CNSTI4 408
|
|
ASGNI4
|
|
ADDRLP4 8
|
|
CNSTI4 1520
|
|
ASGNI4
|
|
ADDRLP4 12
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
NEI4 $468
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
EQI4 $468
|
|
line 1008
|
|
;1007: && other->client->sess.sessionTeam == TEAM_FREE
|
|
;1008: && ent->client->sess.sessionTeam != TEAM_FREE ) {
|
|
line 1009
|
|
;1009: return;
|
|
ADDRGP4 $457
|
|
JUMPV
|
|
LABELV $468
|
|
line 1012
|
|
;1010: }
|
|
;1011:
|
|
;1012: trap_SendServerCommand( other-g_entities, va("%s \"%s%c%c%s\"",
|
|
ADDRGP4 $471
|
|
ARGP4
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $475
|
|
ADDRLP4 16
|
|
ADDRGP4 $472
|
|
ASGNP4
|
|
ADDRGP4 $476
|
|
JUMPV
|
|
LABELV $475
|
|
ADDRLP4 16
|
|
ADDRGP4 $473
|
|
ASGNP4
|
|
LABELV $476
|
|
ADDRLP4 16
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 16
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 94
|
|
ARGI4
|
|
ADDRFP4 12
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRFP4 20
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 20
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 20
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1015
|
|
;1013: mode == SAY_TEAM ? "tchat" : "chat",
|
|
;1014: name, Q_COLOR_ESCAPE, color, message));
|
|
;1015:}
|
|
LABELV $457
|
|
endproc G_SayTo 24 24
|
|
export G_Say
|
|
proc G_Say 320 28
|
|
line 1019
|
|
;1016:
|
|
;1017:#define EC "\x19"
|
|
;1018:
|
|
;1019:void G_Say( gentity_t *ent, gentity_t *target, int mode, const char *chatText ) {
|
|
line 1028
|
|
;1020: int j;
|
|
;1021: gentity_t *other;
|
|
;1022: int color;
|
|
;1023: char name[64];
|
|
;1024: // don't let text be too long for malicious reasons
|
|
;1025: char text[MAX_SAY_TEXT];
|
|
;1026: char location[64];
|
|
;1027:
|
|
;1028: if ( g_gametype.integer < GT_TEAM && mode == SAY_TEAM ) {
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 5
|
|
GEI4 $478
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $478
|
|
line 1029
|
|
;1029: mode = SAY_ALL;
|
|
ADDRFP4 8
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 1030
|
|
;1030: }
|
|
LABELV $478
|
|
line 1032
|
|
;1031:
|
|
;1032: switch ( mode ) {
|
|
ADDRLP4 292
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRLP4 292
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $483
|
|
ADDRLP4 292
|
|
INDIRI4
|
|
CNSTI4 1
|
|
EQI4 $486
|
|
ADDRLP4 292
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $492
|
|
ADDRGP4 $481
|
|
JUMPV
|
|
LABELV $481
|
|
LABELV $483
|
|
line 1035
|
|
;1033: default:
|
|
;1034: case SAY_ALL:
|
|
;1035: G_LogPrintf( "say: %s: %s\n", ent->client->pers.netname, chatText );
|
|
ADDRGP4 $484
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRFP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_LogPrintf
|
|
CALLV
|
|
pop
|
|
line 1036
|
|
;1036: Com_sprintf (name, sizeof(name), "%s%c%c"EC": ", ent->client->pers.netname, Q_COLOR_ESCAPE, COLOR_WHITE );
|
|
ADDRLP4 158
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRGP4 $485
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 94
|
|
ARGI4
|
|
CNSTI4 55
|
|
ARGI4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1037
|
|
;1037: color = COLOR_GREEN;
|
|
ADDRLP4 224
|
|
CNSTI4 50
|
|
ASGNI4
|
|
line 1038
|
|
;1038: break;
|
|
ADDRGP4 $482
|
|
JUMPV
|
|
LABELV $486
|
|
line 1040
|
|
;1039: case SAY_TEAM:
|
|
;1040: G_LogPrintf( "sayteam: %s: %s\n", ent->client->pers.netname, chatText );
|
|
ADDRGP4 $487
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRFP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_LogPrintf
|
|
CALLV
|
|
pop
|
|
line 1041
|
|
;1041: if (Team_GetLocationMsg(ent, location, sizeof(location)))
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 228
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRLP4 296
|
|
ADDRGP4 Team_GetLocationMsg
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 296
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $488
|
|
line 1042
|
|
;1042: Com_sprintf (name, sizeof(name), EC"(%s%c%c"EC") (%s)"EC": ",
|
|
ADDRLP4 158
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRGP4 $490
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 94
|
|
ARGI4
|
|
CNSTI4 55
|
|
ARGI4
|
|
ADDRLP4 228
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $489
|
|
JUMPV
|
|
LABELV $488
|
|
line 1045
|
|
;1043: ent->client->pers.netname, Q_COLOR_ESCAPE, COLOR_WHITE, location);
|
|
;1044: else
|
|
;1045: Com_sprintf (name, sizeof(name), EC"(%s%c%c"EC")"EC": ",
|
|
ADDRLP4 158
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRGP4 $491
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 94
|
|
ARGI4
|
|
CNSTI4 55
|
|
ARGI4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
LABELV $489
|
|
line 1047
|
|
;1046: ent->client->pers.netname, Q_COLOR_ESCAPE, COLOR_WHITE );
|
|
;1047: color = COLOR_CYAN;
|
|
ADDRLP4 224
|
|
CNSTI4 53
|
|
ASGNI4
|
|
line 1048
|
|
;1048: break;
|
|
ADDRGP4 $482
|
|
JUMPV
|
|
LABELV $492
|
|
line 1050
|
|
;1049: case SAY_TELL:
|
|
;1050: if (target && g_gametype.integer >= GT_TEAM &&
|
|
ADDRLP4 300
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 300
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $493
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 5
|
|
LTI4 $493
|
|
ADDRLP4 304
|
|
CNSTI4 408
|
|
ASGNI4
|
|
ADDRLP4 308
|
|
CNSTI4 1520
|
|
ASGNI4
|
|
ADDRLP4 312
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 300
|
|
INDIRP4
|
|
ADDRLP4 304
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 308
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 312
|
|
INDIRP4
|
|
ADDRLP4 304
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 308
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRI4
|
|
NEI4 $493
|
|
ADDRLP4 312
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 228
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRLP4 316
|
|
ADDRGP4 Team_GetLocationMsg
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 316
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $493
|
|
line 1053
|
|
;1051: target->client->sess.sessionTeam == ent->client->sess.sessionTeam &&
|
|
;1052: Team_GetLocationMsg(ent, location, sizeof(location)))
|
|
;1053: Com_sprintf (name, sizeof(name), EC"[%s%c%c"EC"] (%s)"EC": ", ent->client->pers.netname, Q_COLOR_ESCAPE, COLOR_WHITE, location );
|
|
ADDRLP4 158
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRGP4 $496
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 94
|
|
ARGI4
|
|
CNSTI4 55
|
|
ARGI4
|
|
ADDRLP4 228
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $494
|
|
JUMPV
|
|
LABELV $493
|
|
line 1055
|
|
;1054: else
|
|
;1055: Com_sprintf (name, sizeof(name), EC"[%s%c%c"EC"]"EC": ", ent->client->pers.netname, Q_COLOR_ESCAPE, COLOR_WHITE );
|
|
ADDRLP4 158
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRGP4 $497
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 94
|
|
ARGI4
|
|
CNSTI4 55
|
|
ARGI4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
LABELV $494
|
|
line 1056
|
|
;1056: color = COLOR_MAGENTA;
|
|
ADDRLP4 224
|
|
CNSTI4 54
|
|
ASGNI4
|
|
line 1057
|
|
;1057: break;
|
|
LABELV $482
|
|
line 1060
|
|
;1058: }
|
|
;1059:
|
|
;1060: Q_strncpyz( text, chatText, sizeof(text) );
|
|
ADDRLP4 8
|
|
ARGP4
|
|
ADDRFP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 150
|
|
ARGI4
|
|
ADDRGP4 Q_strncpyz
|
|
CALLV
|
|
pop
|
|
line 1062
|
|
;1061:
|
|
;1062: if ( target ) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $498
|
|
line 1063
|
|
;1063: G_SayTo( ent, target, mode, color, name, text );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 224
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 158
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ARGP4
|
|
ADDRGP4 G_SayTo
|
|
CALLV
|
|
pop
|
|
line 1064
|
|
;1064: return;
|
|
ADDRGP4 $477
|
|
JUMPV
|
|
LABELV $498
|
|
line 1068
|
|
;1065: }
|
|
;1066:
|
|
;1067: // echo the text to the console
|
|
;1068: if ( g_dedicated.integer ) {
|
|
ADDRGP4 g_dedicated+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $500
|
|
line 1069
|
|
;1069: G_Printf( "%s%s\n", name, text);
|
|
ADDRGP4 $503
|
|
ARGP4
|
|
ADDRLP4 158
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ARGP4
|
|
ADDRGP4 G_Printf
|
|
CALLV
|
|
pop
|
|
line 1070
|
|
;1070: }
|
|
LABELV $500
|
|
line 1073
|
|
;1071:
|
|
;1072: // send it to all the apropriate clients
|
|
;1073: for (j = 0; j < level.maxclients; j++) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $507
|
|
JUMPV
|
|
LABELV $504
|
|
line 1074
|
|
;1074: other = &g_entities[j];
|
|
ADDRLP4 4
|
|
CNSTI4 828
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 1075
|
|
;1075: G_SayTo( ent, other, mode, color, name, text );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 224
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 158
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ARGP4
|
|
ADDRGP4 G_SayTo
|
|
CALLV
|
|
pop
|
|
line 1076
|
|
;1076: }
|
|
LABELV $505
|
|
line 1073
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $507
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $504
|
|
line 1077
|
|
;1077:}
|
|
LABELV $477
|
|
endproc G_Say 320 28
|
|
proc Cmd_Say_f 12 16
|
|
line 1085
|
|
;1078:
|
|
;1079:
|
|
;1080:/*
|
|
;1081:==================
|
|
;1082:Cmd_Say_f
|
|
;1083:==================
|
|
;1084:*/
|
|
;1085:static void Cmd_Say_f( gentity_t *ent, int mode, qboolean arg0 ) {
|
|
line 1088
|
|
;1086: char *p;
|
|
;1087:
|
|
;1088: if ( trap_Argc () < 2 && !arg0 ) {
|
|
ADDRLP4 4
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
GEI4 $510
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $510
|
|
line 1089
|
|
;1089: return;
|
|
ADDRGP4 $509
|
|
JUMPV
|
|
LABELV $510
|
|
line 1092
|
|
;1090: }
|
|
;1091:
|
|
;1092: if (arg0)
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $512
|
|
line 1093
|
|
;1093: {
|
|
line 1094
|
|
;1094: p = ConcatArgs( 0 );
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRLP4 8
|
|
ADDRGP4 ConcatArgs
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ASGNP4
|
|
line 1095
|
|
;1095: }
|
|
ADDRGP4 $513
|
|
JUMPV
|
|
LABELV $512
|
|
line 1097
|
|
;1096: else
|
|
;1097: {
|
|
line 1098
|
|
;1098: p = ConcatArgs( 1 );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 8
|
|
ADDRGP4 ConcatArgs
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ASGNP4
|
|
line 1099
|
|
;1099: }
|
|
LABELV $513
|
|
line 1101
|
|
;1100:
|
|
;1101: G_Say( ent, NULL, mode, p );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTP4 0
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_Say
|
|
CALLV
|
|
pop
|
|
line 1102
|
|
;1102:}
|
|
LABELV $509
|
|
endproc Cmd_Say_f 12 16
|
|
proc Cmd_Tell_f 1076 16
|
|
line 1109
|
|
;1103:
|
|
;1104:/*
|
|
;1105:==================
|
|
;1106:Cmd_Tell_f
|
|
;1107:==================
|
|
;1108:*/
|
|
;1109:static void Cmd_Tell_f( gentity_t *ent ) {
|
|
line 1115
|
|
;1110: int targetNum;
|
|
;1111: gentity_t *target;
|
|
;1112: char *p;
|
|
;1113: char arg[MAX_TOKEN_CHARS];
|
|
;1114:
|
|
;1115: if ( trap_Argc () < 2 ) {
|
|
ADDRLP4 1036
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
CNSTI4 2
|
|
GEI4 $515
|
|
line 1116
|
|
;1116: return;
|
|
ADDRGP4 $514
|
|
JUMPV
|
|
LABELV $515
|
|
line 1119
|
|
;1117: }
|
|
;1118:
|
|
;1119: trap_Argv( 1, arg, sizeof( arg ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 12
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1120
|
|
;1120: targetNum = atoi( arg );
|
|
ADDRLP4 12
|
|
ARGP4
|
|
ADDRLP4 1040
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
ADDRLP4 1040
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1121
|
|
;1121: if ( targetNum < 0 || targetNum >= level.maxclients ) {
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $520
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $517
|
|
LABELV $520
|
|
line 1122
|
|
;1122: return;
|
|
ADDRGP4 $514
|
|
JUMPV
|
|
LABELV $517
|
|
line 1125
|
|
;1123: }
|
|
;1124:
|
|
;1125: target = &g_entities[targetNum];
|
|
ADDRLP4 0
|
|
CNSTI4 828
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 1126
|
|
;1126: if ( !target || !target->inuse || !target->client ) {
|
|
ADDRLP4 1052
|
|
CNSTU4 0
|
|
ASGNU4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 1052
|
|
INDIRU4
|
|
EQU4 $524
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 412
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $524
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 1052
|
|
INDIRU4
|
|
NEU4 $521
|
|
LABELV $524
|
|
line 1127
|
|
;1127: return;
|
|
ADDRGP4 $514
|
|
JUMPV
|
|
LABELV $521
|
|
line 1130
|
|
;1128: }
|
|
;1129:
|
|
;1130: p = ConcatArgs( 2 );
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 1056
|
|
ADDRGP4 ConcatArgs
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
ADDRLP4 1056
|
|
INDIRP4
|
|
ASGNP4
|
|
line 1132
|
|
;1131:
|
|
;1132: G_LogPrintf( "tell: %s to %s: %s\n", ent->client->pers.netname, target->client->pers.netname, p );
|
|
ADDRGP4 $525
|
|
ARGP4
|
|
ADDRLP4 1060
|
|
CNSTI4 408
|
|
ASGNI4
|
|
ADDRLP4 1064
|
|
CNSTI4 1416
|
|
ASGNI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ADDRLP4 1060
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 1064
|
|
INDIRI4
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ADDRLP4 1060
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 1064
|
|
INDIRI4
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_LogPrintf
|
|
CALLV
|
|
pop
|
|
line 1133
|
|
;1133: G_Say( ent, target, SAY_TELL, p );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_Say
|
|
CALLV
|
|
pop
|
|
line 1136
|
|
;1134: // don't tell to the player self if it was already directed to this player
|
|
;1135: // also don't send the chat back to a bot
|
|
;1136: if ( ent != target && !(ent->r.svFlags & SVF_BOT)) {
|
|
ADDRLP4 1068
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1068
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
EQU4 $526
|
|
ADDRLP4 1068
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $526
|
|
line 1137
|
|
;1137: G_Say( ent, ent, SAY_TELL, p );
|
|
ADDRLP4 1072
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1072
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1072
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_Say
|
|
CALLV
|
|
pop
|
|
line 1138
|
|
;1138: }
|
|
LABELV $526
|
|
line 1139
|
|
;1139:}
|
|
LABELV $514
|
|
endproc Cmd_Tell_f 1076 16
|
|
proc G_VoiceTo 16 24
|
|
line 1142
|
|
;1140:
|
|
;1141:
|
|
;1142:static void G_VoiceTo( gentity_t *ent, gentity_t *other, int mode, const char *id, qboolean voiceonly ) {
|
|
line 1146
|
|
;1143: int color;
|
|
;1144: char *cmd;
|
|
;1145:
|
|
;1146: if (!other) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $529
|
|
line 1147
|
|
;1147: return;
|
|
ADDRGP4 $528
|
|
JUMPV
|
|
LABELV $529
|
|
line 1149
|
|
;1148: }
|
|
;1149: if (!other->inuse) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CNSTI4 412
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $531
|
|
line 1150
|
|
;1150: return;
|
|
ADDRGP4 $528
|
|
JUMPV
|
|
LABELV $531
|
|
line 1152
|
|
;1151: }
|
|
;1152: if (!other->client) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $533
|
|
line 1153
|
|
;1153: return;
|
|
ADDRGP4 $528
|
|
JUMPV
|
|
LABELV $533
|
|
line 1155
|
|
;1154: }
|
|
;1155: if ( mode == SAY_TEAM && !OnSameTeam(ent, other) ) {
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $535
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ADDRGP4 OnSameTeam
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $535
|
|
line 1156
|
|
;1156: return;
|
|
ADDRGP4 $528
|
|
JUMPV
|
|
LABELV $535
|
|
line 1159
|
|
;1157: }
|
|
;1158: // no chatting to players in tournements
|
|
;1159: if ( (g_gametype.integer == GT_TOURNAMENT )) {
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $537
|
|
line 1160
|
|
;1160: return;
|
|
ADDRGP4 $528
|
|
JUMPV
|
|
LABELV $537
|
|
line 1163
|
|
;1161: }
|
|
;1162:
|
|
;1163: if (mode == SAY_TEAM) {
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $540
|
|
line 1164
|
|
;1164: color = COLOR_CYAN;
|
|
ADDRLP4 0
|
|
CNSTI4 53
|
|
ASGNI4
|
|
line 1165
|
|
;1165: cmd = "vtchat";
|
|
ADDRLP4 4
|
|
ADDRGP4 $542
|
|
ASGNP4
|
|
line 1166
|
|
;1166: }
|
|
ADDRGP4 $541
|
|
JUMPV
|
|
LABELV $540
|
|
line 1167
|
|
;1167: else if (mode == SAY_TELL) {
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $543
|
|
line 1168
|
|
;1168: color = COLOR_MAGENTA;
|
|
ADDRLP4 0
|
|
CNSTI4 54
|
|
ASGNI4
|
|
line 1169
|
|
;1169: cmd = "vtell";
|
|
ADDRLP4 4
|
|
ADDRGP4 $545
|
|
ASGNP4
|
|
line 1170
|
|
;1170: }
|
|
ADDRGP4 $544
|
|
JUMPV
|
|
LABELV $543
|
|
line 1171
|
|
;1171: else {
|
|
line 1172
|
|
;1172: color = COLOR_GREEN;
|
|
ADDRLP4 0
|
|
CNSTI4 50
|
|
ASGNI4
|
|
line 1173
|
|
;1173: cmd = "vchat";
|
|
ADDRLP4 4
|
|
ADDRGP4 $546
|
|
ASGNP4
|
|
line 1174
|
|
;1174: }
|
|
LABELV $544
|
|
LABELV $541
|
|
line 1176
|
|
;1175:
|
|
;1176: trap_SendServerCommand( other-g_entities, va("%s %d %d %d %s", cmd, voiceonly, ent->s.number, color, id));
|
|
ADDRGP4 $547
|
|
ARGP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 16
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRFP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 12
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1177
|
|
;1177:}
|
|
LABELV $528
|
|
endproc G_VoiceTo 16 24
|
|
export G_Voice
|
|
proc G_Voice 8 20
|
|
line 1179
|
|
;1178:
|
|
;1179:void G_Voice( gentity_t *ent, gentity_t *target, int mode, const char *id, qboolean voiceonly ) {
|
|
line 1183
|
|
;1180: int j;
|
|
;1181: gentity_t *other;
|
|
;1182:
|
|
;1183: if ( g_gametype.integer < GT_TEAM && mode == SAY_TEAM ) {
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 5
|
|
GEI4 $549
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $549
|
|
line 1184
|
|
;1184: mode = SAY_ALL;
|
|
ADDRFP4 8
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 1185
|
|
;1185: }
|
|
LABELV $549
|
|
line 1187
|
|
;1186:
|
|
;1187: if ( target ) {
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $552
|
|
line 1188
|
|
;1188: G_VoiceTo( ent, target, mode, id, voiceonly );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRFP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 16
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_VoiceTo
|
|
CALLV
|
|
pop
|
|
line 1189
|
|
;1189: return;
|
|
ADDRGP4 $548
|
|
JUMPV
|
|
LABELV $552
|
|
line 1193
|
|
;1190: }
|
|
;1191:
|
|
;1192: // echo the text to the console
|
|
;1193: if ( g_dedicated.integer ) {
|
|
ADDRGP4 g_dedicated+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $554
|
|
line 1194
|
|
;1194: G_Printf( "voice: %s %s\n", ent->client->pers.netname, id);
|
|
ADDRGP4 $557
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRFP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_Printf
|
|
CALLV
|
|
pop
|
|
line 1195
|
|
;1195: }
|
|
LABELV $554
|
|
line 1198
|
|
;1196:
|
|
;1197: // send it to all the apropriate clients
|
|
;1198: for (j = 0; j < level.maxclients; j++) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $561
|
|
JUMPV
|
|
LABELV $558
|
|
line 1199
|
|
;1199: other = &g_entities[j];
|
|
ADDRLP4 4
|
|
CNSTI4 828
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 1200
|
|
;1200: G_VoiceTo( ent, other, mode, id, voiceonly );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRFP4 12
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 16
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_VoiceTo
|
|
CALLV
|
|
pop
|
|
line 1201
|
|
;1201: }
|
|
LABELV $559
|
|
line 1198
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $561
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $558
|
|
line 1202
|
|
;1202:}
|
|
LABELV $548
|
|
endproc G_Voice 8 20
|
|
proc Cmd_Voice_f 12 20
|
|
line 1209
|
|
;1203:
|
|
;1204:/*
|
|
;1205:==================
|
|
;1206:Cmd_Voice_f
|
|
;1207:==================
|
|
;1208:*/
|
|
;1209:static void Cmd_Voice_f( gentity_t *ent, int mode, qboolean arg0, qboolean voiceonly ) {
|
|
line 1212
|
|
;1210: char *p;
|
|
;1211:
|
|
;1212: if ( trap_Argc () < 2 && !arg0 ) {
|
|
ADDRLP4 4
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
GEI4 $564
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $564
|
|
line 1213
|
|
;1213: return;
|
|
ADDRGP4 $563
|
|
JUMPV
|
|
LABELV $564
|
|
line 1216
|
|
;1214: }
|
|
;1215:
|
|
;1216: if (arg0)
|
|
ADDRFP4 8
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $566
|
|
line 1217
|
|
;1217: {
|
|
line 1218
|
|
;1218: p = ConcatArgs( 0 );
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRLP4 8
|
|
ADDRGP4 ConcatArgs
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ASGNP4
|
|
line 1219
|
|
;1219: }
|
|
ADDRGP4 $567
|
|
JUMPV
|
|
LABELV $566
|
|
line 1221
|
|
;1220: else
|
|
;1221: {
|
|
line 1222
|
|
;1222: p = ConcatArgs( 1 );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 8
|
|
ADDRGP4 ConcatArgs
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ASGNP4
|
|
line 1223
|
|
;1223: }
|
|
LABELV $567
|
|
line 1225
|
|
;1224:
|
|
;1225: G_Voice( ent, NULL, mode, p, voiceonly );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTP4 0
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 12
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1226
|
|
;1226:}
|
|
LABELV $563
|
|
endproc Cmd_Voice_f 12 20
|
|
proc Cmd_VoiceTell_f 1076 20
|
|
line 1233
|
|
;1227:
|
|
;1228:/*
|
|
;1229:==================
|
|
;1230:Cmd_VoiceTell_f
|
|
;1231:==================
|
|
;1232:*/
|
|
;1233:static void Cmd_VoiceTell_f( gentity_t *ent, qboolean voiceonly ) {
|
|
line 1239
|
|
;1234: int targetNum;
|
|
;1235: gentity_t *target;
|
|
;1236: char *id;
|
|
;1237: char arg[MAX_TOKEN_CHARS];
|
|
;1238:
|
|
;1239: if ( trap_Argc () < 2 ) {
|
|
ADDRLP4 1036
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
CNSTI4 2
|
|
GEI4 $569
|
|
line 1240
|
|
;1240: return;
|
|
ADDRGP4 $568
|
|
JUMPV
|
|
LABELV $569
|
|
line 1243
|
|
;1241: }
|
|
;1242:
|
|
;1243: trap_Argv( 1, arg, sizeof( arg ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 12
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1244
|
|
;1244: targetNum = atoi( arg );
|
|
ADDRLP4 12
|
|
ARGP4
|
|
ADDRLP4 1040
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
ADDRLP4 1040
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1245
|
|
;1245: if ( targetNum < 0 || targetNum >= level.maxclients ) {
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $574
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $571
|
|
LABELV $574
|
|
line 1246
|
|
;1246: return;
|
|
ADDRGP4 $568
|
|
JUMPV
|
|
LABELV $571
|
|
line 1249
|
|
;1247: }
|
|
;1248:
|
|
;1249: target = &g_entities[targetNum];
|
|
ADDRLP4 0
|
|
CNSTI4 828
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 1250
|
|
;1250: if ( !target || !target->inuse || !target->client ) {
|
|
ADDRLP4 1052
|
|
CNSTU4 0
|
|
ASGNU4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 1052
|
|
INDIRU4
|
|
EQU4 $578
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 412
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $578
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 1052
|
|
INDIRU4
|
|
NEU4 $575
|
|
LABELV $578
|
|
line 1251
|
|
;1251: return;
|
|
ADDRGP4 $568
|
|
JUMPV
|
|
LABELV $575
|
|
line 1254
|
|
;1252: }
|
|
;1253:
|
|
;1254: id = ConcatArgs( 2 );
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 1056
|
|
ADDRGP4 ConcatArgs
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
ADDRLP4 1056
|
|
INDIRP4
|
|
ASGNP4
|
|
line 1256
|
|
;1255:
|
|
;1256: G_LogPrintf( "vtell: %s to %s: %s\n", ent->client->pers.netname, target->client->pers.netname, id );
|
|
ADDRGP4 $579
|
|
ARGP4
|
|
ADDRLP4 1060
|
|
CNSTI4 408
|
|
ASGNI4
|
|
ADDRLP4 1064
|
|
CNSTI4 1416
|
|
ASGNI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ADDRLP4 1060
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 1064
|
|
INDIRI4
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ADDRLP4 1060
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 1064
|
|
INDIRI4
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_LogPrintf
|
|
CALLV
|
|
pop
|
|
line 1257
|
|
;1257: G_Voice( ent, target, SAY_TELL, id, voiceonly );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1260
|
|
;1258: // don't tell to the player self if it was already directed to this player
|
|
;1259: // also don't send the chat back to a bot
|
|
;1260: if ( ent != target && !(ent->r.svFlags & SVF_BOT)) {
|
|
ADDRLP4 1068
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1068
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
EQU4 $580
|
|
ADDRLP4 1068
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $580
|
|
line 1261
|
|
;1261: G_Voice( ent, ent, SAY_TELL, id, voiceonly );
|
|
ADDRLP4 1072
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1072
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1072
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1262
|
|
;1262: }
|
|
LABELV $580
|
|
line 1263
|
|
;1263:}
|
|
LABELV $568
|
|
endproc Cmd_VoiceTell_f 1076 20
|
|
proc Cmd_VoiceTaunt_f 56 20
|
|
line 1271
|
|
;1264:
|
|
;1265:
|
|
;1266:/*
|
|
;1267:==================
|
|
;1268:Cmd_VoiceTaunt_f
|
|
;1269:==================
|
|
;1270:*/
|
|
;1271:static void Cmd_VoiceTaunt_f( gentity_t *ent ) {
|
|
line 1275
|
|
;1272: gentity_t *who;
|
|
;1273: int i;
|
|
;1274:
|
|
;1275: if (!ent->client) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $583
|
|
line 1276
|
|
;1276: return;
|
|
ADDRGP4 $582
|
|
JUMPV
|
|
LABELV $583
|
|
line 1280
|
|
;1277: }
|
|
;1278:
|
|
;1279: // insult someone who just killed you
|
|
;1280: if (ent->enemy && ent->enemy->client && ent->enemy->client->lastkilled_client == ent->s.number) {
|
|
ADDRLP4 8
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 12
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
CNSTI4 728
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 16
|
|
CNSTU4 0
|
|
ASGNU4
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 16
|
|
INDIRU4
|
|
EQU4 $585
|
|
ADDRLP4 20
|
|
ADDRLP4 12
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 20
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 16
|
|
INDIRU4
|
|
EQU4 $585
|
|
ADDRLP4 20
|
|
INDIRP4
|
|
CNSTI4 1660
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 8
|
|
INDIRP4
|
|
INDIRI4
|
|
NEI4 $585
|
|
line 1282
|
|
;1281: // i am a dead corpse
|
|
;1282: if (!(ent->enemy->r.svFlags & SVF_BOT)) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 728
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $587
|
|
line 1283
|
|
;1283: G_Voice( ent, ent->enemy, SAY_TELL, VOICECHAT_DEATHINSULT, qfalse );
|
|
ADDRLP4 24
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 24
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 24
|
|
INDIRP4
|
|
CNSTI4 728
|
|
ADDP4
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 $589
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1284
|
|
;1284: }
|
|
LABELV $587
|
|
line 1285
|
|
;1285: if (!(ent->r.svFlags & SVF_BOT)) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $590
|
|
line 1286
|
|
;1286: G_Voice( ent, ent, SAY_TELL, VOICECHAT_DEATHINSULT, qfalse );
|
|
ADDRLP4 24
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 24
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 24
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 $589
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1287
|
|
;1287: }
|
|
LABELV $590
|
|
line 1288
|
|
;1288: ent->enemy = NULL;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 728
|
|
ADDP4
|
|
CNSTP4 0
|
|
ASGNP4
|
|
line 1289
|
|
;1289: return;
|
|
ADDRGP4 $582
|
|
JUMPV
|
|
LABELV $585
|
|
line 1292
|
|
;1290: }
|
|
;1291: // insult someone you just killed
|
|
;1292: if (ent->client->lastkilled_client >= 0 && ent->client->lastkilled_client != ent->s.number) {
|
|
ADDRLP4 24
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 28
|
|
ADDRLP4 24
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1660
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRLP4 28
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $592
|
|
ADDRLP4 28
|
|
INDIRI4
|
|
ADDRLP4 24
|
|
INDIRP4
|
|
INDIRI4
|
|
EQI4 $592
|
|
line 1293
|
|
;1293: who = g_entities + ent->client->lastkilled_client;
|
|
ADDRLP4 0
|
|
CNSTI4 828
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1660
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 1294
|
|
;1294: if (who->client) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $594
|
|
line 1296
|
|
;1295: // who is the person I just killed
|
|
;1296: if (who->client->lasthurt_mod == MOD_STUN_BATON) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1668
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $596
|
|
line 1297
|
|
;1297: if (!(who->r.svFlags & SVF_BOT)) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $598
|
|
line 1298
|
|
;1298: G_Voice( ent, who, SAY_TELL, VOICECHAT_KILLGAUNTLET, qfalse ); // and I killed them with a gauntlet
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 $600
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1299
|
|
;1299: }
|
|
LABELV $598
|
|
line 1300
|
|
;1300: if (!(ent->r.svFlags & SVF_BOT)) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $597
|
|
line 1301
|
|
;1301: G_Voice( ent, ent, SAY_TELL, VOICECHAT_KILLGAUNTLET, qfalse );
|
|
ADDRLP4 32
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 32
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 32
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 $600
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1302
|
|
;1302: }
|
|
line 1303
|
|
;1303: } else {
|
|
ADDRGP4 $597
|
|
JUMPV
|
|
LABELV $596
|
|
line 1304
|
|
;1304: if (!(who->r.svFlags & SVF_BOT)) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $603
|
|
line 1305
|
|
;1305: G_Voice( ent, who, SAY_TELL, VOICECHAT_KILLINSULT, qfalse ); // and I killed them with something else
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 $605
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1306
|
|
;1306: }
|
|
LABELV $603
|
|
line 1307
|
|
;1307: if (!(ent->r.svFlags & SVF_BOT)) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $606
|
|
line 1308
|
|
;1308: G_Voice( ent, ent, SAY_TELL, VOICECHAT_KILLINSULT, qfalse );
|
|
ADDRLP4 32
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 32
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 32
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 $605
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1309
|
|
;1309: }
|
|
LABELV $606
|
|
line 1310
|
|
;1310: }
|
|
LABELV $597
|
|
line 1311
|
|
;1311: ent->client->lastkilled_client = -1;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1660
|
|
ADDP4
|
|
CNSTI4 -1
|
|
ASGNI4
|
|
line 1312
|
|
;1312: return;
|
|
ADDRGP4 $582
|
|
JUMPV
|
|
LABELV $594
|
|
line 1314
|
|
;1313: }
|
|
;1314: }
|
|
LABELV $592
|
|
line 1316
|
|
;1315:
|
|
;1316: if (g_gametype.integer >= GT_TEAM) {
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 5
|
|
LTI4 $608
|
|
line 1318
|
|
;1317: // praise a team mate who just got a reward
|
|
;1318: for(i = 0; i < MAX_CLIENTS; i++) {
|
|
ADDRLP4 4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
LABELV $611
|
|
line 1319
|
|
;1319: who = g_entities + i;
|
|
ADDRLP4 0
|
|
CNSTI4 828
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 1320
|
|
;1320: if (who->client && who != ent && who->client->sess.sessionTeam == ent->client->sess.sessionTeam) {
|
|
ADDRLP4 36
|
|
CNSTI4 408
|
|
ASGNI4
|
|
ADDRLP4 40
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ADDRLP4 36
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 40
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $615
|
|
ADDRLP4 44
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 44
|
|
INDIRP4
|
|
CVPU4 4
|
|
EQU4 $615
|
|
ADDRLP4 48
|
|
CNSTI4 1520
|
|
ASGNI4
|
|
ADDRLP4 40
|
|
INDIRP4
|
|
ADDRLP4 48
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 44
|
|
INDIRP4
|
|
ADDRLP4 36
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 48
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRI4
|
|
NEI4 $615
|
|
line 1321
|
|
;1321: if (who->client->rewardTime > level.time) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1684
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
LEI4 $617
|
|
line 1322
|
|
;1322: if (!(who->r.svFlags & SVF_BOT)) {
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $620
|
|
line 1323
|
|
;1323: G_Voice( ent, who, SAY_TELL, VOICECHAT_PRAISE, qfalse );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 $622
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1324
|
|
;1324: }
|
|
LABELV $620
|
|
line 1325
|
|
;1325: if (!(ent->r.svFlags & SVF_BOT)) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 8
|
|
BANDI4
|
|
CNSTI4 0
|
|
NEI4 $582
|
|
line 1326
|
|
;1326: G_Voice( ent, ent, SAY_TELL, VOICECHAT_PRAISE, qfalse );
|
|
ADDRLP4 52
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 52
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 52
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 $622
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1327
|
|
;1327: }
|
|
line 1328
|
|
;1328: return;
|
|
ADDRGP4 $582
|
|
JUMPV
|
|
LABELV $617
|
|
line 1330
|
|
;1329: }
|
|
;1330: }
|
|
LABELV $615
|
|
line 1331
|
|
;1331: }
|
|
LABELV $612
|
|
line 1318
|
|
ADDRLP4 4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 32
|
|
LTI4 $611
|
|
line 1332
|
|
;1332: }
|
|
LABELV $608
|
|
line 1335
|
|
;1333:
|
|
;1334: // just say something
|
|
;1335: G_Voice( ent, NULL, SAY_ALL, VOICECHAT_TAUNT, qfalse );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTP4 0
|
|
ARGP4
|
|
ADDRLP4 32
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 32
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 $625
|
|
ARGP4
|
|
ADDRLP4 32
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Voice
|
|
CALLV
|
|
pop
|
|
line 1336
|
|
;1336:}
|
|
LABELV $582
|
|
endproc Cmd_VoiceTaunt_f 56 20
|
|
data
|
|
align 4
|
|
LABELV gc_orders
|
|
address $626
|
|
address $627
|
|
address $628
|
|
address $629
|
|
address $630
|
|
address $631
|
|
address $632
|
|
export Cmd_GameCommand_f
|
|
code
|
|
proc Cmd_GameCommand_f 1060 16
|
|
line 1350
|
|
;1337:
|
|
;1338:
|
|
;1339:
|
|
;1340:static char *gc_orders[] = {
|
|
;1341: "hold your position",
|
|
;1342: "hold this position",
|
|
;1343: "come here",
|
|
;1344: "cover me",
|
|
;1345: "guard location",
|
|
;1346: "search and destroy",
|
|
;1347: "report"
|
|
;1348:};
|
|
;1349:
|
|
;1350:void Cmd_GameCommand_f( gentity_t *ent ) {
|
|
line 1355
|
|
;1351: int player;
|
|
;1352: int order;
|
|
;1353: char str[MAX_TOKEN_CHARS];
|
|
;1354:
|
|
;1355: trap_Argv( 1, str, sizeof( str ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1356
|
|
;1356: player = atoi( str );
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1028
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1357
|
|
;1357: trap_Argv( 2, str, sizeof( str ) );
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1358
|
|
;1358: order = atoi( str );
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1036
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1024
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1360
|
|
;1359:
|
|
;1360: if ( player < 0 || player >= MAX_CLIENTS ) {
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $636
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 32
|
|
LTI4 $634
|
|
LABELV $636
|
|
line 1361
|
|
;1361: return;
|
|
ADDRGP4 $633
|
|
JUMPV
|
|
LABELV $634
|
|
line 1363
|
|
;1362: }
|
|
;1363: if ( order < 0 || order > sizeof(gc_orders)/sizeof(char *) ) {
|
|
ADDRLP4 1024
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $639
|
|
ADDRLP4 1024
|
|
INDIRI4
|
|
CVIU4 4
|
|
CNSTU4 7
|
|
LEU4 $637
|
|
LABELV $639
|
|
line 1364
|
|
;1364: return;
|
|
ADDRGP4 $633
|
|
JUMPV
|
|
LABELV $637
|
|
line 1366
|
|
;1365: }
|
|
;1366: G_Say( ent, &g_entities[player], SAY_TELL, gc_orders[order] );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 828
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 1048
|
|
CNSTI4 2
|
|
ASGNI4
|
|
ADDRLP4 1048
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1024
|
|
INDIRI4
|
|
ADDRLP4 1048
|
|
INDIRI4
|
|
LSHI4
|
|
ADDRGP4 gc_orders
|
|
ADDP4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_Say
|
|
CALLV
|
|
pop
|
|
line 1367
|
|
;1367: G_Say( ent, ent, SAY_TELL, gc_orders[order] );
|
|
ADDRLP4 1052
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1052
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1052
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1056
|
|
CNSTI4 2
|
|
ASGNI4
|
|
ADDRLP4 1056
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1024
|
|
INDIRI4
|
|
ADDRLP4 1056
|
|
INDIRI4
|
|
LSHI4
|
|
ADDRGP4 gc_orders
|
|
ADDP4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_Say
|
|
CALLV
|
|
pop
|
|
line 1368
|
|
;1368:}
|
|
LABELV $633
|
|
endproc Cmd_GameCommand_f 1060 16
|
|
export Cmd_Where_f
|
|
proc Cmd_Where_f 8 8
|
|
line 1375
|
|
;1369:
|
|
;1370:/*
|
|
;1371:==================
|
|
;1372:Cmd_Where_f
|
|
;1373:==================
|
|
;1374:*/
|
|
;1375:void Cmd_Where_f( gentity_t *ent ) {
|
|
line 1376
|
|
;1376: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", vtos( ent->s.origin ) ) );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 92
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ADDRGP4 vtos
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1377
|
|
;1377:}
|
|
LABELV $640
|
|
endproc Cmd_Where_f 8 8
|
|
data
|
|
align 4
|
|
LABELV gameNames
|
|
address $641
|
|
address $642
|
|
address $643
|
|
address $644
|
|
address $645
|
|
address $646
|
|
address $647
|
|
address $648
|
|
address $649
|
|
export Cmd_CallVote_f
|
|
code
|
|
proc Cmd_CallVote_f 3144 24
|
|
line 1396
|
|
;1378:
|
|
;1379:static const char *gameNames[] = {
|
|
;1380: "Free For All",
|
|
;1381: "Holocron FFA",
|
|
;1382: "Jedi Master",
|
|
;1383: "Duel",
|
|
;1384: "Single Player",
|
|
;1385: "Team FFA",
|
|
;1386: "N/A",
|
|
;1387: "Capture the Flag",
|
|
;1388: "Capture the Ysalamiri"
|
|
;1389:};
|
|
;1390:
|
|
;1391:/*
|
|
;1392:==================
|
|
;1393:Cmd_CallVote_f
|
|
;1394:==================
|
|
;1395:*/
|
|
;1396:void Cmd_CallVote_f( gentity_t *ent ) {
|
|
line 1401
|
|
;1397: int i;
|
|
;1398: char arg1[MAX_STRING_TOKENS];
|
|
;1399: char arg2[MAX_STRING_TOKENS];
|
|
;1400:
|
|
;1401: if ( !g_allowVote.integer ) {
|
|
ADDRGP4 g_allowVote+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $651
|
|
line 1402
|
|
;1402: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOVOTE")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $654
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2056
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2056
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1403
|
|
;1403: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $651
|
|
line 1406
|
|
;1404: }
|
|
;1405:
|
|
;1406: if ( level.voteTime ) {
|
|
ADDRGP4 level+2276
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $655
|
|
line 1407
|
|
;1407: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "VOTEINPROGRESS")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $658
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2056
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2056
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1408
|
|
;1408: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $655
|
|
line 1410
|
|
;1409: }
|
|
;1410: if ( ent->client->pers.voteCount >= MAX_VOTE_COUNT ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1508
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
LTI4 $659
|
|
line 1411
|
|
;1411: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "MAXVOTES")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $661
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2056
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2056
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1412
|
|
;1412: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $659
|
|
line 1414
|
|
;1413: }
|
|
;1414: if ( ent->client->sess.sessionTeam == TEAM_SPECTATOR ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $662
|
|
line 1415
|
|
;1415: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOSPECVOTE")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $664
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 2052
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2056
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2056
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1416
|
|
;1416: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $662
|
|
line 1420
|
|
;1417: }
|
|
;1418:
|
|
;1419: // make sure it is a valid command to vote on
|
|
;1420: trap_Argv( 1, arg1, sizeof( arg1 ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1421
|
|
;1421: trap_Argv( 2, arg2, sizeof( arg2 ) );
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1423
|
|
;1422:
|
|
;1423: if( strchr( arg1, ';' ) || strchr( arg2, ';' ) ) {
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 59
|
|
ARGI4
|
|
ADDRLP4 2052
|
|
ADDRGP4 strchr
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 2052
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $667
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
CNSTI4 59
|
|
ARGI4
|
|
ADDRLP4 2056
|
|
ADDRGP4 strchr
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 2056
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $665
|
|
LABELV $667
|
|
line 1424
|
|
;1424: trap_SendServerCommand( ent-g_entities, "print \"Invalid vote string.\n\"" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $668
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1425
|
|
;1425: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $665
|
|
line 1428
|
|
;1426: }
|
|
;1427:
|
|
;1428: if ( !Q_stricmp( arg1, "map_restart" ) ) {
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $671
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2060
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $669
|
|
line 1429
|
|
;1429: } else if ( !Q_stricmp( arg1, "nextmap" ) ) {
|
|
ADDRGP4 $670
|
|
JUMPV
|
|
LABELV $669
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $674
|
|
ARGP4
|
|
ADDRLP4 2064
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2064
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $672
|
|
line 1430
|
|
;1430: } else if ( !Q_stricmp( arg1, "map" ) ) {
|
|
ADDRGP4 $673
|
|
JUMPV
|
|
LABELV $672
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $677
|
|
ARGP4
|
|
ADDRLP4 2068
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2068
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $675
|
|
line 1431
|
|
;1431: } else if ( !Q_stricmp( arg1, "g_gametype" ) ) {
|
|
ADDRGP4 $676
|
|
JUMPV
|
|
LABELV $675
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $680
|
|
ARGP4
|
|
ADDRLP4 2072
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2072
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $678
|
|
line 1432
|
|
;1432: } else if ( !Q_stricmp( arg1, "kick" ) ) {
|
|
ADDRGP4 $679
|
|
JUMPV
|
|
LABELV $678
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $683
|
|
ARGP4
|
|
ADDRLP4 2076
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2076
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $681
|
|
line 1433
|
|
;1433: } else if ( !Q_stricmp( arg1, "clientkick" ) ) {
|
|
ADDRGP4 $682
|
|
JUMPV
|
|
LABELV $681
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $686
|
|
ARGP4
|
|
ADDRLP4 2080
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2080
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $684
|
|
line 1434
|
|
;1434: } else if ( !Q_stricmp( arg1, "g_doWarmup" ) ) {
|
|
ADDRGP4 $685
|
|
JUMPV
|
|
LABELV $684
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $689
|
|
ARGP4
|
|
ADDRLP4 2084
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2084
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $687
|
|
line 1435
|
|
;1435: } else if ( !Q_stricmp( arg1, "timelimit" ) ) {
|
|
ADDRGP4 $688
|
|
JUMPV
|
|
LABELV $687
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $692
|
|
ARGP4
|
|
ADDRLP4 2088
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2088
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $690
|
|
line 1436
|
|
;1436: } else if ( !Q_stricmp( arg1, "fraglimit" ) ) {
|
|
ADDRGP4 $691
|
|
JUMPV
|
|
LABELV $690
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $695
|
|
ARGP4
|
|
ADDRLP4 2092
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2092
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $693
|
|
line 1437
|
|
;1437: } else {
|
|
ADDRGP4 $694
|
|
JUMPV
|
|
LABELV $693
|
|
line 1438
|
|
;1438: trap_SendServerCommand( ent-g_entities, "print \"Invalid vote string.\n\"" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $668
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1439
|
|
;1439: trap_SendServerCommand( ent-g_entities, "print \"Vote commands are: map_restart, nextmap, map <mapname>, g_gametype <n>, kick <player>, clientkick <clientnum>, g_doWarmup, timelimit <time>, fraglimit <frags>.\n\"" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $696
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1440
|
|
;1440: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $694
|
|
LABELV $691
|
|
LABELV $688
|
|
LABELV $685
|
|
LABELV $682
|
|
LABELV $679
|
|
LABELV $676
|
|
LABELV $673
|
|
LABELV $670
|
|
line 1444
|
|
;1441: }
|
|
;1442:
|
|
;1443: // if there is still a vote to be executed
|
|
;1444: if ( level.voteExecuteTime ) {
|
|
ADDRGP4 level+2280
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $697
|
|
line 1445
|
|
;1445: level.voteExecuteTime = 0;
|
|
ADDRGP4 level+2280
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 1446
|
|
;1446: trap_SendConsoleCommand( EXEC_APPEND, va("%s\n", level.voteString ) );
|
|
ADDRGP4 $701
|
|
ARGP4
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
ADDRLP4 2096
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRLP4 2096
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendConsoleCommand
|
|
CALLV
|
|
pop
|
|
line 1447
|
|
;1447: }
|
|
LABELV $697
|
|
line 1450
|
|
;1448:
|
|
;1449: // special case for g_gametype, check for bad values
|
|
;1450: if ( !Q_stricmp( arg1, "g_gametype" ) ) {
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $680
|
|
ARGP4
|
|
ADDRLP4 2096
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2096
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $703
|
|
line 1451
|
|
;1451: i = atoi( arg2 );
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
ADDRLP4 2100
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
ADDRLP4 2100
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1452
|
|
;1452: if( i == GT_SINGLE_PLAYER || i < GT_FFA || i >= GT_MAX_GAME_TYPE) {
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 4
|
|
EQI4 $708
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $708
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 9
|
|
LTI4 $705
|
|
LABELV $708
|
|
line 1453
|
|
;1453: trap_SendServerCommand( ent-g_entities, "print \"Invalid gametype.\n\"" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $709
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1454
|
|
;1454: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $705
|
|
line 1457
|
|
;1455: }
|
|
;1456:
|
|
;1457: level.votingGametype = qtrue;
|
|
ADDRGP4 level+2296
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 1458
|
|
;1458: level.votingGametypeTo = i;
|
|
ADDRGP4 level+2300
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1460
|
|
;1459:
|
|
;1460: Com_sprintf( level.voteString, sizeof( level.voteString ), "%s %d", arg1, i );
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $714
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1461
|
|
;1461: Com_sprintf( level.voteDisplayString, sizeof( level.voteDisplayString ), "%s %s", arg1, gameNames[i] );
|
|
ADDRGP4 level+1252
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $717
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 gameNames
|
|
ADDP4
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1462
|
|
;1462: } else if ( !Q_stricmp( arg1, "map" ) ) {
|
|
ADDRGP4 $704
|
|
JUMPV
|
|
LABELV $703
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $677
|
|
ARGP4
|
|
ADDRLP4 2100
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2100
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $718
|
|
line 1467
|
|
;1463: // special case for map changes, we want to reset the nextmap setting
|
|
;1464: // this allows a player to change maps, but not upset the map rotation
|
|
;1465: char s[MAX_STRING_CHARS];
|
|
;1466:
|
|
;1467: if (!G_DoesMapSupportGametype(arg2, trap_Cvar_VariableIntegerValue("g_gametype")))
|
|
ADDRGP4 $680
|
|
ARGP4
|
|
ADDRLP4 3128
|
|
ADDRGP4 trap_Cvar_VariableIntegerValue
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
ADDRLP4 3128
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 3132
|
|
ADDRGP4 G_DoesMapSupportGametype
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 3132
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $720
|
|
line 1468
|
|
;1468: {
|
|
line 1470
|
|
;1469: //trap_SendServerCommand( ent-g_entities, "print \"You can't vote for this map, it isn't supported by the current gametype.\n\"" );
|
|
;1470: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOVOTE_MAPNOTSUPPORTEDBYGAME")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $722
|
|
ARGP4
|
|
ADDRLP4 3136
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 3136
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 3140
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 3140
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1471
|
|
;1471: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $720
|
|
line 1474
|
|
;1472: }
|
|
;1473:
|
|
;1474: trap_Cvar_VariableStringBuffer( "nextmap", s, sizeof(s) );
|
|
ADDRGP4 $674
|
|
ARGP4
|
|
ADDRLP4 2104
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Cvar_VariableStringBuffer
|
|
CALLV
|
|
pop
|
|
line 1475
|
|
;1475: if (*s) {
|
|
ADDRLP4 2104
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 0
|
|
EQI4 $723
|
|
line 1476
|
|
;1476: Com_sprintf( level.voteString, sizeof( level.voteString ), "%s %s; set nextmap \"%s\"", arg1, arg2, s );
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $727
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
ADDRLP4 2104
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1477
|
|
;1477: } else {
|
|
ADDRGP4 $724
|
|
JUMPV
|
|
LABELV $723
|
|
line 1478
|
|
;1478: Com_sprintf( level.voteString, sizeof( level.voteString ), "%s %s", arg1, arg2 );
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $717
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1479
|
|
;1479: }
|
|
LABELV $724
|
|
line 1480
|
|
;1480: Com_sprintf( level.voteDisplayString, sizeof( level.voteDisplayString ), "%s", level.voteString );
|
|
ADDRGP4 level+1252
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $732
|
|
ARGP4
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1481
|
|
;1481: } else if ( !Q_stricmp( arg1, "nextmap" ) ) {
|
|
ADDRGP4 $719
|
|
JUMPV
|
|
LABELV $718
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $674
|
|
ARGP4
|
|
ADDRLP4 2104
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2104
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $734
|
|
line 1484
|
|
;1482: char s[MAX_STRING_CHARS];
|
|
;1483:
|
|
;1484: trap_Cvar_VariableStringBuffer( "nextmap", s, sizeof(s) );
|
|
ADDRGP4 $674
|
|
ARGP4
|
|
ADDRLP4 2108
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Cvar_VariableStringBuffer
|
|
CALLV
|
|
pop
|
|
line 1485
|
|
;1485: if (!*s) {
|
|
ADDRLP4 2108
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 0
|
|
NEI4 $736
|
|
line 1486
|
|
;1486: trap_SendServerCommand( ent-g_entities, "print \"nextmap not set.\n\"" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $738
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1487
|
|
;1487: return;
|
|
ADDRGP4 $650
|
|
JUMPV
|
|
LABELV $736
|
|
line 1489
|
|
;1488: }
|
|
;1489: Com_sprintf( level.voteString, sizeof( level.voteString ), "vstr nextmap");
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $741
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1490
|
|
;1490: Com_sprintf( level.voteDisplayString, sizeof( level.voteDisplayString ), "%s", level.voteString );
|
|
ADDRGP4 level+1252
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $732
|
|
ARGP4
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1491
|
|
;1491: } else {
|
|
ADDRGP4 $735
|
|
JUMPV
|
|
LABELV $734
|
|
line 1492
|
|
;1492: Com_sprintf( level.voteString, sizeof( level.voteString ), "%s \"%s\"", arg1, arg2 );
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $747
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1493
|
|
;1493: Com_sprintf( level.voteDisplayString, sizeof( level.voteDisplayString ), "%s", level.voteString );
|
|
ADDRGP4 level+1252
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $732
|
|
ARGP4
|
|
ADDRGP4 level+228
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1494
|
|
;1494: }
|
|
LABELV $735
|
|
LABELV $719
|
|
LABELV $704
|
|
line 1496
|
|
;1495:
|
|
;1496: trap_SendServerCommand( -1, va("print \"%s %s\n\"", ent->client->pers.netname, G_GetStripEdString("SVINGAME", "PLCALLEDVOTE") ) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $752
|
|
ARGP4
|
|
ADDRLP4 2108
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $751
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 2108
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2112
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 -1
|
|
ARGI4
|
|
ADDRLP4 2112
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1499
|
|
;1497:
|
|
;1498: // start the voting, the caller autoamtically votes yes
|
|
;1499: level.voteTime = level.time;
|
|
ADDRGP4 level+2276
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1500
|
|
;1500: level.voteYes = 1;
|
|
ADDRGP4 level+2284
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 1501
|
|
;1501: level.voteNo = 0;
|
|
ADDRGP4 level+2288
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 1503
|
|
;1502:
|
|
;1503: for ( i = 0 ; i < level.maxclients ; i++ ) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $760
|
|
JUMPV
|
|
LABELV $757
|
|
line 1504
|
|
;1504: level.clients[i].ps.eFlags &= ~EF_VOTED;
|
|
ADDRLP4 2116
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 2116
|
|
INDIRP4
|
|
ADDRLP4 2116
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 -16385
|
|
BANDI4
|
|
ASGNI4
|
|
line 1505
|
|
;1505: }
|
|
LABELV $758
|
|
line 1503
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $760
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $757
|
|
line 1506
|
|
;1506: ent->client->ps.eFlags |= EF_VOTED;
|
|
ADDRLP4 2116
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 2116
|
|
INDIRP4
|
|
ADDRLP4 2116
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 16384
|
|
BORI4
|
|
ASGNI4
|
|
line 1508
|
|
;1507:
|
|
;1508: trap_SetConfigstring( CS_VOTE_TIME, va("%i", level.voteTime ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRGP4 level+2276
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2120
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 8
|
|
ARGI4
|
|
ADDRLP4 2120
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1509
|
|
;1509: trap_SetConfigstring( CS_VOTE_STRING, level.voteDisplayString );
|
|
CNSTI4 9
|
|
ARGI4
|
|
ADDRGP4 level+1252
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1510
|
|
;1510: trap_SetConfigstring( CS_VOTE_YES, va("%i", level.voteYes ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRGP4 level+2284
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2124
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 10
|
|
ARGI4
|
|
ADDRLP4 2124
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1511
|
|
;1511: trap_SetConfigstring( CS_VOTE_NO, va("%i", level.voteNo ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRGP4 level+2288
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2128
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 11
|
|
ARGI4
|
|
ADDRLP4 2128
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1512
|
|
;1512:}
|
|
LABELV $650
|
|
endproc Cmd_CallVote_f 3144 24
|
|
export Cmd_Vote_f
|
|
proc Cmd_Vote_f 84 12
|
|
line 1519
|
|
;1513:
|
|
;1514:/*
|
|
;1515:==================
|
|
;1516:Cmd_Vote_f
|
|
;1517:==================
|
|
;1518:*/
|
|
;1519:void Cmd_Vote_f( gentity_t *ent ) {
|
|
line 1522
|
|
;1520: char msg[64];
|
|
;1521:
|
|
;1522: if ( !level.voteTime ) {
|
|
ADDRGP4 level+2276
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $768
|
|
line 1523
|
|
;1523: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOVOTEINPROG")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $771
|
|
ARGP4
|
|
ADDRLP4 64
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 64
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 68
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 68
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1524
|
|
;1524: return;
|
|
ADDRGP4 $767
|
|
JUMPV
|
|
LABELV $768
|
|
line 1526
|
|
;1525: }
|
|
;1526: if ( ent->client->ps.eFlags & EF_VOTED ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 16384
|
|
BANDI4
|
|
CNSTI4 0
|
|
EQI4 $772
|
|
line 1527
|
|
;1527: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "VOTEALREADY")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $774
|
|
ARGP4
|
|
ADDRLP4 64
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 64
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 68
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 68
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1528
|
|
;1528: return;
|
|
ADDRGP4 $767
|
|
JUMPV
|
|
LABELV $772
|
|
line 1530
|
|
;1529: }
|
|
;1530: if ( ent->client->sess.sessionTeam == TEAM_SPECTATOR ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $775
|
|
line 1531
|
|
;1531: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOVOTEASSPEC")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $777
|
|
ARGP4
|
|
ADDRLP4 64
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 64
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 68
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 68
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1532
|
|
;1532: return;
|
|
ADDRGP4 $767
|
|
JUMPV
|
|
LABELV $775
|
|
line 1535
|
|
;1533: }
|
|
;1534:
|
|
;1535: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "PLVOTECAST")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $778
|
|
ARGP4
|
|
ADDRLP4 64
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 64
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 68
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 68
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1537
|
|
;1536:
|
|
;1537: ent->client->ps.eFlags |= EF_VOTED;
|
|
ADDRLP4 72
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 72
|
|
INDIRP4
|
|
ADDRLP4 72
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 16384
|
|
BORI4
|
|
ASGNI4
|
|
line 1539
|
|
;1538:
|
|
;1539: trap_Argv( 1, msg, sizeof( msg ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1541
|
|
;1540:
|
|
;1541: if ( msg[0] == 'y' || msg[1] == 'Y' || msg[1] == '1' ) {
|
|
ADDRLP4 0
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 121
|
|
EQI4 $784
|
|
ADDRLP4 0+1
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 89
|
|
EQI4 $784
|
|
ADDRLP4 0+1
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 49
|
|
NEI4 $779
|
|
LABELV $784
|
|
line 1542
|
|
;1542: level.voteYes++;
|
|
ADDRLP4 76
|
|
ADDRGP4 level+2284
|
|
ASGNP4
|
|
ADDRLP4 76
|
|
INDIRP4
|
|
ADDRLP4 76
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 1543
|
|
;1543: trap_SetConfigstring( CS_VOTE_YES, va("%i", level.voteYes ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRGP4 level+2284
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 80
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 10
|
|
ARGI4
|
|
ADDRLP4 80
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1544
|
|
;1544: } else {
|
|
ADDRGP4 $780
|
|
JUMPV
|
|
LABELV $779
|
|
line 1545
|
|
;1545: level.voteNo++;
|
|
ADDRLP4 76
|
|
ADDRGP4 level+2288
|
|
ASGNP4
|
|
ADDRLP4 76
|
|
INDIRP4
|
|
ADDRLP4 76
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 1546
|
|
;1546: trap_SetConfigstring( CS_VOTE_NO, va("%i", level.voteNo ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRGP4 level+2288
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 80
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 11
|
|
ARGI4
|
|
ADDRLP4 80
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1547
|
|
;1547: }
|
|
LABELV $780
|
|
line 1551
|
|
;1548:
|
|
;1549: // a majority will be determined in CheckVote, which will also account
|
|
;1550: // for players entering or leaving
|
|
;1551:}
|
|
LABELV $767
|
|
endproc Cmd_Vote_f 84 12
|
|
export Cmd_CallTeamVote_f
|
|
proc Cmd_CallTeamVote_f 2164 20
|
|
line 1558
|
|
;1552:
|
|
;1553:/*
|
|
;1554:==================
|
|
;1555:Cmd_CallTeamVote_f
|
|
;1556:==================
|
|
;1557:*/
|
|
;1558:void Cmd_CallTeamVote_f( gentity_t *ent ) {
|
|
line 1563
|
|
;1559: int i, team, cs_offset;
|
|
;1560: char arg1[MAX_STRING_TOKENS];
|
|
;1561: char arg2[MAX_STRING_TOKENS];
|
|
;1562:
|
|
;1563: team = ent->client->sess.sessionTeam;
|
|
ADDRLP4 1028
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1564
|
|
;1564: if ( team == TEAM_RED )
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $790
|
|
line 1565
|
|
;1565: cs_offset = 0;
|
|
ADDRLP4 1032
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $791
|
|
JUMPV
|
|
LABELV $790
|
|
line 1566
|
|
;1566: else if ( team == TEAM_BLUE )
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $789
|
|
line 1567
|
|
;1567: cs_offset = 1;
|
|
ADDRLP4 1032
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 1569
|
|
;1568: else
|
|
;1569: return;
|
|
LABELV $793
|
|
LABELV $791
|
|
line 1571
|
|
;1570:
|
|
;1571: if ( !g_allowVote.integer ) {
|
|
ADDRGP4 g_allowVote+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $794
|
|
line 1572
|
|
;1572: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOVOTE")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $654
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2064
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2064
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1573
|
|
;1573: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
LABELV $794
|
|
line 1576
|
|
;1574: }
|
|
;1575:
|
|
;1576: if ( level.teamVoteTime[cs_offset] ) {
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4352
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $797
|
|
line 1577
|
|
;1577: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "TEAMVOTEALREADY")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $800
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2064
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2064
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1578
|
|
;1578: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
LABELV $797
|
|
line 1580
|
|
;1579: }
|
|
;1580: if ( ent->client->pers.teamVoteCount >= MAX_VOTE_COUNT ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1512
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
LTI4 $801
|
|
line 1581
|
|
;1581: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "MAXTEAMVOTES")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $803
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2064
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2064
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1582
|
|
;1582: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
LABELV $801
|
|
line 1584
|
|
;1583: }
|
|
;1584: if ( ent->client->sess.sessionTeam == TEAM_SPECTATOR ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $804
|
|
line 1585
|
|
;1585: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOSPECVOTE")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $664
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 2064
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2064
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1586
|
|
;1586: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
LABELV $804
|
|
line 1590
|
|
;1587: }
|
|
;1588:
|
|
;1589: // make sure it is a valid command to vote on
|
|
;1590: trap_Argv( 1, arg1, sizeof( arg1 ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1591
|
|
;1591: arg2[0] = '\0';
|
|
ADDRLP4 4
|
|
CNSTI1 0
|
|
ASGNI1
|
|
line 1592
|
|
;1592: for ( i = 2; i < trap_Argc(); i++ ) {
|
|
ADDRLP4 0
|
|
CNSTI4 2
|
|
ASGNI4
|
|
ADDRGP4 $809
|
|
JUMPV
|
|
LABELV $806
|
|
line 1593
|
|
;1593: if (i > 2)
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LEI4 $810
|
|
line 1594
|
|
;1594: strcat(arg2, " ");
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 $812
|
|
ARGP4
|
|
ADDRGP4 strcat
|
|
CALLP4
|
|
pop
|
|
LABELV $810
|
|
line 1595
|
|
;1595: trap_Argv( i, &arg2[strlen(arg2)], sizeof( arg2 ) - strlen(arg2) );
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 2060
|
|
ADDRGP4 strlen
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 2064
|
|
ADDRGP4 strlen
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2060
|
|
INDIRI4
|
|
ADDRLP4 4
|
|
ADDP4
|
|
ARGP4
|
|
CNSTU4 1024
|
|
ADDRLP4 2064
|
|
INDIRI4
|
|
CVIU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1596
|
|
;1596: }
|
|
LABELV $807
|
|
line 1592
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $809
|
|
ADDRLP4 2060
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRLP4 2060
|
|
INDIRI4
|
|
LTI4 $806
|
|
line 1598
|
|
;1597:
|
|
;1598: if( strchr( arg1, ';' ) || strchr( arg2, ';' ) ) {
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
CNSTI4 59
|
|
ARGI4
|
|
ADDRLP4 2064
|
|
ADDRGP4 strchr
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 2064
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $815
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 59
|
|
ARGI4
|
|
ADDRLP4 2068
|
|
ADDRGP4 strchr
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 2068
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $813
|
|
LABELV $815
|
|
line 1599
|
|
;1599: trap_SendServerCommand( ent-g_entities, "print \"Invalid vote string.\n\"" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $668
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1600
|
|
;1600: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
LABELV $813
|
|
line 1603
|
|
;1601: }
|
|
;1602:
|
|
;1603: if ( !Q_stricmp( arg1, "leader" ) ) {
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
ADDRGP4 $818
|
|
ARGP4
|
|
ADDRLP4 2072
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2072
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $816
|
|
line 1606
|
|
;1604: char netname[MAX_NETNAME], leader[MAX_NETNAME];
|
|
;1605:
|
|
;1606: if ( !arg2[0] ) {
|
|
ADDRLP4 4
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 0
|
|
NEI4 $819
|
|
line 1607
|
|
;1607: i = ent->client->ps.clientNum;
|
|
ADDRLP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1608
|
|
;1608: }
|
|
ADDRGP4 $820
|
|
JUMPV
|
|
LABELV $819
|
|
line 1609
|
|
;1609: else {
|
|
line 1611
|
|
;1610: // numeric values are just slot numbers
|
|
;1611: for (i = 0; i < 3; i++) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
LABELV $821
|
|
line 1612
|
|
;1612: if ( !arg2[i] || arg2[i] < '0' || arg2[i] > '9' )
|
|
ADDRLP4 2148
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRLP4 4
|
|
ADDP4
|
|
INDIRI1
|
|
CVII4 1
|
|
ASGNI4
|
|
ADDRLP4 2148
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $828
|
|
ADDRLP4 2148
|
|
INDIRI4
|
|
CNSTI4 48
|
|
LTI4 $828
|
|
ADDRLP4 2148
|
|
INDIRI4
|
|
CNSTI4 57
|
|
LEI4 $825
|
|
LABELV $828
|
|
line 1613
|
|
;1613: break;
|
|
ADDRGP4 $823
|
|
JUMPV
|
|
LABELV $825
|
|
line 1614
|
|
;1614: }
|
|
LABELV $822
|
|
line 1611
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 3
|
|
LTI4 $821
|
|
LABELV $823
|
|
line 1615
|
|
;1615: if ( i >= 3 || !arg2[i]) {
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 3
|
|
GEI4 $831
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRLP4 4
|
|
ADDP4
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 0
|
|
NEI4 $829
|
|
LABELV $831
|
|
line 1616
|
|
;1616: i = atoi( arg2 );
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 2152
|
|
ADDRGP4 atoi
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
ADDRLP4 2152
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1617
|
|
;1617: if ( i < 0 || i >= level.maxclients ) {
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 0
|
|
LTI4 $835
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $832
|
|
LABELV $835
|
|
line 1618
|
|
;1618: trap_SendServerCommand( ent-g_entities, va("print \"Bad client slot: %i\n\"", i) );
|
|
ADDRGP4 $146
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2160
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2160
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1619
|
|
;1619: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
LABELV $832
|
|
line 1622
|
|
;1620: }
|
|
;1621:
|
|
;1622: if ( !g_entities[i].inuse ) {
|
|
CNSTI4 828
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities+412
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $830
|
|
line 1623
|
|
;1623: trap_SendServerCommand( ent-g_entities, va("print \"Client %i is not active\n\"", i) );
|
|
ADDRGP4 $149
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2160
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2160
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1624
|
|
;1624: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
line 1626
|
|
;1625: }
|
|
;1626: }
|
|
LABELV $829
|
|
line 1627
|
|
;1627: else {
|
|
line 1628
|
|
;1628: Q_strncpyz(leader, arg2, sizeof(leader));
|
|
ADDRLP4 2112
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 36
|
|
ARGI4
|
|
ADDRGP4 Q_strncpyz
|
|
CALLV
|
|
pop
|
|
line 1629
|
|
;1629: Q_CleanStr(leader);
|
|
ADDRLP4 2112
|
|
ARGP4
|
|
ADDRGP4 Q_CleanStr
|
|
CALLP4
|
|
pop
|
|
line 1630
|
|
;1630: for ( i = 0 ; i < level.maxclients ; i++ ) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $842
|
|
JUMPV
|
|
LABELV $839
|
|
line 1631
|
|
;1631: if ( level.clients[i].pers.connected == CON_DISCONNECTED )
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1368
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $844
|
|
line 1632
|
|
;1632: continue;
|
|
ADDRGP4 $840
|
|
JUMPV
|
|
LABELV $844
|
|
line 1633
|
|
;1633: if (level.clients[i].sess.sessionTeam != team)
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
EQI4 $846
|
|
line 1634
|
|
;1634: continue;
|
|
ADDRGP4 $840
|
|
JUMPV
|
|
LABELV $846
|
|
line 1635
|
|
;1635: Q_strncpyz(netname, level.clients[i].pers.netname, sizeof(netname));
|
|
ADDRLP4 2076
|
|
ARGP4
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 36
|
|
ARGI4
|
|
ADDRGP4 Q_strncpyz
|
|
CALLV
|
|
pop
|
|
line 1636
|
|
;1636: Q_CleanStr(netname);
|
|
ADDRLP4 2076
|
|
ARGP4
|
|
ADDRGP4 Q_CleanStr
|
|
CALLP4
|
|
pop
|
|
line 1637
|
|
;1637: if ( !Q_stricmp(netname, leader) ) {
|
|
ADDRLP4 2076
|
|
ARGP4
|
|
ADDRLP4 2112
|
|
ARGP4
|
|
ADDRLP4 2152
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 2152
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $848
|
|
line 1638
|
|
;1638: break;
|
|
ADDRGP4 $841
|
|
JUMPV
|
|
LABELV $848
|
|
line 1640
|
|
;1639: }
|
|
;1640: }
|
|
LABELV $840
|
|
line 1630
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $842
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $839
|
|
LABELV $841
|
|
line 1641
|
|
;1641: if ( i >= level.maxclients ) {
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $850
|
|
line 1642
|
|
;1642: trap_SendServerCommand( ent-g_entities, va("print \"%s is not a valid player on your team.\n\"", arg2) );
|
|
ADDRGP4 $853
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 2152
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 2152
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1643
|
|
;1643: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
LABELV $850
|
|
line 1645
|
|
;1644: }
|
|
;1645: }
|
|
LABELV $830
|
|
line 1646
|
|
;1646: }
|
|
LABELV $820
|
|
line 1647
|
|
;1647: Com_sprintf(arg2, sizeof(arg2), "%d", i);
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $268
|
|
ARGP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1648
|
|
;1648: } else {
|
|
ADDRGP4 $817
|
|
JUMPV
|
|
LABELV $816
|
|
line 1649
|
|
;1649: trap_SendServerCommand( ent-g_entities, "print \"Invalid vote string.\n\"" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $668
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1650
|
|
;1650: trap_SendServerCommand( ent-g_entities, "print \"Team vote commands are: leader <player>.\n\"" );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRGP4 $854
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1651
|
|
;1651: return;
|
|
ADDRGP4 $789
|
|
JUMPV
|
|
LABELV $817
|
|
line 1654
|
|
;1652: }
|
|
;1653:
|
|
;1654: Com_sprintf( level.teamVoteString[cs_offset], sizeof( level.teamVoteString[cs_offset] ), "%s %s", arg1, arg2 );
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 10
|
|
LSHI4
|
|
ADDRGP4 level+2304
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 $717
|
|
ARGP4
|
|
ADDRLP4 1036
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRGP4 Com_sprintf
|
|
CALLV
|
|
pop
|
|
line 1656
|
|
;1655:
|
|
;1656: for ( i = 0 ; i < level.maxclients ; i++ ) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $860
|
|
JUMPV
|
|
LABELV $857
|
|
line 1657
|
|
;1657: if ( level.clients[i].pers.connected == CON_DISCONNECTED )
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1368
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $862
|
|
line 1658
|
|
;1658: continue;
|
|
ADDRGP4 $858
|
|
JUMPV
|
|
LABELV $862
|
|
line 1659
|
|
;1659: if (level.clients[i].sess.sessionTeam == team)
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
NEI4 $864
|
|
line 1660
|
|
;1660: trap_SendServerCommand( i, va("print \"%s called a team vote.\n\"", ent->client->pers.netname ) );
|
|
ADDRGP4 $866
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 2076
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2076
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
LABELV $864
|
|
line 1661
|
|
;1661: }
|
|
LABELV $858
|
|
line 1656
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $860
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $857
|
|
line 1664
|
|
;1662:
|
|
;1663: // start the voting, the caller autoamtically votes yes
|
|
;1664: level.teamVoteTime[cs_offset] = level.time;
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4352
|
|
ADDP4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1665
|
|
;1665: level.teamVoteYes[cs_offset] = 1;
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4360
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 1666
|
|
;1666: level.teamVoteNo[cs_offset] = 0;
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4368
|
|
ADDP4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 1668
|
|
;1667:
|
|
;1668: for ( i = 0 ; i < level.maxclients ; i++ ) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $874
|
|
JUMPV
|
|
LABELV $871
|
|
line 1669
|
|
;1669: if (level.clients[i].sess.sessionTeam == team)
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1028
|
|
INDIRI4
|
|
NEI4 $876
|
|
line 1670
|
|
;1670: level.clients[i].ps.eFlags &= ~EF_TEAMVOTED;
|
|
ADDRLP4 2076
|
|
CNSTI4 1756
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 level
|
|
INDIRP4
|
|
ADDP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 2076
|
|
INDIRP4
|
|
ADDRLP4 2076
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 -524289
|
|
BANDI4
|
|
ASGNI4
|
|
LABELV $876
|
|
line 1671
|
|
;1671: }
|
|
LABELV $872
|
|
line 1668
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
LABELV $874
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRGP4 level+24
|
|
INDIRI4
|
|
LTI4 $871
|
|
line 1672
|
|
;1672: ent->client->ps.eFlags |= EF_TEAMVOTED;
|
|
ADDRLP4 2076
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 2076
|
|
INDIRP4
|
|
ADDRLP4 2076
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 524288
|
|
BORI4
|
|
ASGNI4
|
|
line 1674
|
|
;1673:
|
|
;1674: trap_SetConfigstring( CS_TEAMVOTE_TIME + cs_offset, va("%i", level.teamVoteTime[cs_offset] ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4352
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2080
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 12
|
|
ADDI4
|
|
ARGI4
|
|
ADDRLP4 2080
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1675
|
|
;1675: trap_SetConfigstring( CS_TEAMVOTE_STRING + cs_offset, level.teamVoteString[cs_offset] );
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 14
|
|
ADDI4
|
|
ARGI4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 10
|
|
LSHI4
|
|
ADDRGP4 level+2304
|
|
ADDP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1676
|
|
;1676: trap_SetConfigstring( CS_TEAMVOTE_YES + cs_offset, va("%i", level.teamVoteYes[cs_offset] ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4360
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2088
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 16
|
|
ADDI4
|
|
ARGI4
|
|
ADDRLP4 2088
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1677
|
|
;1677: trap_SetConfigstring( CS_TEAMVOTE_NO + cs_offset, va("%i", level.teamVoteNo[cs_offset] ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4368
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 2092
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 18
|
|
ADDI4
|
|
ARGI4
|
|
ADDRLP4 2092
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1678
|
|
;1678:}
|
|
LABELV $789
|
|
endproc Cmd_CallTeamVote_f 2164 20
|
|
export Cmd_TeamVote_f
|
|
proc Cmd_TeamVote_f 92 12
|
|
line 1685
|
|
;1679:
|
|
;1680:/*
|
|
;1681:==================
|
|
;1682:Cmd_TeamVote_f
|
|
;1683:==================
|
|
;1684:*/
|
|
;1685:void Cmd_TeamVote_f( gentity_t *ent ) {
|
|
line 1689
|
|
;1686: int team, cs_offset;
|
|
;1687: char msg[64];
|
|
;1688:
|
|
;1689: team = ent->client->sess.sessionTeam;
|
|
ADDRLP4 68
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1690
|
|
;1690: if ( team == TEAM_RED )
|
|
ADDRLP4 68
|
|
INDIRI4
|
|
CNSTI4 1
|
|
NEI4 $883
|
|
line 1691
|
|
;1691: cs_offset = 0;
|
|
ADDRLP4 64
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $884
|
|
JUMPV
|
|
LABELV $883
|
|
line 1692
|
|
;1692: else if ( team == TEAM_BLUE )
|
|
ADDRLP4 68
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $882
|
|
line 1693
|
|
;1693: cs_offset = 1;
|
|
ADDRLP4 64
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 1695
|
|
;1694: else
|
|
;1695: return;
|
|
LABELV $886
|
|
LABELV $884
|
|
line 1697
|
|
;1696:
|
|
;1697: if ( !level.teamVoteTime[cs_offset] ) {
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4352
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $887
|
|
line 1698
|
|
;1698: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOTEAMVOTEINPROG")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $890
|
|
ARGP4
|
|
ADDRLP4 72
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 72
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 76
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 76
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1699
|
|
;1699: return;
|
|
ADDRGP4 $882
|
|
JUMPV
|
|
LABELV $887
|
|
line 1701
|
|
;1700: }
|
|
;1701: if ( ent->client->ps.eFlags & EF_TEAMVOTED ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 524288
|
|
BANDI4
|
|
CNSTI4 0
|
|
EQI4 $891
|
|
line 1702
|
|
;1702: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "TEAMVOTEALREADYCAST")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $893
|
|
ARGP4
|
|
ADDRLP4 72
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 72
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 76
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 76
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1703
|
|
;1703: return;
|
|
ADDRGP4 $882
|
|
JUMPV
|
|
LABELV $891
|
|
line 1705
|
|
;1704: }
|
|
;1705: if ( ent->client->sess.sessionTeam == TEAM_SPECTATOR ) {
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1520
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $894
|
|
line 1706
|
|
;1706: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOVOTEASSPEC")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $777
|
|
ARGP4
|
|
ADDRLP4 72
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 72
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 76
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 76
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1707
|
|
;1707: return;
|
|
ADDRGP4 $882
|
|
JUMPV
|
|
LABELV $894
|
|
line 1710
|
|
;1708: }
|
|
;1709:
|
|
;1710: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "PLTEAMVOTECAST")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $896
|
|
ARGP4
|
|
ADDRLP4 72
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 72
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 76
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 76
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1712
|
|
;1711:
|
|
;1712: ent->client->ps.eFlags |= EF_TEAMVOTED;
|
|
ADDRLP4 80
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 80
|
|
INDIRP4
|
|
ADDRLP4 80
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 524288
|
|
BORI4
|
|
ASGNI4
|
|
line 1714
|
|
;1713:
|
|
;1714: trap_Argv( 1, msg, sizeof( msg ) );
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
CNSTI4 64
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1716
|
|
;1715:
|
|
;1716: if ( msg[0] == 'y' || msg[1] == 'Y' || msg[1] == '1' ) {
|
|
ADDRLP4 0
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 121
|
|
EQI4 $902
|
|
ADDRLP4 0+1
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 89
|
|
EQI4 $902
|
|
ADDRLP4 0+1
|
|
INDIRI1
|
|
CVII4 1
|
|
CNSTI4 49
|
|
NEI4 $897
|
|
LABELV $902
|
|
line 1717
|
|
;1717: level.teamVoteYes[cs_offset]++;
|
|
ADDRLP4 84
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4360
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 84
|
|
INDIRP4
|
|
ADDRLP4 84
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 1718
|
|
;1718: trap_SetConfigstring( CS_TEAMVOTE_YES + cs_offset, va("%i", level.teamVoteYes[cs_offset] ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4360
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 88
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 16
|
|
ADDI4
|
|
ARGI4
|
|
ADDRLP4 88
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1719
|
|
;1719: } else {
|
|
ADDRGP4 $898
|
|
JUMPV
|
|
LABELV $897
|
|
line 1720
|
|
;1720: level.teamVoteNo[cs_offset]++;
|
|
ADDRLP4 84
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4368
|
|
ADDP4
|
|
ASGNP4
|
|
ADDRLP4 84
|
|
INDIRP4
|
|
ADDRLP4 84
|
|
INDIRP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 1721
|
|
;1721: trap_SetConfigstring( CS_TEAMVOTE_NO + cs_offset, va("%i", level.teamVoteNo[cs_offset] ) );
|
|
ADDRGP4 $762
|
|
ARGP4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 level+4368
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 88
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 64
|
|
INDIRI4
|
|
CNSTI4 18
|
|
ADDI4
|
|
ARGI4
|
|
ADDRLP4 88
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SetConfigstring
|
|
CALLV
|
|
pop
|
|
line 1722
|
|
;1722: }
|
|
LABELV $898
|
|
line 1726
|
|
;1723:
|
|
;1724: // a majority will be determined in TeamCheckVote, which will also account
|
|
;1725: // for players entering or leaving
|
|
;1726:}
|
|
LABELV $882
|
|
endproc Cmd_TeamVote_f 92 12
|
|
export Cmd_SetViewpos_f
|
|
proc Cmd_SetViewpos_f 1064 12
|
|
line 1734
|
|
;1727:
|
|
;1728:
|
|
;1729:/*
|
|
;1730:=================
|
|
;1731:Cmd_SetViewpos_f
|
|
;1732:=================
|
|
;1733:*/
|
|
;1734:void Cmd_SetViewpos_f( gentity_t *ent ) {
|
|
line 1739
|
|
;1735: vec3_t origin, angles;
|
|
;1736: char buffer[MAX_TOKEN_CHARS];
|
|
;1737: int i;
|
|
;1738:
|
|
;1739: if ( !g_cheats.integer ) {
|
|
ADDRGP4 g_cheats+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $908
|
|
line 1740
|
|
;1740: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NOCHEATS")));
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $117
|
|
ARGP4
|
|
ADDRLP4 1052
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 1052
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1056
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1056
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1741
|
|
;1741: return;
|
|
ADDRGP4 $907
|
|
JUMPV
|
|
LABELV $908
|
|
line 1743
|
|
;1742: }
|
|
;1743: if ( trap_Argc() != 5 ) {
|
|
ADDRLP4 1052
|
|
ADDRGP4 trap_Argc
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1052
|
|
INDIRI4
|
|
CNSTI4 5
|
|
EQI4 $911
|
|
line 1744
|
|
;1744: trap_SendServerCommand( ent-g_entities, va("print \"usage: setviewpos x y z yaw\n\""));
|
|
ADDRGP4 $913
|
|
ARGP4
|
|
ADDRLP4 1056
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1056
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 1745
|
|
;1745: return;
|
|
ADDRGP4 $907
|
|
JUMPV
|
|
LABELV $911
|
|
line 1748
|
|
;1746: }
|
|
;1747:
|
|
;1748: VectorClear( angles );
|
|
ADDRLP4 1056
|
|
CNSTF4 0
|
|
ASGNF4
|
|
ADDRLP4 1040+8
|
|
ADDRLP4 1056
|
|
INDIRF4
|
|
ASGNF4
|
|
ADDRLP4 1040+4
|
|
ADDRLP4 1056
|
|
INDIRF4
|
|
ASGNF4
|
|
ADDRLP4 1040
|
|
ADDRLP4 1056
|
|
INDIRF4
|
|
ASGNF4
|
|
line 1749
|
|
;1749: for ( i = 0 ; i < 3 ; i++ ) {
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
LABELV $916
|
|
line 1750
|
|
;1750: trap_Argv( i + 1, buffer, sizeof( buffer ) );
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ARGI4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1751
|
|
;1751: origin[i] = atof( buffer );
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 1060
|
|
ADDRGP4 atof
|
|
CALLF4
|
|
ASGNF4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRLP4 1028
|
|
ADDP4
|
|
ADDRLP4 1060
|
|
INDIRF4
|
|
ASGNF4
|
|
line 1752
|
|
;1752: }
|
|
LABELV $917
|
|
line 1749
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 3
|
|
LTI4 $916
|
|
line 1754
|
|
;1753:
|
|
;1754: trap_Argv( 4, buffer, sizeof( buffer ) );
|
|
CNSTI4 4
|
|
ARGI4
|
|
ADDRLP4 4
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 1755
|
|
;1755: angles[YAW] = atof( buffer );
|
|
ADDRLP4 4
|
|
ARGP4
|
|
ADDRLP4 1060
|
|
ADDRGP4 atof
|
|
CALLF4
|
|
ASGNF4
|
|
ADDRLP4 1040+4
|
|
ADDRLP4 1060
|
|
INDIRF4
|
|
ASGNF4
|
|
line 1757
|
|
;1756:
|
|
;1757: TeleportPlayer( ent, origin, angles );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1028
|
|
ARGP4
|
|
ADDRLP4 1040
|
|
ARGP4
|
|
ADDRGP4 TeleportPlayer
|
|
CALLV
|
|
pop
|
|
line 1758
|
|
;1758:}
|
|
LABELV $907
|
|
endproc Cmd_SetViewpos_f 1064 12
|
|
export Cmd_Stats_f
|
|
proc Cmd_Stats_f 0 0
|
|
line 1767
|
|
;1759:
|
|
;1760:
|
|
;1761:
|
|
;1762:/*
|
|
;1763:=================
|
|
;1764:Cmd_Stats_f
|
|
;1765:=================
|
|
;1766:*/
|
|
;1767:void Cmd_Stats_f( gentity_t *ent ) {
|
|
line 1782
|
|
;1768:/*
|
|
;1769: int max, n, i;
|
|
;1770:
|
|
;1771: max = trap_AAS_PointReachabilityAreaIndex( NULL );
|
|
;1772:
|
|
;1773: n = 0;
|
|
;1774: for ( i = 0; i < max; i++ ) {
|
|
;1775: if ( ent->client->areabits[i >> 3] & (1 << (i & 7)) )
|
|
;1776: n++;
|
|
;1777: }
|
|
;1778:
|
|
;1779: //trap_SendServerCommand( ent-g_entities, va("print \"visited %d of %d areas\n\"", n, max));
|
|
;1780: trap_SendServerCommand( ent-g_entities, va("print \"%d%% level coverage\n\"", n * 100 / max));
|
|
;1781:*/
|
|
;1782:}
|
|
LABELV $921
|
|
endproc Cmd_Stats_f 0 0
|
|
export G_ItemUsable
|
|
proc G_ItemUsable 1228 28
|
|
line 1785
|
|
;1783:
|
|
;1784:int G_ItemUsable(playerState_t *ps, int forcedUse)
|
|
;1785:{
|
|
line 1792
|
|
;1786: vec3_t fwd, fwdorg, dest, pos;
|
|
;1787: vec3_t yawonly;
|
|
;1788: vec3_t mins, maxs;
|
|
;1789: vec3_t trtest;
|
|
;1790: trace_t tr;
|
|
;1791:
|
|
;1792: if (ps->usingATST)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1304
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $923
|
|
line 1793
|
|
;1793: {
|
|
line 1794
|
|
;1794: return 0;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $923
|
|
line 1797
|
|
;1795: }
|
|
;1796:
|
|
;1797: if (ps->pm_flags & PMF_USE_ITEM_HELD)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 12
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 1024
|
|
BANDI4
|
|
CNSTI4 0
|
|
EQI4 $925
|
|
line 1798
|
|
;1798: { //force to let go first
|
|
line 1799
|
|
;1799: return 0;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $925
|
|
line 1802
|
|
;1800: }
|
|
;1801:
|
|
;1802: if (!forcedUse)
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $927
|
|
line 1803
|
|
;1803: {
|
|
line 1804
|
|
;1804: forcedUse = bg_itemlist[ps->stats[STAT_HOLDABLE_ITEM]].giTag;
|
|
ADDRFP4 4
|
|
CNSTI4 52
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 220
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 bg_itemlist+40
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1805
|
|
;1805: }
|
|
LABELV $927
|
|
line 1807
|
|
;1806:
|
|
;1807: switch (forcedUse)
|
|
ADDRLP4 1176
|
|
ADDRFP4 4
|
|
INDIRI4
|
|
ASGNI4
|
|
ADDRLP4 1176
|
|
INDIRI4
|
|
CNSTI4 1
|
|
LTI4 $930
|
|
ADDRLP4 1176
|
|
INDIRI4
|
|
CNSTI4 6
|
|
GTI4 $930
|
|
ADDRLP4 1176
|
|
INDIRI4
|
|
CNSTI4 2
|
|
LSHI4
|
|
ADDRGP4 $989-4
|
|
ADDP4
|
|
INDIRP4
|
|
JUMPV
|
|
lit
|
|
align 4
|
|
LABELV $989
|
|
address $937
|
|
address $967
|
|
address $932
|
|
address $930
|
|
address $930
|
|
address $940
|
|
code
|
|
line 1808
|
|
;1808: {
|
|
LABELV $932
|
|
line 1810
|
|
;1809: case HI_MEDPAC:
|
|
;1810: if (ps->stats[STAT_HEALTH] >= ps->stats[STAT_MAX_HEALTH])
|
|
ADDRLP4 1180
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1180
|
|
INDIRP4
|
|
CNSTI4 216
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1180
|
|
INDIRP4
|
|
CNSTI4 248
|
|
ADDP4
|
|
INDIRI4
|
|
LTI4 $933
|
|
line 1811
|
|
;1811: {
|
|
line 1812
|
|
;1812: return 0;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $933
|
|
line 1815
|
|
;1813: }
|
|
;1814:
|
|
;1815: if (ps->stats[STAT_HEALTH] <= 0)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 216
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
GTI4 $935
|
|
line 1816
|
|
;1816: {
|
|
line 1817
|
|
;1817: return 0;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $935
|
|
line 1820
|
|
;1818: }
|
|
;1819:
|
|
;1820: return 1;
|
|
CNSTI4 1
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $937
|
|
line 1822
|
|
;1821: case HI_SEEKER:
|
|
;1822: if (ps->eFlags & EF_SEEKERDRONE)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 108
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 1048576
|
|
BANDI4
|
|
CNSTI4 0
|
|
EQI4 $938
|
|
line 1823
|
|
;1823: {
|
|
line 1824
|
|
;1824: G_AddEvent(&g_entities[ps->clientNum], EV_ITEMUSEFAIL, SEEKER_ALREADYDEPLOYED);
|
|
CNSTI4 828
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 56
|
|
ARGI4
|
|
CNSTI4 4
|
|
ARGI4
|
|
ADDRGP4 G_AddEvent
|
|
CALLV
|
|
pop
|
|
line 1825
|
|
;1825: return 0;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $938
|
|
line 1828
|
|
;1826: }
|
|
;1827:
|
|
;1828: return 1;
|
|
CNSTI4 1
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $940
|
|
line 1830
|
|
;1829: case HI_SENTRY_GUN:
|
|
;1830: if (ps->fd.sentryDeployed)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 1212
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $941
|
|
line 1831
|
|
;1831: {
|
|
line 1832
|
|
;1832: G_AddEvent(&g_entities[ps->clientNum], EV_ITEMUSEFAIL, SENTRY_ALREADYPLACED);
|
|
CNSTI4 828
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 56
|
|
ARGI4
|
|
CNSTI4 2
|
|
ARGI4
|
|
ADDRGP4 G_AddEvent
|
|
CALLV
|
|
pop
|
|
line 1833
|
|
;1833: return 0;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $941
|
|
line 1836
|
|
;1834: }
|
|
;1835:
|
|
;1836: yawonly[ROLL] = 0;
|
|
ADDRLP4 1140+8
|
|
CNSTF4 0
|
|
ASGNF4
|
|
line 1837
|
|
;1837: yawonly[PITCH] = 0;
|
|
ADDRLP4 1140
|
|
CNSTF4 0
|
|
ASGNF4
|
|
line 1838
|
|
;1838: yawonly[YAW] = ps->viewangles[YAW];
|
|
ADDRLP4 1140+4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 160
|
|
ADDP4
|
|
INDIRF4
|
|
ASGNF4
|
|
line 1840
|
|
;1839:
|
|
;1840: VectorSet( mins, -8, -8, 0 );
|
|
ADDRLP4 1184
|
|
CNSTF4 3238002688
|
|
ASGNF4
|
|
ADDRLP4 1092
|
|
ADDRLP4 1184
|
|
INDIRF4
|
|
ASGNF4
|
|
ADDRLP4 1092+4
|
|
ADDRLP4 1184
|
|
INDIRF4
|
|
ASGNF4
|
|
ADDRLP4 1092+8
|
|
CNSTF4 0
|
|
ASGNF4
|
|
line 1841
|
|
;1841: VectorSet( maxs, 8, 8, 24 );
|
|
ADDRLP4 1188
|
|
CNSTF4 1090519040
|
|
ASGNF4
|
|
ADDRLP4 1104
|
|
ADDRLP4 1188
|
|
INDIRF4
|
|
ASGNF4
|
|
ADDRLP4 1104+4
|
|
ADDRLP4 1188
|
|
INDIRF4
|
|
ASGNF4
|
|
ADDRLP4 1104+8
|
|
CNSTF4 1103101952
|
|
ASGNF4
|
|
line 1843
|
|
;1842:
|
|
;1843: AngleVectors(yawonly, fwd, NULL, NULL);
|
|
ADDRLP4 1140
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1192
|
|
CNSTP4 0
|
|
ASGNP4
|
|
ADDRLP4 1192
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1192
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 AngleVectors
|
|
CALLV
|
|
pop
|
|
line 1845
|
|
;1844:
|
|
;1845: fwdorg[0] = ps->origin[0] + fwd[0]*64;
|
|
ADDRLP4 1116
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 20
|
|
ADDP4
|
|
INDIRF4
|
|
CNSTF4 1115684864
|
|
ADDRLP4 0
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 1846
|
|
;1846: fwdorg[1] = ps->origin[1] + fwd[1]*64;
|
|
ADDRLP4 1116+4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 24
|
|
ADDP4
|
|
INDIRF4
|
|
CNSTF4 1115684864
|
|
ADDRLP4 0+4
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 1847
|
|
;1847: fwdorg[2] = ps->origin[2] + fwd[2]*64;
|
|
ADDRLP4 1116+8
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 28
|
|
ADDP4
|
|
INDIRF4
|
|
CNSTF4 1115684864
|
|
ADDRLP4 0+8
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 1849
|
|
;1848:
|
|
;1849: trtest[0] = fwdorg[0] + fwd[0]*16;
|
|
ADDRLP4 1152
|
|
ADDRLP4 1116
|
|
INDIRF4
|
|
CNSTF4 1098907648
|
|
ADDRLP4 0
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 1850
|
|
;1850: trtest[1] = fwdorg[1] + fwd[1]*16;
|
|
ADDRLP4 1152+4
|
|
ADDRLP4 1116+4
|
|
INDIRF4
|
|
CNSTF4 1098907648
|
|
ADDRLP4 0+4
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 1851
|
|
;1851: trtest[2] = fwdorg[2] + fwd[2]*16;
|
|
ADDRLP4 1152+8
|
|
ADDRLP4 1116+8
|
|
INDIRF4
|
|
CNSTF4 1098907648
|
|
ADDRLP4 0+8
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 1853
|
|
;1852:
|
|
;1853: trap_Trace(&tr, ps->origin, mins, maxs, trtest, ps->clientNum, MASK_PLAYERSOLID);
|
|
ADDRLP4 12
|
|
ARGP4
|
|
ADDRLP4 1196
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1196
|
|
INDIRP4
|
|
CNSTI4 20
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 1092
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
ARGP4
|
|
ADDRLP4 1152
|
|
ARGP4
|
|
ADDRLP4 1196
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 273
|
|
ARGI4
|
|
ADDRGP4 trap_Trace
|
|
CALLV
|
|
pop
|
|
line 1855
|
|
;1854:
|
|
;1855: if ((tr.fraction != 1 && tr.entityNum != ps->clientNum) || tr.startsolid || tr.allsolid)
|
|
ADDRLP4 12+8
|
|
INDIRF4
|
|
CNSTF4 1065353216
|
|
EQF4 $965
|
|
ADDRLP4 12+52
|
|
INDIRI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
NEI4 $966
|
|
LABELV $965
|
|
ADDRLP4 1200
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 12+4
|
|
INDIRI4
|
|
ADDRLP4 1200
|
|
INDIRI4
|
|
NEI4 $966
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
ADDRLP4 1200
|
|
INDIRI4
|
|
EQI4 $959
|
|
LABELV $966
|
|
line 1856
|
|
;1856: {
|
|
line 1857
|
|
;1857: G_AddEvent(&g_entities[ps->clientNum], EV_ITEMUSEFAIL, SENTRY_NOROOM);
|
|
CNSTI4 828
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 56
|
|
ARGI4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 G_AddEvent
|
|
CALLV
|
|
pop
|
|
line 1858
|
|
;1858: return 0;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $959
|
|
line 1861
|
|
;1859: }
|
|
;1860:
|
|
;1861: return 1;
|
|
CNSTI4 1
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $967
|
|
line 1863
|
|
;1862: case HI_SHIELD:
|
|
;1863: mins[0] = -8;
|
|
ADDRLP4 1092
|
|
CNSTF4 3238002688
|
|
ASGNF4
|
|
line 1864
|
|
;1864: mins[1] = -8;
|
|
ADDRLP4 1092+4
|
|
CNSTF4 3238002688
|
|
ASGNF4
|
|
line 1865
|
|
;1865: mins[2] = 0;
|
|
ADDRLP4 1092+8
|
|
CNSTF4 0
|
|
ASGNF4
|
|
line 1867
|
|
;1866:
|
|
;1867: maxs[0] = 8;
|
|
ADDRLP4 1104
|
|
CNSTF4 1090519040
|
|
ASGNF4
|
|
line 1868
|
|
;1868: maxs[1] = 8;
|
|
ADDRLP4 1104+4
|
|
CNSTF4 1090519040
|
|
ASGNF4
|
|
line 1869
|
|
;1869: maxs[2] = 8;
|
|
ADDRLP4 1104+8
|
|
CNSTF4 1090519040
|
|
ASGNF4
|
|
line 1871
|
|
;1870:
|
|
;1871: AngleVectors (ps->viewangles, fwd, NULL, NULL);
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 156
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1204
|
|
CNSTP4 0
|
|
ASGNP4
|
|
ADDRLP4 1204
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1204
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 AngleVectors
|
|
CALLV
|
|
pop
|
|
line 1872
|
|
;1872: fwd[2] = 0;
|
|
ADDRLP4 0+8
|
|
CNSTF4 0
|
|
ASGNF4
|
|
line 1873
|
|
;1873: VectorMA(ps->origin, 64, fwd, dest);
|
|
ADDRLP4 1208
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1212
|
|
CNSTF4 1115684864
|
|
ASGNF4
|
|
ADDRLP4 1128
|
|
ADDRLP4 1208
|
|
INDIRP4
|
|
CNSTI4 20
|
|
ADDP4
|
|
INDIRF4
|
|
ADDRLP4 1212
|
|
INDIRF4
|
|
ADDRLP4 0
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
ADDRLP4 1128+4
|
|
ADDRLP4 1208
|
|
INDIRP4
|
|
CNSTI4 24
|
|
ADDP4
|
|
INDIRF4
|
|
ADDRLP4 1212
|
|
INDIRF4
|
|
ADDRLP4 0+4
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
ADDRLP4 1128+8
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 28
|
|
ADDP4
|
|
INDIRF4
|
|
CNSTF4 1115684864
|
|
ADDRLP4 0+8
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 1874
|
|
;1874: trap_Trace(&tr, ps->origin, mins, maxs, dest, ps->clientNum, MASK_SHOT );
|
|
ADDRLP4 12
|
|
ARGP4
|
|
ADDRLP4 1216
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1216
|
|
INDIRP4
|
|
CNSTI4 20
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 1092
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
ARGP4
|
|
ADDRLP4 1128
|
|
ARGP4
|
|
ADDRLP4 1216
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 769
|
|
ARGI4
|
|
ADDRGP4 trap_Trace
|
|
CALLV
|
|
pop
|
|
line 1875
|
|
;1875: if (tr.fraction > 0.9 && !tr.startsolid && !tr.allsolid)
|
|
ADDRLP4 12+8
|
|
INDIRF4
|
|
CNSTF4 1063675494
|
|
LEF4 $977
|
|
ADDRLP4 1220
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 12+4
|
|
INDIRI4
|
|
ADDRLP4 1220
|
|
INDIRI4
|
|
NEI4 $977
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
ADDRLP4 1220
|
|
INDIRI4
|
|
NEI4 $977
|
|
line 1876
|
|
;1876: {
|
|
line 1877
|
|
;1877: VectorCopy(tr.endpos, pos);
|
|
ADDRLP4 1164
|
|
ADDRLP4 12+12
|
|
INDIRB
|
|
ASGNB 12
|
|
line 1878
|
|
;1878: VectorSet( dest, pos[0], pos[1], pos[2] - 4096 );
|
|
ADDRLP4 1128
|
|
ADDRLP4 1164
|
|
INDIRF4
|
|
ASGNF4
|
|
ADDRLP4 1128+4
|
|
ADDRLP4 1164+4
|
|
INDIRF4
|
|
ASGNF4
|
|
ADDRLP4 1128+8
|
|
ADDRLP4 1164+8
|
|
INDIRF4
|
|
CNSTF4 1166016512
|
|
SUBF4
|
|
ASGNF4
|
|
line 1879
|
|
;1879: trap_Trace( &tr, pos, mins, maxs, dest, ps->clientNum, MASK_SOLID );
|
|
ADDRLP4 12
|
|
ARGP4
|
|
ADDRLP4 1164
|
|
ARGP4
|
|
ADDRLP4 1092
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
ARGP4
|
|
ADDRLP4 1128
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 trap_Trace
|
|
CALLV
|
|
pop
|
|
line 1880
|
|
;1880: if ( !tr.startsolid && !tr.allsolid )
|
|
ADDRLP4 1224
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 12+4
|
|
INDIRI4
|
|
ADDRLP4 1224
|
|
INDIRI4
|
|
NEI4 $986
|
|
ADDRLP4 12
|
|
INDIRI4
|
|
ADDRLP4 1224
|
|
INDIRI4
|
|
NEI4 $986
|
|
line 1881
|
|
;1881: {
|
|
line 1882
|
|
;1882: return 1;
|
|
CNSTI4 1
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $986
|
|
line 1884
|
|
;1883: }
|
|
;1884: }
|
|
LABELV $977
|
|
line 1885
|
|
;1885: G_AddEvent(&g_entities[ps->clientNum], EV_ITEMUSEFAIL, SHIELD_NOROOM);
|
|
CNSTI4 828
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 144
|
|
ADDP4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ARGP4
|
|
CNSTI4 56
|
|
ARGI4
|
|
CNSTI4 3
|
|
ARGI4
|
|
ADDRGP4 G_AddEvent
|
|
CALLV
|
|
pop
|
|
line 1886
|
|
;1886: return 0;
|
|
CNSTI4 0
|
|
RETI4
|
|
ADDRGP4 $922
|
|
JUMPV
|
|
LABELV $930
|
|
line 1888
|
|
;1887: default:
|
|
;1888: return 1;
|
|
CNSTI4 1
|
|
RETI4
|
|
LABELV $922
|
|
endproc G_ItemUsable 1228 28
|
|
export Cmd_ToggleSaber_f
|
|
proc Cmd_ToggleSaber_f 12 12
|
|
line 1896
|
|
;1889: }
|
|
;1890:}
|
|
;1891:
|
|
;1892:extern int saberOffSound;
|
|
;1893:extern int saberOnSound;
|
|
;1894:
|
|
;1895:void Cmd_ToggleSaber_f(gentity_t *ent)
|
|
;1896:{
|
|
line 1897
|
|
;1897: if (!saberOffSound || !saberOnSound)
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 saberOffSound
|
|
INDIRI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
EQI4 $994
|
|
ADDRGP4 saberOnSound
|
|
INDIRI4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
NEI4 $992
|
|
LABELV $994
|
|
line 1898
|
|
;1898: {
|
|
line 1899
|
|
;1899: saberOffSound = G_SoundIndex("sound/weapons/saber/saberoffquick.wav");
|
|
ADDRGP4 $995
|
|
ARGP4
|
|
ADDRLP4 4
|
|
ADDRGP4 G_SoundIndex
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRGP4 saberOffSound
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1900
|
|
;1900: saberOnSound = G_SoundIndex("sound/weapons/saber/saberon.wav");
|
|
ADDRGP4 $996
|
|
ARGP4
|
|
ADDRLP4 8
|
|
ADDRGP4 G_SoundIndex
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRGP4 saberOnSound
|
|
ADDRLP4 8
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1901
|
|
;1901: }
|
|
LABELV $992
|
|
line 1903
|
|
;1902:
|
|
;1903: if (ent->client->ps.saberInFlight)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 504
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $997
|
|
line 1904
|
|
;1904: {
|
|
line 1905
|
|
;1905: return;
|
|
ADDRGP4 $991
|
|
JUMPV
|
|
LABELV $997
|
|
line 1908
|
|
;1906: }
|
|
;1907:
|
|
;1908: if (ent->client->ps.forceHandExtend != HANDEXTEND_NONE)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1236
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $999
|
|
line 1909
|
|
;1909: {
|
|
line 1910
|
|
;1910: return;
|
|
ADDRGP4 $991
|
|
JUMPV
|
|
LABELV $999
|
|
line 1913
|
|
;1911: }
|
|
;1912:
|
|
;1913: if (ent->client->ps.weapon != WP_SABER)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 148
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $1001
|
|
line 1914
|
|
;1914: {
|
|
line 1915
|
|
;1915: return;
|
|
ADDRGP4 $991
|
|
JUMPV
|
|
LABELV $1001
|
|
line 1923
|
|
;1916: }
|
|
;1917:
|
|
;1918:// if (ent->client->ps.duelInProgress && !ent->client->ps.saberHolstered)
|
|
;1919:// {
|
|
;1920:// return;
|
|
;1921:// }
|
|
;1922:
|
|
;1923: if (ent->client->ps.duelTime >= level.time)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1288
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
LTI4 $1003
|
|
line 1924
|
|
;1924: {
|
|
line 1925
|
|
;1925: return;
|
|
ADDRGP4 $991
|
|
JUMPV
|
|
LABELV $1003
|
|
line 1928
|
|
;1926: }
|
|
;1927:
|
|
;1928: if (ent->client && ent->client->ps.weaponTime < 1)
|
|
ADDRLP4 4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $1006
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
CNSTI4 44
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
GEI4 $1006
|
|
line 1929
|
|
;1929: {
|
|
line 1930
|
|
;1930: if (ent->client->ps.saberHolstered)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1008
|
|
line 1931
|
|
;1931: {
|
|
line 1932
|
|
;1932: ent->client->ps.saberHolstered = qfalse;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 1933
|
|
;1933: G_Sound(ent, CHAN_AUTO, saberOnSound);
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 saberOnSound
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Sound
|
|
CALLV
|
|
pop
|
|
line 1934
|
|
;1934: }
|
|
ADDRGP4 $1009
|
|
JUMPV
|
|
LABELV $1008
|
|
line 1936
|
|
;1935: else
|
|
;1936: {
|
|
line 1937
|
|
;1937: ent->client->ps.saberHolstered = qtrue;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 1938
|
|
;1938: G_Sound(ent, CHAN_AUTO, saberOffSound);
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 saberOffSound
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Sound
|
|
CALLV
|
|
pop
|
|
line 1941
|
|
;1939:
|
|
;1940: //prevent anything from being done for 400ms after holster
|
|
;1941: ent->client->ps.weaponTime = 400;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 44
|
|
ADDP4
|
|
CNSTI4 400
|
|
ASGNI4
|
|
line 1942
|
|
;1942: }
|
|
LABELV $1009
|
|
line 1943
|
|
;1943: }
|
|
LABELV $1006
|
|
line 1944
|
|
;1944:}
|
|
LABELV $991
|
|
endproc Cmd_ToggleSaber_f 12 12
|
|
export Cmd_SaberAttackCycle_f
|
|
proc Cmd_SaberAttackCycle_f 12 0
|
|
line 1947
|
|
;1945:
|
|
;1946:void Cmd_SaberAttackCycle_f(gentity_t *ent)
|
|
;1947:{
|
|
line 1948
|
|
;1948: int selectLevel = 0;
|
|
ADDRLP4 0
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 1950
|
|
;1949:
|
|
;1950: if ( !ent || !ent->client )
|
|
ADDRLP4 4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 8
|
|
CNSTU4 0
|
|
ASGNU4
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 8
|
|
INDIRU4
|
|
EQU4 $1013
|
|
ADDRLP4 4
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 8
|
|
INDIRU4
|
|
NEU4 $1011
|
|
LABELV $1013
|
|
line 1951
|
|
;1951: {
|
|
line 1952
|
|
;1952: return;
|
|
ADDRGP4 $1010
|
|
JUMPV
|
|
LABELV $1011
|
|
line 1961
|
|
;1953: }
|
|
;1954: /*
|
|
;1955: if (ent->client->ps.weaponTime > 0)
|
|
;1956: { //no switching attack level when busy
|
|
;1957: return;
|
|
;1958: }
|
|
;1959: */
|
|
;1960:
|
|
;1961: if (ent->client->saberCycleQueue)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1568
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1014
|
|
line 1962
|
|
;1962: { //resume off of the queue if we haven't gotten a chance to update it yet
|
|
line 1963
|
|
;1963: selectLevel = ent->client->saberCycleQueue;
|
|
ADDRLP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1568
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1964
|
|
;1964: }
|
|
ADDRGP4 $1015
|
|
JUMPV
|
|
LABELV $1014
|
|
line 1966
|
|
;1965: else
|
|
;1966: {
|
|
line 1967
|
|
;1967: selectLevel = ent->client->ps.fd.saberAnimLevel;
|
|
ADDRLP4 0
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1216
|
|
ADDP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1968
|
|
;1968: }
|
|
LABELV $1015
|
|
line 1970
|
|
;1969:
|
|
;1970: selectLevel++;
|
|
ADDRLP4 0
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 1971
|
|
;1971: if ( selectLevel > ent->client->ps.fd.forcePowerLevel[FP_SABERATTACK] )
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 992
|
|
ADDP4
|
|
INDIRI4
|
|
LEI4 $1016
|
|
line 1972
|
|
;1972: {
|
|
line 1973
|
|
;1973: selectLevel = FORCE_LEVEL_1;
|
|
ADDRLP4 0
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 1974
|
|
;1974: }
|
|
LABELV $1016
|
|
line 1991
|
|
;1975:/*
|
|
;1976:#ifndef FINAL_BUILD
|
|
;1977: switch ( selectLevel )
|
|
;1978: {
|
|
;1979: case FORCE_LEVEL_1:
|
|
;1980: trap_SendServerCommand( ent-g_entities, va("print \"Lightsaber Combat Style: %sfast\n\"", S_COLOR_BLUE) );
|
|
;1981: break;
|
|
;1982: case FORCE_LEVEL_2:
|
|
;1983: trap_SendServerCommand( ent-g_entities, va("print \"Lightsaber Combat Style: %smedium\n\"", S_COLOR_YELLOW) );
|
|
;1984: break;
|
|
;1985: case FORCE_LEVEL_3:
|
|
;1986: trap_SendServerCommand( ent-g_entities, va("print \"Lightsaber Combat Style: %sstrong\n\"", S_COLOR_RED) );
|
|
;1987: break;
|
|
;1988: }
|
|
;1989:#endif
|
|
;1990:*/
|
|
;1991: if (ent->client->ps.weaponTime <= 0)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 44
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
GTI4 $1018
|
|
line 1992
|
|
;1992: { //not busy, set it now
|
|
line 1993
|
|
;1993: ent->client->ps.fd.saberAnimLevel = selectLevel;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1216
|
|
ADDP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1994
|
|
;1994: }
|
|
ADDRGP4 $1019
|
|
JUMPV
|
|
LABELV $1018
|
|
line 1996
|
|
;1995: else
|
|
;1996: { //can't set it now or we might cause unexpected chaining, so queue it
|
|
line 1997
|
|
;1997: ent->client->saberCycleQueue = selectLevel;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1568
|
|
ADDP4
|
|
ADDRLP4 0
|
|
INDIRI4
|
|
ASGNI4
|
|
line 1998
|
|
;1998: }
|
|
LABELV $1019
|
|
line 1999
|
|
;1999:}
|
|
LABELV $1010
|
|
endproc Cmd_SaberAttackCycle_f 12 0
|
|
export G_OtherPlayersDueling
|
|
proc G_OtherPlayersDueling 24 0
|
|
line 2002
|
|
;2000:
|
|
;2001:qboolean G_OtherPlayersDueling(void)
|
|
;2002:{
|
|
line 2003
|
|
;2003: int i = 0;
|
|
ADDRLP4 4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRGP4 $1022
|
|
JUMPV
|
|
LABELV $1021
|
|
line 2007
|
|
;2004: gentity_t *ent;
|
|
;2005:
|
|
;2006: while (i < MAX_CLIENTS)
|
|
;2007: {
|
|
line 2008
|
|
;2008: ent = &g_entities[i];
|
|
ADDRLP4 0
|
|
CNSTI4 828
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 2010
|
|
;2009:
|
|
;2010: if (ent && ent->inuse && ent->client && ent->client->ps.duelInProgress)
|
|
ADDRLP4 12
|
|
CNSTU4 0
|
|
ASGNU4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 12
|
|
INDIRU4
|
|
EQU4 $1024
|
|
ADDRLP4 16
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 412
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 16
|
|
INDIRI4
|
|
EQI4 $1024
|
|
ADDRLP4 20
|
|
ADDRLP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 20
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 12
|
|
INDIRU4
|
|
EQU4 $1024
|
|
ADDRLP4 20
|
|
INDIRP4
|
|
CNSTI4 1292
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 16
|
|
INDIRI4
|
|
EQI4 $1024
|
|
line 2011
|
|
;2011: {
|
|
line 2012
|
|
;2012: return qtrue;
|
|
CNSTI4 1
|
|
RETI4
|
|
ADDRGP4 $1020
|
|
JUMPV
|
|
LABELV $1024
|
|
line 2014
|
|
;2013: }
|
|
;2014: i++;
|
|
ADDRLP4 4
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 1
|
|
ADDI4
|
|
ASGNI4
|
|
line 2015
|
|
;2015: }
|
|
LABELV $1022
|
|
line 2006
|
|
ADDRLP4 4
|
|
INDIRI4
|
|
CNSTI4 32
|
|
LTI4 $1021
|
|
line 2017
|
|
;2016:
|
|
;2017: return qfalse;
|
|
CNSTI4 0
|
|
RETI4
|
|
LABELV $1020
|
|
endproc G_OtherPlayersDueling 24 0
|
|
export Cmd_EngageDuel_f
|
|
proc Cmd_EngageDuel_f 1172 28
|
|
line 2021
|
|
;2018:}
|
|
;2019:
|
|
;2020:void Cmd_EngageDuel_f(gentity_t *ent)
|
|
;2021:{
|
|
line 2025
|
|
;2022: trace_t tr;
|
|
;2023: vec3_t forward, fwdOrg;
|
|
;2024:
|
|
;2025: if (!g_privateDuel.integer)
|
|
ADDRGP4 g_privateDuel+12
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1027
|
|
line 2026
|
|
;2026: {
|
|
line 2027
|
|
;2027: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1027
|
|
line 2030
|
|
;2028: }
|
|
;2029:
|
|
;2030: if (g_gametype.integer == GT_TOURNAMENT)
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 3
|
|
NEI4 $1030
|
|
line 2031
|
|
;2031: { //rather pointless in this mode..
|
|
line 2032
|
|
;2032: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NODUEL_GAMETYPE")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $1033
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1108
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2033
|
|
;2033: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1030
|
|
line 2036
|
|
;2034: }
|
|
;2035:
|
|
;2036: if (g_gametype.integer >= GT_TEAM)
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 5
|
|
LTI4 $1034
|
|
line 2037
|
|
;2037: { //no private dueling in team modes
|
|
line 2038
|
|
;2038: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "NODUEL_GAMETYPE")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $1033
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1108
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2039
|
|
;2039: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1034
|
|
line 2042
|
|
;2040: }
|
|
;2041:
|
|
;2042: if (ent->client->ps.duelTime >= level.time)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1288
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
LTI4 $1037
|
|
line 2043
|
|
;2043: {
|
|
line 2044
|
|
;2044: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1037
|
|
line 2047
|
|
;2045: }
|
|
;2046:
|
|
;2047: if (ent->client->ps.weapon != WP_SABER)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 148
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
EQI4 $1040
|
|
line 2048
|
|
;2048: {
|
|
line 2049
|
|
;2049: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1040
|
|
line 2060
|
|
;2050: }
|
|
;2051:
|
|
;2052: /*
|
|
;2053: if (!ent->client->ps.saberHolstered)
|
|
;2054: { //must have saber holstered at the start of the duel
|
|
;2055: return;
|
|
;2056: }
|
|
;2057: */
|
|
;2058: //NOTE: No longer doing this..
|
|
;2059:
|
|
;2060: if (ent->client->ps.saberInFlight)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 504
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1042
|
|
line 2061
|
|
;2061: {
|
|
line 2062
|
|
;2062: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1042
|
|
line 2065
|
|
;2063: }
|
|
;2064:
|
|
;2065: if (ent->client->ps.duelInProgress)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1292
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1044
|
|
line 2066
|
|
;2066: {
|
|
line 2067
|
|
;2067: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1044
|
|
line 2071
|
|
;2068: }
|
|
;2069:
|
|
;2070: //New: Don't let a player duel if he just did and hasn't waited 10 seconds yet (note: If someone challenges him, his duel timer will reset so he can accept)
|
|
;2071: if (ent->client->ps.fd.privateDuelTime > level.time)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1228
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
LEI4 $1046
|
|
line 2072
|
|
;2072: {
|
|
line 2073
|
|
;2073: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "CANTDUEL_JUSTDID")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $1049
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1108
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2074
|
|
;2074: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1046
|
|
line 2077
|
|
;2075: }
|
|
;2076:
|
|
;2077: if (G_OtherPlayersDueling())
|
|
ADDRLP4 1104
|
|
ADDRGP4 G_OtherPlayersDueling
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1104
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1050
|
|
line 2078
|
|
;2078: {
|
|
line 2079
|
|
;2079: trap_SendServerCommand( ent-g_entities, va("print \"%s\n\"", G_GetStripEdString("SVINGAME", "CANTDUEL_BUSY")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $1052
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $115
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1112
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1112
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2080
|
|
;2080: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1050
|
|
line 2083
|
|
;2081: }
|
|
;2082:
|
|
;2083: AngleVectors( ent->client->ps.viewangles, forward, NULL, NULL );
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 156
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
CNSTP4 0
|
|
ASGNP4
|
|
ADDRLP4 1108
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 AngleVectors
|
|
CALLV
|
|
pop
|
|
line 2085
|
|
;2084:
|
|
;2085: fwdOrg[0] = ent->client->ps.origin[0] + forward[0]*256;
|
|
ADDRLP4 12
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 20
|
|
ADDP4
|
|
INDIRF4
|
|
CNSTF4 1132462080
|
|
ADDRLP4 0
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 2086
|
|
;2086: fwdOrg[1] = ent->client->ps.origin[1] + forward[1]*256;
|
|
ADDRLP4 12+4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 24
|
|
ADDP4
|
|
INDIRF4
|
|
CNSTF4 1132462080
|
|
ADDRLP4 0+4
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 2087
|
|
;2087: fwdOrg[2] = (ent->client->ps.origin[2]+ent->client->ps.viewheight) + forward[2]*256;
|
|
ADDRLP4 1112
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 12+8
|
|
ADDRLP4 1112
|
|
INDIRP4
|
|
CNSTI4 28
|
|
ADDP4
|
|
INDIRF4
|
|
ADDRLP4 1112
|
|
INDIRP4
|
|
CNSTI4 168
|
|
ADDP4
|
|
INDIRI4
|
|
CVIF4 4
|
|
ADDF4
|
|
CNSTF4 1132462080
|
|
ADDRLP4 0+8
|
|
INDIRF4
|
|
MULF4
|
|
ADDF4
|
|
ASGNF4
|
|
line 2089
|
|
;2088:
|
|
;2089: trap_Trace(&tr, ent->client->ps.origin, NULL, NULL, fwdOrg, ent->s.number, MASK_PLAYERSOLID);
|
|
ADDRLP4 24
|
|
ARGP4
|
|
ADDRLP4 1116
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1116
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 20
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 1120
|
|
CNSTP4 0
|
|
ASGNP4
|
|
ADDRLP4 1120
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1120
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 12
|
|
ARGP4
|
|
ADDRLP4 1116
|
|
INDIRP4
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 273
|
|
ARGI4
|
|
ADDRGP4 trap_Trace
|
|
CALLV
|
|
pop
|
|
line 2091
|
|
;2090:
|
|
;2091: if (tr.fraction != 1 && tr.entityNum < MAX_CLIENTS)
|
|
ADDRLP4 24+8
|
|
INDIRF4
|
|
CNSTF4 1065353216
|
|
EQF4 $1057
|
|
ADDRLP4 24+52
|
|
INDIRI4
|
|
CNSTI4 32
|
|
GEI4 $1057
|
|
line 2092
|
|
;2092: {
|
|
line 2093
|
|
;2093: gentity_t *challenged = &g_entities[tr.entityNum];
|
|
ADDRLP4 1124
|
|
CNSTI4 828
|
|
ADDRLP4 24+52
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 2095
|
|
;2094:
|
|
;2095: if (!challenged || !challenged->client || !challenged->inuse ||
|
|
ADDRLP4 1132
|
|
CNSTU4 0
|
|
ASGNU4
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 1132
|
|
INDIRU4
|
|
EQU4 $1070
|
|
ADDRLP4 1136
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1136
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 1132
|
|
INDIRU4
|
|
EQU4 $1070
|
|
ADDRLP4 1140
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 412
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1140
|
|
INDIRI4
|
|
EQI4 $1070
|
|
ADDRLP4 1144
|
|
CNSTI4 1
|
|
ASGNI4
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 676
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1144
|
|
INDIRI4
|
|
LTI4 $1070
|
|
ADDRLP4 1136
|
|
INDIRP4
|
|
CNSTI4 216
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1144
|
|
INDIRI4
|
|
LTI4 $1070
|
|
ADDRLP4 1136
|
|
INDIRP4
|
|
CNSTI4 148
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $1070
|
|
ADDRLP4 1136
|
|
INDIRP4
|
|
CNSTI4 1292
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1140
|
|
INDIRI4
|
|
NEI4 $1070
|
|
ADDRLP4 1136
|
|
INDIRP4
|
|
CNSTI4 504
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1140
|
|
INDIRI4
|
|
EQI4 $1062
|
|
LABELV $1070
|
|
line 2099
|
|
;2096: challenged->health < 1 || challenged->client->ps.stats[STAT_HEALTH] < 1 ||
|
|
;2097: challenged->client->ps.weapon != WP_SABER || challenged->client->ps.duelInProgress ||
|
|
;2098: challenged->client->ps.saberInFlight)
|
|
;2099: {
|
|
line 2100
|
|
;2100: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1062
|
|
line 2103
|
|
;2101: }
|
|
;2102:
|
|
;2103: if (g_gametype.integer >= GT_TEAM && OnSameTeam(ent, challenged))
|
|
ADDRGP4 g_gametype+12
|
|
INDIRI4
|
|
CNSTI4 5
|
|
LTI4 $1071
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1148
|
|
ADDRGP4 OnSameTeam
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1148
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1071
|
|
line 2104
|
|
;2104: {
|
|
line 2105
|
|
;2105: return;
|
|
ADDRGP4 $1026
|
|
JUMPV
|
|
LABELV $1071
|
|
line 2108
|
|
;2106: }
|
|
;2107:
|
|
;2108: if (challenged->client->ps.duelIndex == ent->s.number && challenged->client->ps.duelTime >= level.time)
|
|
ADDRLP4 1152
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1152
|
|
INDIRP4
|
|
CNSTI4 1284
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
INDIRI4
|
|
NEI4 $1074
|
|
ADDRLP4 1152
|
|
INDIRP4
|
|
CNSTI4 1288
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
LTI4 $1074
|
|
line 2109
|
|
;2109: {
|
|
line 2110
|
|
;2110: trap_SendServerCommand( /*challenged-g_entities*/-1, va("print \"%s %s %s!\n\"", challenged->client->pers.netname, G_GetStripEdString("SVINGAME", "PLDUELACCEPT"), ent->client->pers.netname) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $1078
|
|
ARGP4
|
|
ADDRLP4 1156
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $1077
|
|
ARGP4
|
|
ADDRLP4 1160
|
|
CNSTI4 408
|
|
ASGNI4
|
|
ADDRLP4 1164
|
|
CNSTI4 1416
|
|
ASGNI4
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
ADDRLP4 1160
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 1164
|
|
INDIRI4
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 1156
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ADDRLP4 1160
|
|
INDIRI4
|
|
ADDP4
|
|
INDIRP4
|
|
ADDRLP4 1164
|
|
INDIRI4
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 1168
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 -1
|
|
ARGI4
|
|
ADDRLP4 1168
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2112
|
|
;2111:
|
|
;2112: ent->client->ps.duelInProgress = qtrue;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1292
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2113
|
|
;2113: challenged->client->ps.duelInProgress = qtrue;
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1292
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2115
|
|
;2114:
|
|
;2115: ent->client->ps.duelTime = level.time + 2000;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1288
|
|
ADDP4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
CNSTI4 2000
|
|
ADDI4
|
|
ASGNI4
|
|
line 2116
|
|
;2116: challenged->client->ps.duelTime = level.time + 2000;
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1288
|
|
ADDP4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
CNSTI4 2000
|
|
ADDI4
|
|
ASGNI4
|
|
line 2118
|
|
;2117:
|
|
;2118: G_AddEvent(ent, EV_PRIVATE_DUEL, 1);
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 13
|
|
ARGI4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 G_AddEvent
|
|
CALLV
|
|
pop
|
|
line 2119
|
|
;2119: G_AddEvent(challenged, EV_PRIVATE_DUEL, 1);
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 13
|
|
ARGI4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 G_AddEvent
|
|
CALLV
|
|
pop
|
|
line 2123
|
|
;2120:
|
|
;2121: //Holster their sabers now, until the duel starts (then they'll get auto-turned on to look cool)
|
|
;2122:
|
|
;2123: if (!ent->client->ps.saberHolstered)
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1081
|
|
line 2124
|
|
;2124: {
|
|
line 2125
|
|
;2125: G_Sound(ent, CHAN_AUTO, saberOffSound);
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 saberOffSound
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Sound
|
|
CALLV
|
|
pop
|
|
line 2126
|
|
;2126: ent->client->ps.weaponTime = 400;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 44
|
|
ADDP4
|
|
CNSTI4 400
|
|
ASGNI4
|
|
line 2127
|
|
;2127: ent->client->ps.saberHolstered = qtrue;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2128
|
|
;2128: }
|
|
LABELV $1081
|
|
line 2129
|
|
;2129: if (!challenged->client->ps.saberHolstered)
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1075
|
|
line 2130
|
|
;2130: {
|
|
line 2131
|
|
;2131: G_Sound(challenged, CHAN_AUTO, saberOffSound);
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 saberOffSound
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 G_Sound
|
|
CALLV
|
|
pop
|
|
line 2132
|
|
;2132: challenged->client->ps.weaponTime = 400;
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 44
|
|
ADDP4
|
|
CNSTI4 400
|
|
ASGNI4
|
|
line 2133
|
|
;2133: challenged->client->ps.saberHolstered = qtrue;
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2134
|
|
;2134: }
|
|
line 2135
|
|
;2135: }
|
|
ADDRGP4 $1075
|
|
JUMPV
|
|
LABELV $1074
|
|
line 2137
|
|
;2136: else
|
|
;2137: {
|
|
line 2139
|
|
;2138: //Print the message that a player has been challenged in private, only announce the actual duel initiation in private
|
|
;2139: trap_SendServerCommand( challenged-g_entities, va("cp \"%s %s\n\"", ent->client->pers.netname, G_GetStripEdString("SVINGAME", "PLDUELCHALLENGE")) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $1086
|
|
ARGP4
|
|
ADDRLP4 1156
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $1085
|
|
ARGP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 1156
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1160
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1160
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2140
|
|
;2140: trap_SendServerCommand( ent-g_entities, va("cp \"%s %s\n\"", G_GetStripEdString("SVINGAME", "PLDUELCHALLENGED"), challenged->client->pers.netname) );
|
|
ADDRGP4 $116
|
|
ARGP4
|
|
ADDRGP4 $1087
|
|
ARGP4
|
|
ADDRLP4 1164
|
|
ADDRGP4 G_GetStripEdString
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRGP4 $1085
|
|
ARGP4
|
|
ADDRLP4 1164
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1416
|
|
ADDP4
|
|
ARGP4
|
|
ADDRLP4 1168
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRGP4 g_entities
|
|
CVPU4 4
|
|
SUBU4
|
|
CVUI4 4
|
|
CNSTI4 828
|
|
DIVI4
|
|
ARGI4
|
|
ADDRLP4 1168
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2141
|
|
;2141: }
|
|
LABELV $1075
|
|
line 2143
|
|
;2142:
|
|
;2143: challenged->client->ps.fd.privateDuelTime = 0; //reset the timer in case this player just got out of a duel. He should still be able to accept the challenge.
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1228
|
|
ADDP4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 2145
|
|
;2144:
|
|
;2145: ent->client->ps.forceHandExtend = HANDEXTEND_DUELCHALLENGE;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1236
|
|
ADDP4
|
|
CNSTI4 9
|
|
ASGNI4
|
|
line 2146
|
|
;2146: ent->client->ps.forceHandExtendTime = level.time + 1000;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1240
|
|
ADDP4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
CNSTI4 1000
|
|
ADDI4
|
|
ASGNI4
|
|
line 2148
|
|
;2147:
|
|
;2148: ent->client->ps.duelIndex = challenged->s.number;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1284
|
|
ADDP4
|
|
ADDRLP4 1124
|
|
INDIRP4
|
|
INDIRI4
|
|
ASGNI4
|
|
line 2149
|
|
;2149: ent->client->ps.duelTime = level.time + 5000;
|
|
ADDRFP4 0
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1288
|
|
ADDP4
|
|
ADDRGP4 level+32
|
|
INDIRI4
|
|
CNSTI4 5000
|
|
ADDI4
|
|
ASGNI4
|
|
line 2150
|
|
;2150: }
|
|
LABELV $1057
|
|
line 2151
|
|
;2151:}
|
|
LABELV $1026
|
|
endproc Cmd_EngageDuel_f 1172 28
|
|
export ClientCommand
|
|
proc ClientCommand 1200 20
|
|
line 2158
|
|
;2152:
|
|
;2153:/*
|
|
;2154:=================
|
|
;2155:ClientCommand
|
|
;2156:=================
|
|
;2157:*/
|
|
;2158:void ClientCommand( int clientNum ) {
|
|
line 2162
|
|
;2159: gentity_t *ent;
|
|
;2160: char cmd[MAX_TOKEN_CHARS];
|
|
;2161:
|
|
;2162: ent = g_entities + clientNum;
|
|
ADDRLP4 1024
|
|
CNSTI4 828
|
|
ADDRFP4 0
|
|
INDIRI4
|
|
MULI4
|
|
ADDRGP4 g_entities
|
|
ADDP4
|
|
ASGNP4
|
|
line 2163
|
|
;2163: if ( !ent->client ) {
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
NEU4 $1091
|
|
line 2164
|
|
;2164: return; // not fully in game yet
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1091
|
|
line 2168
|
|
;2165: }
|
|
;2166:
|
|
;2167:
|
|
;2168: trap_Argv( 0, cmd, sizeof( cmd ) );
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
CNSTI4 1024
|
|
ARGI4
|
|
ADDRGP4 trap_Argv
|
|
CALLV
|
|
pop
|
|
line 2171
|
|
;2169:
|
|
;2170: //rww - redirect bot commands
|
|
;2171: if (strstr(cmd, "bot_") && AcceptBotCommand(cmd, ent))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1095
|
|
ARGP4
|
|
ADDRLP4 1028
|
|
ADDRGP4 strstr
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRLP4 1028
|
|
INDIRP4
|
|
CVPU4 4
|
|
CNSTU4 0
|
|
EQU4 $1093
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1032
|
|
ADDRGP4 AcceptBotCommand
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1032
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1093
|
|
line 2172
|
|
;2172: {
|
|
line 2173
|
|
;2173: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1093
|
|
line 2177
|
|
;2174: }
|
|
;2175: //end rww
|
|
;2176:
|
|
;2177: if (Q_stricmp (cmd, "say") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1098
|
|
ARGP4
|
|
ADDRLP4 1036
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1036
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1096
|
|
line 2178
|
|
;2178: Cmd_Say_f (ent, SAY_ALL, qfalse);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1040
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 1040
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1040
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 Cmd_Say_f
|
|
CALLV
|
|
pop
|
|
line 2179
|
|
;2179: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1096
|
|
line 2181
|
|
;2180: }
|
|
;2181: if (Q_stricmp (cmd, "say_team") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1101
|
|
ARGP4
|
|
ADDRLP4 1040
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1040
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1099
|
|
line 2182
|
|
;2182: Cmd_Say_f (ent, SAY_TEAM, qfalse);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 1
|
|
ARGI4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 Cmd_Say_f
|
|
CALLV
|
|
pop
|
|
line 2183
|
|
;2183: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1099
|
|
line 2185
|
|
;2184: }
|
|
;2185: if (Q_stricmp (cmd, "tell") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1104
|
|
ARGP4
|
|
ADDRLP4 1044
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1044
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1102
|
|
line 2186
|
|
;2186: Cmd_Tell_f ( ent );
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Tell_f
|
|
CALLV
|
|
pop
|
|
line 2187
|
|
;2187: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1102
|
|
line 2189
|
|
;2188: }
|
|
;2189: if (Q_stricmp (cmd, "vsay") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1107
|
|
ARGP4
|
|
ADDRLP4 1048
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1048
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1105
|
|
line 2190
|
|
;2190: Cmd_Voice_f (ent, SAY_ALL, qfalse, qfalse);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1052
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 1052
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1052
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1052
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 Cmd_Voice_f
|
|
CALLV
|
|
pop
|
|
line 2191
|
|
;2191: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1105
|
|
line 2193
|
|
;2192: }
|
|
;2193: if (Q_stricmp (cmd, "vsay_team") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1110
|
|
ARGP4
|
|
ADDRLP4 1052
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1052
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1108
|
|
line 2194
|
|
;2194: Cmd_Voice_f (ent, SAY_TEAM, qfalse, qfalse);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRLP4 1056
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 1056
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1056
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 Cmd_Voice_f
|
|
CALLV
|
|
pop
|
|
line 2195
|
|
;2195: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1108
|
|
line 2197
|
|
;2196: }
|
|
;2197: if (Q_stricmp (cmd, "vtell") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $545
|
|
ARGP4
|
|
ADDRLP4 1056
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1056
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1111
|
|
line 2198
|
|
;2198: Cmd_VoiceTell_f ( ent, qfalse );
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRGP4 Cmd_VoiceTell_f
|
|
CALLV
|
|
pop
|
|
line 2199
|
|
;2199: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1111
|
|
line 2201
|
|
;2200: }
|
|
;2201: if (Q_stricmp (cmd, "vosay") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1115
|
|
ARGP4
|
|
ADDRLP4 1060
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1060
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1113
|
|
line 2202
|
|
;2202: Cmd_Voice_f (ent, SAY_ALL, qfalse, qtrue);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1064
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 1064
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1064
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 Cmd_Voice_f
|
|
CALLV
|
|
pop
|
|
line 2203
|
|
;2203: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1113
|
|
line 2205
|
|
;2204: }
|
|
;2205: if (Q_stricmp (cmd, "vosay_team") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1118
|
|
ARGP4
|
|
ADDRLP4 1064
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1064
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1116
|
|
line 2206
|
|
;2206: Cmd_Voice_f (ent, SAY_TEAM, qfalse, qtrue);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1068
|
|
CNSTI4 1
|
|
ASGNI4
|
|
ADDRLP4 1068
|
|
INDIRI4
|
|
ARGI4
|
|
CNSTI4 0
|
|
ARGI4
|
|
ADDRLP4 1068
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRGP4 Cmd_Voice_f
|
|
CALLV
|
|
pop
|
|
line 2207
|
|
;2207: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1116
|
|
line 2209
|
|
;2208: }
|
|
;2209: if (Q_stricmp (cmd, "votell") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1121
|
|
ARGP4
|
|
ADDRLP4 1068
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1068
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1119
|
|
line 2210
|
|
;2210: Cmd_VoiceTell_f ( ent, qtrue );
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 Cmd_VoiceTell_f
|
|
CALLV
|
|
pop
|
|
line 2211
|
|
;2211: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1119
|
|
line 2213
|
|
;2212: }
|
|
;2213: if (Q_stricmp (cmd, "vtaunt") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1124
|
|
ARGP4
|
|
ADDRLP4 1072
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1072
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1122
|
|
line 2214
|
|
;2214: Cmd_VoiceTaunt_f ( ent );
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_VoiceTaunt_f
|
|
CALLV
|
|
pop
|
|
line 2215
|
|
;2215: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1122
|
|
line 2217
|
|
;2216: }
|
|
;2217: if (Q_stricmp (cmd, "score") == 0) {
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $310
|
|
ARGP4
|
|
ADDRLP4 1076
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1076
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1125
|
|
line 2218
|
|
;2218: Cmd_Score_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Score_f
|
|
CALLV
|
|
pop
|
|
line 2219
|
|
;2219: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1125
|
|
line 2223
|
|
;2220: }
|
|
;2221:
|
|
;2222: // ignore all other commands when at intermission
|
|
;2223: if (level.intermissiontime)
|
|
ADDRGP4 level+9008
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1127
|
|
line 2224
|
|
;2224: {
|
|
line 2225
|
|
;2225: qboolean giveError = qfalse;
|
|
ADDRLP4 1080
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 2227
|
|
;2226:
|
|
;2227: if (!Q_stricmp(cmd, "give"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1132
|
|
ARGP4
|
|
ADDRLP4 1084
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1084
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1130
|
|
line 2228
|
|
;2228: {
|
|
line 2229
|
|
;2229: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2230
|
|
;2230: }
|
|
ADDRGP4 $1131
|
|
JUMPV
|
|
LABELV $1130
|
|
line 2231
|
|
;2231: else if (!Q_stricmp(cmd, "god"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1135
|
|
ARGP4
|
|
ADDRLP4 1088
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1088
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1133
|
|
line 2232
|
|
;2232: {
|
|
line 2233
|
|
;2233: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2234
|
|
;2234: }
|
|
ADDRGP4 $1134
|
|
JUMPV
|
|
LABELV $1133
|
|
line 2235
|
|
;2235: else if (!Q_stricmp(cmd, "notarget"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1138
|
|
ARGP4
|
|
ADDRLP4 1092
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1092
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1136
|
|
line 2236
|
|
;2236: {
|
|
line 2237
|
|
;2237: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2238
|
|
;2238: }
|
|
ADDRGP4 $1137
|
|
JUMPV
|
|
LABELV $1136
|
|
line 2239
|
|
;2239: else if (!Q_stricmp(cmd, "noclip"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1141
|
|
ARGP4
|
|
ADDRLP4 1096
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1096
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1139
|
|
line 2240
|
|
;2240: {
|
|
line 2241
|
|
;2241: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2242
|
|
;2242: }
|
|
ADDRGP4 $1140
|
|
JUMPV
|
|
LABELV $1139
|
|
line 2243
|
|
;2243: else if (!Q_stricmp(cmd, "kill"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1144
|
|
ARGP4
|
|
ADDRLP4 1100
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1100
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1142
|
|
line 2244
|
|
;2244: {
|
|
line 2245
|
|
;2245: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2246
|
|
;2246: }
|
|
ADDRGP4 $1143
|
|
JUMPV
|
|
LABELV $1142
|
|
line 2247
|
|
;2247: else if (!Q_stricmp(cmd, "teamtask"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $267
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1104
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1145
|
|
line 2248
|
|
;2248: {
|
|
line 2249
|
|
;2249: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2250
|
|
;2250: }
|
|
ADDRGP4 $1146
|
|
JUMPV
|
|
LABELV $1145
|
|
line 2251
|
|
;2251: else if (!Q_stricmp(cmd, "levelshot"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1149
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1108
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1147
|
|
line 2252
|
|
;2252: {
|
|
line 2253
|
|
;2253: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2254
|
|
;2254: }
|
|
ADDRGP4 $1148
|
|
JUMPV
|
|
LABELV $1147
|
|
line 2255
|
|
;2255: else if (!Q_stricmp(cmd, "follow"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1152
|
|
ARGP4
|
|
ADDRLP4 1112
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1112
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1150
|
|
line 2256
|
|
;2256: {
|
|
line 2257
|
|
;2257: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2258
|
|
;2258: }
|
|
ADDRGP4 $1151
|
|
JUMPV
|
|
LABELV $1150
|
|
line 2259
|
|
;2259: else if (!Q_stricmp(cmd, "follownext"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1155
|
|
ARGP4
|
|
ADDRLP4 1116
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1116
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1153
|
|
line 2260
|
|
;2260: {
|
|
line 2261
|
|
;2261: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2262
|
|
;2262: }
|
|
ADDRGP4 $1154
|
|
JUMPV
|
|
LABELV $1153
|
|
line 2263
|
|
;2263: else if (!Q_stricmp(cmd, "followprev"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1158
|
|
ARGP4
|
|
ADDRLP4 1120
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1120
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1156
|
|
line 2264
|
|
;2264: {
|
|
line 2265
|
|
;2265: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2266
|
|
;2266: }
|
|
ADDRGP4 $1157
|
|
JUMPV
|
|
LABELV $1156
|
|
line 2267
|
|
;2267: else if (!Q_stricmp(cmd, "team"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1161
|
|
ARGP4
|
|
ADDRLP4 1124
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1124
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1159
|
|
line 2268
|
|
;2268: {
|
|
line 2269
|
|
;2269: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2270
|
|
;2270: }
|
|
ADDRGP4 $1160
|
|
JUMPV
|
|
LABELV $1159
|
|
line 2271
|
|
;2271: else if (!Q_stricmp(cmd, "forcechanged"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1164
|
|
ARGP4
|
|
ADDRLP4 1128
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1128
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1162
|
|
line 2272
|
|
;2272: { //special case: still update force change
|
|
line 2273
|
|
;2273: Cmd_ForceChanged_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_ForceChanged_f
|
|
CALLV
|
|
pop
|
|
line 2274
|
|
;2274: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1162
|
|
line 2276
|
|
;2275: }
|
|
;2276: else if (!Q_stricmp(cmd, "where"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1167
|
|
ARGP4
|
|
ADDRLP4 1132
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1132
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1165
|
|
line 2277
|
|
;2277: {
|
|
line 2278
|
|
;2278: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2279
|
|
;2279: }
|
|
ADDRGP4 $1166
|
|
JUMPV
|
|
LABELV $1165
|
|
line 2280
|
|
;2280: else if (!Q_stricmp(cmd, "callvote"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1170
|
|
ARGP4
|
|
ADDRLP4 1136
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1136
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1168
|
|
line 2281
|
|
;2281: {
|
|
line 2282
|
|
;2282: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2283
|
|
;2283: }
|
|
ADDRGP4 $1169
|
|
JUMPV
|
|
LABELV $1168
|
|
line 2284
|
|
;2284: else if (!Q_stricmp(cmd, "vote"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1173
|
|
ARGP4
|
|
ADDRLP4 1140
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1140
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1171
|
|
line 2285
|
|
;2285: {
|
|
line 2286
|
|
;2286: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2287
|
|
;2287: }
|
|
ADDRGP4 $1172
|
|
JUMPV
|
|
LABELV $1171
|
|
line 2288
|
|
;2288: else if (!Q_stricmp(cmd, "callteamvote"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1176
|
|
ARGP4
|
|
ADDRLP4 1144
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1144
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1174
|
|
line 2289
|
|
;2289: {
|
|
line 2290
|
|
;2290: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2291
|
|
;2291: }
|
|
ADDRGP4 $1175
|
|
JUMPV
|
|
LABELV $1174
|
|
line 2292
|
|
;2292: else if (!Q_stricmp(cmd, "teamvote"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1179
|
|
ARGP4
|
|
ADDRLP4 1148
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1148
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1177
|
|
line 2293
|
|
;2293: {
|
|
line 2294
|
|
;2294: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2295
|
|
;2295: }
|
|
ADDRGP4 $1178
|
|
JUMPV
|
|
LABELV $1177
|
|
line 2296
|
|
;2296: else if (!Q_stricmp(cmd, "gc"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1182
|
|
ARGP4
|
|
ADDRLP4 1152
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1152
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1180
|
|
line 2297
|
|
;2297: {
|
|
line 2298
|
|
;2298: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2299
|
|
;2299: }
|
|
ADDRGP4 $1181
|
|
JUMPV
|
|
LABELV $1180
|
|
line 2300
|
|
;2300: else if (!Q_stricmp(cmd, "setviewpos"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1185
|
|
ARGP4
|
|
ADDRLP4 1156
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1156
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1183
|
|
line 2301
|
|
;2301: {
|
|
line 2302
|
|
;2302: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2303
|
|
;2303: }
|
|
ADDRGP4 $1184
|
|
JUMPV
|
|
LABELV $1183
|
|
line 2304
|
|
;2304: else if (!Q_stricmp(cmd, "stats"))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1188
|
|
ARGP4
|
|
ADDRLP4 1160
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1160
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1186
|
|
line 2305
|
|
;2305: {
|
|
line 2306
|
|
;2306: giveError = qtrue;
|
|
ADDRLP4 1080
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2307
|
|
;2307: }
|
|
LABELV $1186
|
|
LABELV $1184
|
|
LABELV $1181
|
|
LABELV $1178
|
|
LABELV $1175
|
|
LABELV $1172
|
|
LABELV $1169
|
|
LABELV $1166
|
|
LABELV $1160
|
|
LABELV $1157
|
|
LABELV $1154
|
|
LABELV $1151
|
|
LABELV $1148
|
|
LABELV $1146
|
|
LABELV $1143
|
|
LABELV $1140
|
|
LABELV $1137
|
|
LABELV $1134
|
|
LABELV $1131
|
|
line 2309
|
|
;2308:
|
|
;2309: if (giveError)
|
|
ADDRLP4 1080
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1189
|
|
line 2310
|
|
;2310: {
|
|
line 2311
|
|
;2311: trap_SendServerCommand( clientNum, va("print \"You cannot perform this task (%s) during the intermission.\n\"", cmd ) );
|
|
ADDRGP4 $1191
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1164
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1164
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2312
|
|
;2312: }
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1189
|
|
line 2314
|
|
;2313: else
|
|
;2314: {
|
|
line 2315
|
|
;2315: Cmd_Say_f (ent, qfalse, qtrue);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 0
|
|
ARGI4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 Cmd_Say_f
|
|
CALLV
|
|
pop
|
|
line 2316
|
|
;2316: }
|
|
line 2317
|
|
;2317: return;
|
|
ADDRGP4 $1090
|
|
JUMPV
|
|
LABELV $1127
|
|
line 2320
|
|
;2318: }
|
|
;2319:
|
|
;2320: if (Q_stricmp (cmd, "give") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1132
|
|
ARGP4
|
|
ADDRLP4 1080
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1080
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1192
|
|
line 2321
|
|
;2321: {
|
|
line 2322
|
|
;2322: Cmd_Give_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Give_f
|
|
CALLV
|
|
pop
|
|
line 2323
|
|
;2323: }
|
|
ADDRGP4 $1193
|
|
JUMPV
|
|
LABELV $1192
|
|
line 2324
|
|
;2324: else if (Q_stricmp (cmd, "god") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1135
|
|
ARGP4
|
|
ADDRLP4 1084
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1084
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1194
|
|
line 2325
|
|
;2325: Cmd_God_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_God_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1195
|
|
JUMPV
|
|
LABELV $1194
|
|
line 2326
|
|
;2326: else if (Q_stricmp (cmd, "notarget") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1138
|
|
ARGP4
|
|
ADDRLP4 1088
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1088
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1196
|
|
line 2327
|
|
;2327: Cmd_Notarget_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Notarget_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1197
|
|
JUMPV
|
|
LABELV $1196
|
|
line 2328
|
|
;2328: else if (Q_stricmp (cmd, "noclip") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1141
|
|
ARGP4
|
|
ADDRLP4 1092
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1092
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1198
|
|
line 2329
|
|
;2329: Cmd_Noclip_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Noclip_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1199
|
|
JUMPV
|
|
LABELV $1198
|
|
line 2330
|
|
;2330: else if (Q_stricmp (cmd, "kill") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1144
|
|
ARGP4
|
|
ADDRLP4 1096
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1096
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1200
|
|
line 2331
|
|
;2331: Cmd_Kill_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Kill_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1201
|
|
JUMPV
|
|
LABELV $1200
|
|
line 2332
|
|
;2332: else if (Q_stricmp (cmd, "teamtask") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $267
|
|
ARGP4
|
|
ADDRLP4 1100
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1100
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1202
|
|
line 2333
|
|
;2333: Cmd_TeamTask_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_TeamTask_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1203
|
|
JUMPV
|
|
LABELV $1202
|
|
line 2334
|
|
;2334: else if (Q_stricmp (cmd, "levelshot") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1149
|
|
ARGP4
|
|
ADDRLP4 1104
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1104
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1204
|
|
line 2335
|
|
;2335: Cmd_LevelShot_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_LevelShot_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1205
|
|
JUMPV
|
|
LABELV $1204
|
|
line 2336
|
|
;2336: else if (Q_stricmp (cmd, "follow") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1152
|
|
ARGP4
|
|
ADDRLP4 1108
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1108
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1206
|
|
line 2337
|
|
;2337: Cmd_Follow_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Follow_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1207
|
|
JUMPV
|
|
LABELV $1206
|
|
line 2338
|
|
;2338: else if (Q_stricmp (cmd, "follownext") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1155
|
|
ARGP4
|
|
ADDRLP4 1112
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1112
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1208
|
|
line 2339
|
|
;2339: Cmd_FollowCycle_f (ent, 1);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 Cmd_FollowCycle_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1209
|
|
JUMPV
|
|
LABELV $1208
|
|
line 2340
|
|
;2340: else if (Q_stricmp (cmd, "followprev") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1158
|
|
ARGP4
|
|
ADDRLP4 1116
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1116
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1210
|
|
line 2341
|
|
;2341: Cmd_FollowCycle_f (ent, -1);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
CNSTI4 -1
|
|
ARGI4
|
|
ADDRGP4 Cmd_FollowCycle_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1211
|
|
JUMPV
|
|
LABELV $1210
|
|
line 2342
|
|
;2342: else if (Q_stricmp (cmd, "team") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1161
|
|
ARGP4
|
|
ADDRLP4 1120
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1120
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1212
|
|
line 2343
|
|
;2343: Cmd_Team_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Team_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1213
|
|
JUMPV
|
|
LABELV $1212
|
|
line 2344
|
|
;2344: else if (Q_stricmp (cmd, "forcechanged") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1164
|
|
ARGP4
|
|
ADDRLP4 1124
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1124
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1214
|
|
line 2345
|
|
;2345: Cmd_ForceChanged_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_ForceChanged_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1215
|
|
JUMPV
|
|
LABELV $1214
|
|
line 2346
|
|
;2346: else if (Q_stricmp (cmd, "where") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1167
|
|
ARGP4
|
|
ADDRLP4 1128
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1128
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1216
|
|
line 2347
|
|
;2347: Cmd_Where_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Where_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1217
|
|
JUMPV
|
|
LABELV $1216
|
|
line 2348
|
|
;2348: else if (Q_stricmp (cmd, "callvote") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1170
|
|
ARGP4
|
|
ADDRLP4 1132
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1132
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1218
|
|
line 2349
|
|
;2349: Cmd_CallVote_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_CallVote_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1219
|
|
JUMPV
|
|
LABELV $1218
|
|
line 2350
|
|
;2350: else if (Q_stricmp (cmd, "vote") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1173
|
|
ARGP4
|
|
ADDRLP4 1136
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1136
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1220
|
|
line 2351
|
|
;2351: Cmd_Vote_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Vote_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1221
|
|
JUMPV
|
|
LABELV $1220
|
|
line 2352
|
|
;2352: else if (Q_stricmp (cmd, "callteamvote") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1176
|
|
ARGP4
|
|
ADDRLP4 1140
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1140
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1222
|
|
line 2353
|
|
;2353: Cmd_CallTeamVote_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_CallTeamVote_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1223
|
|
JUMPV
|
|
LABELV $1222
|
|
line 2354
|
|
;2354: else if (Q_stricmp (cmd, "teamvote") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1179
|
|
ARGP4
|
|
ADDRLP4 1144
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1144
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1224
|
|
line 2355
|
|
;2355: Cmd_TeamVote_f (ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_TeamVote_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1225
|
|
JUMPV
|
|
LABELV $1224
|
|
line 2356
|
|
;2356: else if (Q_stricmp (cmd, "gc") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1182
|
|
ARGP4
|
|
ADDRLP4 1148
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1148
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1226
|
|
line 2357
|
|
;2357: Cmd_GameCommand_f( ent );
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_GameCommand_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1227
|
|
JUMPV
|
|
LABELV $1226
|
|
line 2358
|
|
;2358: else if (Q_stricmp (cmd, "setviewpos") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1185
|
|
ARGP4
|
|
ADDRLP4 1152
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1152
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1228
|
|
line 2359
|
|
;2359: Cmd_SetViewpos_f( ent );
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_SetViewpos_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1229
|
|
JUMPV
|
|
LABELV $1228
|
|
line 2360
|
|
;2360: else if (Q_stricmp (cmd, "stats") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1188
|
|
ARGP4
|
|
ADDRLP4 1156
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1156
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1230
|
|
line 2361
|
|
;2361: Cmd_Stats_f( ent );
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_Stats_f
|
|
CALLV
|
|
pop
|
|
ADDRGP4 $1231
|
|
JUMPV
|
|
LABELV $1230
|
|
line 2362
|
|
;2362: else if (Q_stricmp(cmd, "#mm") == 0 && CheatsOk( ent ))
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1234
|
|
ARGP4
|
|
ADDRLP4 1160
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1160
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1232
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1164
|
|
ADDRGP4 CheatsOk
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1164
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1232
|
|
line 2363
|
|
;2363: {
|
|
line 2364
|
|
;2364: G_PlayerBecomeATST(ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 G_PlayerBecomeATST
|
|
CALLI4
|
|
pop
|
|
line 2365
|
|
;2365: }
|
|
ADDRGP4 $1233
|
|
JUMPV
|
|
LABELV $1232
|
|
line 2366
|
|
;2366: else if (Q_stricmp(cmd, "thedestroyer") == 0 && CheatsOk( ent ) && ent && ent->client && ent->client->ps.saberHolstered && ent->client->ps.weapon == WP_SABER)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1237
|
|
ARGP4
|
|
ADDRLP4 1168
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1168
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1235
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRLP4 1172
|
|
ADDRGP4 CheatsOk
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1176
|
|
CNSTI4 0
|
|
ASGNI4
|
|
ADDRLP4 1172
|
|
INDIRI4
|
|
ADDRLP4 1176
|
|
INDIRI4
|
|
EQI4 $1235
|
|
ADDRLP4 1184
|
|
CNSTU4 0
|
|
ASGNU4
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 1184
|
|
INDIRU4
|
|
EQU4 $1235
|
|
ADDRLP4 1188
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
ASGNP4
|
|
ADDRLP4 1188
|
|
INDIRP4
|
|
CVPU4 4
|
|
ADDRLP4 1184
|
|
INDIRU4
|
|
EQU4 $1235
|
|
ADDRLP4 1188
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
INDIRI4
|
|
ADDRLP4 1176
|
|
INDIRI4
|
|
EQI4 $1235
|
|
ADDRLP4 1188
|
|
INDIRP4
|
|
CNSTI4 148
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 2
|
|
NEI4 $1235
|
|
line 2367
|
|
;2367: {
|
|
line 2368
|
|
;2368: Cmd_ToggleSaber_f(ent);
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 Cmd_ToggleSaber_f
|
|
CALLV
|
|
pop
|
|
line 2370
|
|
;2369:
|
|
;2370: if (!ent->client->ps.saberHolstered)
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1300
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1236
|
|
line 2371
|
|
;2371: {
|
|
line 2372
|
|
;2372: if (ent->client->ps.dualBlade)
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1352
|
|
ADDP4
|
|
INDIRI4
|
|
CNSTI4 0
|
|
EQI4 $1240
|
|
line 2373
|
|
;2373: {
|
|
line 2374
|
|
;2374: ent->client->ps.dualBlade = qfalse;
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1352
|
|
ADDP4
|
|
CNSTI4 0
|
|
ASGNI4
|
|
line 2376
|
|
;2375: //ent->client->ps.fd.saberAnimLevel = FORCE_LEVEL_1;
|
|
;2376: }
|
|
ADDRGP4 $1236
|
|
JUMPV
|
|
LABELV $1240
|
|
line 2378
|
|
;2377: else
|
|
;2378: {
|
|
line 2379
|
|
;2379: ent->client->ps.dualBlade = qtrue;
|
|
ADDRLP4 1024
|
|
INDIRP4
|
|
CNSTI4 408
|
|
ADDP4
|
|
INDIRP4
|
|
CNSTI4 1352
|
|
ADDP4
|
|
CNSTI4 1
|
|
ASGNI4
|
|
line 2381
|
|
;2380:
|
|
;2381: trap_SendServerCommand( -1, va("print \"%sTHE DESTROYER COMETH\n\"", S_COLOR_RED) );
|
|
ADDRGP4 $1242
|
|
ARGP4
|
|
ADDRGP4 $1243
|
|
ARGP4
|
|
ADDRLP4 1192
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
CNSTI4 -1
|
|
ARGI4
|
|
ADDRLP4 1192
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2382
|
|
;2382: G_ScreenShake(vec3_origin, NULL, 10.0f, 800, qtrue);
|
|
ADDRGP4 vec3_origin
|
|
ARGP4
|
|
CNSTP4 0
|
|
ARGP4
|
|
CNSTF4 1092616192
|
|
ARGF4
|
|
CNSTI4 800
|
|
ARGI4
|
|
CNSTI4 1
|
|
ARGI4
|
|
ADDRGP4 G_ScreenShake
|
|
CALLP4
|
|
pop
|
|
line 2384
|
|
;2383: //ent->client->ps.fd.saberAnimLevel = FORCE_LEVEL_3;
|
|
;2384: }
|
|
line 2385
|
|
;2385: }
|
|
line 2386
|
|
;2386: }
|
|
ADDRGP4 $1236
|
|
JUMPV
|
|
LABELV $1235
|
|
line 2417
|
|
;2387:#ifdef _DEBUG
|
|
;2388: else if (Q_stricmp(cmd, "gotocoord") == 0 && CheatsOk( ent ))
|
|
;2389: {
|
|
;2390: char x[64], y[64], z[64];
|
|
;2391: vec3_t xyz;
|
|
;2392:
|
|
;2393: if (trap_Argc() < 3)
|
|
;2394: {
|
|
;2395: return;
|
|
;2396: }
|
|
;2397:
|
|
;2398: trap_Argv( 1, x, sizeof( x ) );
|
|
;2399: trap_Argv( 2, y, sizeof( y ) );
|
|
;2400: trap_Argv( 3, z, sizeof( z ) );
|
|
;2401:
|
|
;2402: xyz[0] = atof(x);
|
|
;2403: xyz[1] = atof(y);
|
|
;2404: xyz[2] = atof(z);
|
|
;2405:
|
|
;2406: VectorCopy(xyz, ent->client->ps.origin);
|
|
;2407: }
|
|
;2408:#endif
|
|
;2409:
|
|
;2410: /*
|
|
;2411: else if (Q_stricmp (cmd, "offwithmyhead") == 0)
|
|
;2412: {
|
|
;2413: DismembermentTest(ent);
|
|
;2414: }
|
|
;2415: */
|
|
;2416: else
|
|
;2417: {
|
|
line 2418
|
|
;2418: if (Q_stricmp(cmd, "addbot") == 0)
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRGP4 $1246
|
|
ARGP4
|
|
ADDRLP4 1192
|
|
ADDRGP4 Q_stricmp
|
|
CALLI4
|
|
ASGNI4
|
|
ADDRLP4 1192
|
|
INDIRI4
|
|
CNSTI4 0
|
|
NEI4 $1244
|
|
line 2419
|
|
;2419: { //because addbot isn't a recognized command unless you're the server, but it is in the menus regardless
|
|
line 2420
|
|
;2420: trap_SendServerCommand( clientNum, va("print \"You can only add bots as the server.\n\"" ) );
|
|
ADDRGP4 $1247
|
|
ARGP4
|
|
ADDRLP4 1196
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1196
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2421
|
|
;2421: }
|
|
ADDRGP4 $1245
|
|
JUMPV
|
|
LABELV $1244
|
|
line 2423
|
|
;2422: else
|
|
;2423: {
|
|
line 2424
|
|
;2424: trap_SendServerCommand( clientNum, va("print \"unknown cmd %s\n\"", cmd ) );
|
|
ADDRGP4 $1248
|
|
ARGP4
|
|
ADDRLP4 0
|
|
ARGP4
|
|
ADDRLP4 1196
|
|
ADDRGP4 va
|
|
CALLP4
|
|
ASGNP4
|
|
ADDRFP4 0
|
|
INDIRI4
|
|
ARGI4
|
|
ADDRLP4 1196
|
|
INDIRP4
|
|
ARGP4
|
|
ADDRGP4 trap_SendServerCommand
|
|
CALLV
|
|
pop
|
|
line 2425
|
|
;2425: }
|
|
LABELV $1245
|
|
line 2426
|
|
;2426: }
|
|
LABELV $1236
|
|
LABELV $1233
|
|
LABELV $1231
|
|
LABELV $1229
|
|
LABELV $1227
|
|
LABELV $1225
|
|
LABELV $1223
|
|
LABELV $1221
|
|
LABELV $1219
|
|
LABELV $1217
|
|
LABELV $1215
|
|
LABELV $1213
|
|
LABELV $1211
|
|
LABELV $1209
|
|
LABELV $1207
|
|
LABELV $1205
|
|
LABELV $1203
|
|
LABELV $1201
|
|
LABELV $1199
|
|
LABELV $1197
|
|
LABELV $1195
|
|
LABELV $1193
|
|
line 2427
|
|
;2427:}
|
|
LABELV $1090
|
|
endproc ClientCommand 1200 20
|
|
import saberOnSound
|
|
import saberOffSound
|
|
import BG_CycleForce
|
|
import BG_CycleInven
|
|
import AcceptBotCommand
|
|
import trap_ROFF_Purge_Ent
|
|
import trap_ROFF_Play
|
|
import trap_ROFF_Cache
|
|
import trap_ROFF_UpdateEntities
|
|
import trap_ROFF_Clean
|
|
import trap_SP_GetStringTextString
|
|
import trap_SP_Register
|
|
import trap_SP_RegisterServer
|
|
import trap_SnapVector
|
|
import trap_GeneticParentsAndChildSelection
|
|
import trap_BotResetWeaponState
|
|
import trap_BotFreeWeaponState
|
|
import trap_BotAllocWeaponState
|
|
import trap_BotLoadWeaponWeights
|
|
import trap_BotGetWeaponInfo
|
|
import trap_BotChooseBestFightWeapon
|
|
import trap_BotAddAvoidSpot
|
|
import trap_BotInitMoveState
|
|
import trap_BotFreeMoveState
|
|
import trap_BotAllocMoveState
|
|
import trap_BotPredictVisiblePosition
|
|
import trap_BotMovementViewTarget
|
|
import trap_BotReachabilityArea
|
|
import trap_BotResetLastAvoidReach
|
|
import trap_BotResetAvoidReach
|
|
import trap_BotMoveInDirection
|
|
import trap_BotMoveToGoal
|
|
import trap_BotResetMoveState
|
|
import trap_BotFreeGoalState
|
|
import trap_BotAllocGoalState
|
|
import trap_BotMutateGoalFuzzyLogic
|
|
import trap_BotSaveGoalFuzzyLogic
|
|
import trap_BotInterbreedGoalFuzzyLogic
|
|
import trap_BotFreeItemWeights
|
|
import trap_BotLoadItemWeights
|
|
import trap_BotUpdateEntityItems
|
|
import trap_BotInitLevelItems
|
|
import trap_BotSetAvoidGoalTime
|
|
import trap_BotAvoidGoalTime
|
|
import trap_BotGetLevelItemGoal
|
|
import trap_BotGetMapLocationGoal
|
|
import trap_BotGetNextCampSpotGoal
|
|
import trap_BotItemGoalInVisButNotVisible
|
|
import trap_BotTouchingGoal
|
|
import trap_BotChooseNBGItem
|
|
import trap_BotChooseLTGItem
|
|
import trap_BotGetSecondGoal
|
|
import trap_BotGetTopGoal
|
|
import trap_BotGoalName
|
|
import trap_BotDumpGoalStack
|
|
import trap_BotDumpAvoidGoals
|
|
import trap_BotEmptyGoalStack
|
|
import trap_BotPopGoal
|
|
import trap_BotPushGoal
|
|
import trap_BotResetAvoidGoals
|
|
import trap_BotRemoveFromAvoidGoals
|
|
import trap_BotResetGoalState
|
|
import trap_BotSetChatName
|
|
import trap_BotSetChatGender
|
|
import trap_BotLoadChatFile
|
|
import trap_BotReplaceSynonyms
|
|
import trap_UnifyWhiteSpaces
|
|
import trap_BotMatchVariable
|
|
import trap_BotFindMatch
|
|
import trap_StringContains
|
|
import trap_BotGetChatMessage
|
|
import trap_BotEnterChat
|
|
import trap_BotChatLength
|
|
import trap_BotReplyChat
|
|
import trap_BotNumInitialChats
|
|
import trap_BotInitialChat
|
|
import trap_BotNumConsoleMessages
|
|
import trap_BotNextConsoleMessage
|
|
import trap_BotRemoveConsoleMessage
|
|
import trap_BotQueueConsoleMessage
|
|
import trap_BotFreeChatState
|
|
import trap_BotAllocChatState
|
|
import trap_Characteristic_String
|
|
import trap_Characteristic_BInteger
|
|
import trap_Characteristic_Integer
|
|
import trap_Characteristic_BFloat
|
|
import trap_Characteristic_Float
|
|
import trap_BotFreeCharacter
|
|
import trap_BotLoadCharacter
|
|
import trap_EA_ResetInput
|
|
import trap_EA_GetInput
|
|
import trap_EA_EndRegular
|
|
import trap_EA_ForcePower
|
|
import trap_EA_Alt_Attack
|
|
import trap_EA_View
|
|
import trap_EA_Move
|
|
import trap_EA_DelayedJump
|
|
import trap_EA_Jump
|
|
import trap_EA_SelectWeapon
|
|
import trap_EA_MoveRight
|
|
import trap_EA_MoveLeft
|
|
import trap_EA_MoveBack
|
|
import trap_EA_MoveForward
|
|
import trap_EA_MoveDown
|
|
import trap_EA_MoveUp
|
|
import trap_EA_Crouch
|
|
import trap_EA_Respawn
|
|
import trap_EA_Use
|
|
import trap_EA_Attack
|
|
import trap_EA_Talk
|
|
import trap_EA_Gesture
|
|
import trap_EA_Action
|
|
import trap_EA_Command
|
|
import trap_EA_SayTeam
|
|
import trap_EA_Say
|
|
import trap_AAS_PredictClientMovement
|
|
import trap_AAS_Swimming
|
|
import trap_AAS_AlternativeRouteGoals
|
|
import trap_AAS_PredictRoute
|
|
import trap_AAS_EnableRoutingArea
|
|
import trap_AAS_AreaTravelTimeToGoalArea
|
|
import trap_AAS_AreaReachability
|
|
import trap_AAS_IntForBSPEpairKey
|
|
import trap_AAS_FloatForBSPEpairKey
|
|
import trap_AAS_VectorForBSPEpairKey
|
|
import trap_AAS_ValueForBSPEpairKey
|
|
import trap_AAS_NextBSPEntity
|
|
import trap_AAS_PointContents
|
|
import trap_AAS_TraceAreas
|
|
import trap_AAS_PointReachabilityAreaIndex
|
|
import trap_AAS_PointAreaNum
|
|
import trap_AAS_Time
|
|
import trap_AAS_PresenceTypeBoundingBox
|
|
import trap_AAS_Initialized
|
|
import trap_AAS_EntityInfo
|
|
import trap_AAS_AreaInfo
|
|
import trap_AAS_BBoxAreas
|
|
import trap_BotUserCommand
|
|
import trap_BotGetServerCommand
|
|
import trap_BotGetSnapshotEntity
|
|
import trap_BotLibTest
|
|
import trap_BotLibUpdateEntity
|
|
import trap_BotLibLoadMap
|
|
import trap_BotLibStartFrame
|
|
import trap_BotLibDefine
|
|
import trap_BotLibVarGet
|
|
import trap_BotLibVarSet
|
|
import trap_BotLibShutdown
|
|
import trap_BotLibSetup
|
|
import trap_DebugPolygonDelete
|
|
import trap_DebugPolygonCreate
|
|
import trap_GetEntityToken
|
|
import trap_GetUsercmd
|
|
import trap_BotFreeClient
|
|
import trap_BotAllocateClient
|
|
import trap_EntityContact
|
|
import trap_EntitiesInBox
|
|
import trap_UnlinkEntity
|
|
import trap_LinkEntity
|
|
import trap_AreasConnected
|
|
import trap_AdjustAreaPortalState
|
|
import trap_InPVSIgnorePortals
|
|
import trap_InPVS
|
|
import trap_PointContents
|
|
import trap_Trace
|
|
import trap_SetBrushModel
|
|
import trap_GetServerinfo
|
|
import trap_SetUserinfo
|
|
import trap_GetUserinfo
|
|
import trap_GetConfigstring
|
|
import trap_SetConfigstring
|
|
import trap_SendServerCommand
|
|
import trap_DropClient
|
|
import trap_LocateGameData
|
|
import trap_Cvar_VariableStringBuffer
|
|
import trap_Cvar_VariableValue
|
|
import trap_Cvar_VariableIntegerValue
|
|
import trap_Cvar_Set
|
|
import trap_Cvar_Update
|
|
import trap_Cvar_Register
|
|
import trap_SendConsoleCommand
|
|
import trap_FS_GetFileList
|
|
import trap_FS_FCloseFile
|
|
import trap_FS_Write
|
|
import trap_FS_Read
|
|
import trap_FS_FOpenFile
|
|
import trap_Args
|
|
import trap_Argv
|
|
import trap_Argc
|
|
import trap_Milliseconds
|
|
import trap_Error
|
|
import trap_Printf
|
|
import g_timeouttospec
|
|
import g_forceDodge
|
|
import g_dismember
|
|
import g_singlePlayer
|
|
import g_enableBreath
|
|
import g_enableDust
|
|
import g_rankings
|
|
import pmove_msec
|
|
import pmove_fixed
|
|
import g_smoothClients
|
|
import g_blueteam
|
|
import g_redteam
|
|
import g_debugUp
|
|
import g_debugRight
|
|
import g_debugForward
|
|
import g_filterBan
|
|
import g_banIPs
|
|
import g_teamForceBalance
|
|
import g_teamAutoJoin
|
|
import g_allowVote
|
|
import g_blood
|
|
import g_doWarmup
|
|
import g_warmup
|
|
import g_motd
|
|
import g_synchronousClients
|
|
import g_adaptRespawn
|
|
import g_weaponTeamRespawn
|
|
import g_weaponRespawn
|
|
import g_debugDamage
|
|
import g_debugAlloc
|
|
import g_debugMove
|
|
import g_inactivity
|
|
import g_forcerespawn
|
|
import g_quadfactor
|
|
import g_knockback
|
|
import g_speed
|
|
import g_gravity
|
|
import g_needpass
|
|
import g_password
|
|
import g_friendlySaber
|
|
import g_friendlyFire
|
|
import g_saberInterpolate
|
|
import g_capturelimit
|
|
import g_timelimit
|
|
import g_duel_fraglimit
|
|
import g_fraglimit
|
|
import g_duelWeaponDisable
|
|
import g_weaponDisable
|
|
import g_forcePowerDisable
|
|
import g_spawnInvulnerability
|
|
import g_forceRegenTime
|
|
import g_saberLocking
|
|
import g_privateDuel
|
|
import g_forceBasedTeams
|
|
import g_maxForceRank
|
|
import g_dmflags
|
|
import g_autoMapCycle
|
|
import g_restarted
|
|
import g_maxGameClients
|
|
import g_maxclients
|
|
import g_cheats
|
|
import g_dedicated
|
|
import g_gametype
|
|
import g_entities
|
|
import level
|
|
import Pickup_Team
|
|
import CheckTeamStatus
|
|
import TeamplayInfoMessage
|
|
import Team_GetLocationMsg
|
|
import Team_GetLocation
|
|
import SelectSagaSpawnPoint
|
|
import SelectCTFSpawnPoint
|
|
import Team_FreeEntity
|
|
import Team_ReturnFlag
|
|
import Team_InitGame
|
|
import Team_CheckHurtCarrier
|
|
import Team_FragBonuses
|
|
import Team_DroppedFlagThink
|
|
import AddTeamScore
|
|
import TeamColorString
|
|
import OtherTeamName
|
|
import TeamName
|
|
import OtherTeam
|
|
import BotAIStartFrame
|
|
import BotAIShutdownClient
|
|
import BotAISetupClient
|
|
import BotAILoadMap
|
|
import BotAIShutdown
|
|
import BotAISetup
|
|
import B_CleanupAlloc
|
|
import B_InitAlloc
|
|
import InFieldOfVision
|
|
import BotOrder
|
|
import OrgVisible
|
|
import InitSagaMode
|
|
import G_ClearClientLog
|
|
import G_LogExit
|
|
import G_LogWeaponOutput
|
|
import G_LogWeaponInit
|
|
import G_LogWeaponItem
|
|
import G_LogWeaponPowerup
|
|
import G_LogWeaponFrag
|
|
import G_LogWeaponDeath
|
|
import G_LogWeaponKill
|
|
import G_LogWeaponDamage
|
|
import G_LogWeaponFire
|
|
import G_LogWeaponPickup
|
|
import Jedi_DodgeEvasion
|
|
import ForceTelepathy
|
|
import ForceThrow
|
|
import ForceSeeing
|
|
import ForceTeamForceReplenish
|
|
import ForceTeamHeal
|
|
import ForceAbsorb
|
|
import ForceProtect
|
|
import ForceGrip
|
|
import ForceRage
|
|
import ForceSpeed
|
|
import ForceHeal
|
|
import ForcePowerUsableOn
|
|
import WP_ForcePowersUpdate
|
|
import WP_SpawnInitForcePowers
|
|
import WP_InitForcePowers
|
|
import WP_SaberInitBladeData
|
|
import WP_SaberCanBlock
|
|
import WP_SaberPositionUpdate
|
|
import WP_ForcePowerStop
|
|
import HasSetSaberOnly
|
|
import G_PreDefSound
|
|
import G_RefreshNextMap
|
|
import G_DoesMapSupportGametype
|
|
import BotInterbreedEndMatch
|
|
import Svcmd_BotList_f
|
|
import Svcmd_AddBot_f
|
|
import G_BotConnect
|
|
import G_RemoveQueuedBotBegin
|
|
import G_CheckBotSpawn
|
|
import G_GetBotInfoByName
|
|
import G_GetBotInfoByNumber
|
|
import G_InitBots
|
|
import UpdateTournamentInfo
|
|
import G_WriteSessionData
|
|
import G_InitWorldSession
|
|
import G_InitSessionData
|
|
import G_ReadSessionData
|
|
import Svcmd_GameMem_f
|
|
import G_InitMemory
|
|
import G_Alloc
|
|
import Team_CheckDroppedItem
|
|
import OnSameTeam
|
|
import G_RunClient
|
|
import ClientEndFrame
|
|
import ClientThink
|
|
import G_CheckClientTimeouts
|
|
import ClientBegin
|
|
import ClientDisconnect
|
|
import ClientUserinfoChanged
|
|
import ClientConnect
|
|
import G_GetStripEdString
|
|
import G_Error
|
|
import G_Printf
|
|
import SendScoreboardMessageToAllClients
|
|
import G_LogPrintf
|
|
import G_RunThink
|
|
import CheckTeamLeader
|
|
import SetLeader
|
|
import FindIntermissionPoint
|
|
import g_ff_objectives
|
|
import G_SetStats
|
|
import MoveClientToIntermission
|
|
import BlowDetpacks
|
|
import FireWeapon
|
|
import G_FilterPacket
|
|
import G_ProcessIPBans
|
|
import ConsoleCommand
|
|
import gJMSaberEnt
|
|
import SpotWouldTelefrag
|
|
import CalculateRanks
|
|
import AddScore
|
|
import player_die
|
|
import ClientSpawn
|
|
import InitBodyQue
|
|
import BeginIntermission
|
|
import respawn
|
|
import CopyToBodyQue
|
|
import SelectSpawnPoint
|
|
import SetClientViewAngle
|
|
import PickTeam
|
|
import TeamLeader
|
|
import TeamCount
|
|
import CheckGauntletAttack
|
|
import SnapVectorTowards
|
|
import CalcMuzzlePoint
|
|
import LogAccuracyHit
|
|
import WP_FireGenericBlasterMissile
|
|
import WP_FireTurretMissile
|
|
import G_PlayerBecomeATST
|
|
import ATST_ManageDamageBoxes
|
|
import TeleportPlayer
|
|
import trigger_teleporter_touch
|
|
import Touch_DoorTrigger
|
|
import G_RunMover
|
|
import WP_FireBlasterMissile
|
|
import G_ExplodeMissile
|
|
import G_BounceProjectile
|
|
import CreateMissile
|
|
import G_RunMissile
|
|
import G_ReflectMissile
|
|
import ExplodeDeath
|
|
import TossClientCubes
|
|
import TossClientItems
|
|
import TossClientWeapon
|
|
import body_die
|
|
import G_RadiusDamage
|
|
import G_Damage
|
|
import CanDamage
|
|
import trap_G2API_SetBoneAnim
|
|
import trap_G2API_GetGLAName
|
|
import trap_G2API_SetBoneAngles
|
|
import trap_G2API_CleanGhoul2Models
|
|
import trap_G2API_RemoveGhoul2Model
|
|
import trap_G2API_HasGhoul2ModelOnIndex
|
|
import trap_G2API_DuplicateGhoul2Instance
|
|
import trap_G2API_CopySpecificGhoul2Model
|
|
import trap_G2API_CopyGhoul2Instance
|
|
import trap_G2API_SetBoltInfo
|
|
import trap_G2API_AddBolt
|
|
import trap_G2API_InitGhoul2Model
|
|
import trap_G2API_GetBoltMatrix_NoReconstruct
|
|
import trap_G2API_GetBoltMatrix
|
|
import trap_G2_HaveWeGhoul2Models
|
|
import trap_G2_SetGhoul2ModelIndexes
|
|
import trap_G2_ListModelBones
|
|
import trap_G2_ListModelSurfaces
|
|
import G_SkinIndex
|
|
import BuildShaderStateConfig
|
|
import AddRemap
|
|
import G_SetOrigin
|
|
import G_AddEvent
|
|
import G_AddPredictableEvent
|
|
import vtos
|
|
import tv
|
|
import G_RunObject
|
|
import G_TouchSolids
|
|
import G_TouchTriggers
|
|
import G_EntitiesFree
|
|
import G_FreeEntity
|
|
import G_KillG2Queue
|
|
import G_SendG2KillQueue
|
|
import TryUse
|
|
import G_EntitySound
|
|
import G_SoundAtLoc
|
|
import G_Sound
|
|
import G_MuteSound
|
|
import G_ScreenShake
|
|
import G_PlayEffect
|
|
import G_TempEntity
|
|
import G_Spawn
|
|
import G_InitGentity
|
|
import G_SetAngles
|
|
import G_SetMovedir
|
|
import G_UseTargets
|
|
import G_PickTarget
|
|
import G_RadiusList
|
|
import G_Find
|
|
import G_KillBox
|
|
import G_TeamCommand
|
|
import G_EffectIndex
|
|
import G_SoundIndex
|
|
import G_ModelIndex
|
|
import SaveRegisteredItems
|
|
import RegisterItem
|
|
import ClearRegisteredItems
|
|
import Touch_Item
|
|
import Add_Ammo
|
|
import ArmorIndex
|
|
import Think_Weapon
|
|
import FinishSpawningItem
|
|
import G_SpawnItem
|
|
import SetRespawn
|
|
import LaunchItem
|
|
import Drop_Item
|
|
import PrecacheItem
|
|
import UseHoldableItem
|
|
import RespawnItem
|
|
import G_RunItem
|
|
import G_CheckTeamItems
|
|
import ItemUse_MedPack
|
|
import ItemUse_Seeker
|
|
import ItemUse_Sentry
|
|
import ItemUse_Shield
|
|
import ItemUse_Binoculars
|
|
import G_NewString
|
|
import G_SpawnEntitiesFromString
|
|
import G_SpawnVector
|
|
import G_SpawnInt
|
|
import G_SpawnFloat
|
|
import G_SpawnString
|
|
import g2SaberInstance
|
|
import precachedKyle
|
|
import forcePowerDarkLight
|
|
import WeaponAttackAnim
|
|
import WeaponReadyAnim
|
|
import BG_OutOfMemory
|
|
import BG_StringAlloc
|
|
import BG_TempFree
|
|
import BG_TempAlloc
|
|
import BG_AllocUnaligned
|
|
import BG_Alloc
|
|
import BG_CanUseFPNow
|
|
import BG_HasYsalamiri
|
|
import BG_GetItemIndexByTag
|
|
import BG_ParseAnimationFile
|
|
import BG_PlayerTouchesItem
|
|
import BG_G2PlayerAngles
|
|
import BG_PlayerStateToEntityStateExtraPolate
|
|
import BG_PlayerStateToEntityState
|
|
import BG_TouchJumpPad
|
|
import BG_AddPredictableEventToPlayerstate
|
|
import BG_EvaluateTrajectoryDelta
|
|
import BG_EvaluateTrajectory
|
|
import BG_ForcePowerDrain
|
|
import BG_SaberStartTransAnim
|
|
import BG_InDeathAnim
|
|
import BG_InRoll
|
|
import BG_SaberInSpecialAttack
|
|
import BG_SpinningSaberAnim
|
|
import BG_FlippingAnim
|
|
import BG_SaberInIdle
|
|
import BG_SaberInSpecial
|
|
import BG_SaberInAttack
|
|
import BG_DirectFlippingAnim
|
|
import BG_InSaberStandAnim
|
|
import BG_InSpecialJump
|
|
import BG_LegalizedForcePowers
|
|
import saberMoveData
|
|
import BG_CanItemBeGrabbed
|
|
import BG_FindItemForHoldable
|
|
import BG_FindItemForPowerup
|
|
import BG_FindItemForWeapon
|
|
import BG_FindItem
|
|
import vectoyaw
|
|
import bg_numItems
|
|
import bg_itemlist
|
|
import Pmove
|
|
import PM_UpdateViewAngles
|
|
import pm
|
|
import bgForcePowerCost
|
|
import forceMasteryPoints
|
|
import forceMasteryLevels
|
|
import bgGlobalAnimations
|
|
import BGPAFtextLoaded
|
|
import forcePowerSorted
|
|
import WP_MuzzlePoint
|
|
import ammoData
|
|
import weaponData
|
|
import GetStringForID
|
|
import GetIDForString
|
|
import Q_irand
|
|
import irand
|
|
import flrand
|
|
import Rand_Init
|
|
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 SkipWhitespace
|
|
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 powf
|
|
import ClampShort
|
|
import ClampChar
|
|
import Q_rsqrt
|
|
import Q_fabs
|
|
import axisDefault
|
|
import vec3_origin
|
|
import g_color_table
|
|
import colorDkBlue
|
|
import colorLtBlue
|
|
import colorDkGrey
|
|
import colorMdGrey
|
|
import colorLtGrey
|
|
import colorWhite
|
|
import colorCyan
|
|
import colorMagenta
|
|
import colorYellow
|
|
import colorBlue
|
|
import colorGreen
|
|
import colorRed
|
|
import colorBlack
|
|
import colorTable
|
|
import bytedirs
|
|
import Com_Memcpy
|
|
import Com_Memset
|
|
import Hunk_Alloc
|
|
import forceSpeedLevels
|
|
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 $1248
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 117
|
|
char 1 110
|
|
char 1 107
|
|
char 1 110
|
|
char 1 111
|
|
char 1 119
|
|
char 1 110
|
|
char 1 32
|
|
char 1 99
|
|
char 1 109
|
|
char 1 100
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $1247
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 89
|
|
char 1 111
|
|
char 1 117
|
|
char 1 32
|
|
char 1 99
|
|
char 1 97
|
|
char 1 110
|
|
char 1 32
|
|
char 1 111
|
|
char 1 110
|
|
char 1 108
|
|
char 1 121
|
|
char 1 32
|
|
char 1 97
|
|
char 1 100
|
|
char 1 100
|
|
char 1 32
|
|
char 1 98
|
|
char 1 111
|
|
char 1 116
|
|
char 1 115
|
|
char 1 32
|
|
char 1 97
|
|
char 1 115
|
|
char 1 32
|
|
char 1 116
|
|
char 1 104
|
|
char 1 101
|
|
char 1 32
|
|
char 1 115
|
|
char 1 101
|
|
char 1 114
|
|
char 1 118
|
|
char 1 101
|
|
char 1 114
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $1246
|
|
char 1 97
|
|
char 1 100
|
|
char 1 100
|
|
char 1 98
|
|
char 1 111
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $1243
|
|
char 1 94
|
|
char 1 49
|
|
char 1 0
|
|
align 1
|
|
LABELV $1242
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 84
|
|
char 1 72
|
|
char 1 69
|
|
char 1 32
|
|
char 1 68
|
|
char 1 69
|
|
char 1 83
|
|
char 1 84
|
|
char 1 82
|
|
char 1 79
|
|
char 1 89
|
|
char 1 69
|
|
char 1 82
|
|
char 1 32
|
|
char 1 67
|
|
char 1 79
|
|
char 1 77
|
|
char 1 69
|
|
char 1 84
|
|
char 1 72
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $1237
|
|
char 1 116
|
|
char 1 104
|
|
char 1 101
|
|
char 1 100
|
|
char 1 101
|
|
char 1 115
|
|
char 1 116
|
|
char 1 114
|
|
char 1 111
|
|
char 1 121
|
|
char 1 101
|
|
char 1 114
|
|
char 1 0
|
|
align 1
|
|
LABELV $1234
|
|
char 1 35
|
|
char 1 109
|
|
char 1 109
|
|
char 1 0
|
|
align 1
|
|
LABELV $1191
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 89
|
|
char 1 111
|
|
char 1 117
|
|
char 1 32
|
|
char 1 99
|
|
char 1 97
|
|
char 1 110
|
|
char 1 110
|
|
char 1 111
|
|
char 1 116
|
|
char 1 32
|
|
char 1 112
|
|
char 1 101
|
|
char 1 114
|
|
char 1 102
|
|
char 1 111
|
|
char 1 114
|
|
char 1 109
|
|
char 1 32
|
|
char 1 116
|
|
char 1 104
|
|
char 1 105
|
|
char 1 115
|
|
char 1 32
|
|
char 1 116
|
|
char 1 97
|
|
char 1 115
|
|
char 1 107
|
|
char 1 32
|
|
char 1 40
|
|
char 1 37
|
|
char 1 115
|
|
char 1 41
|
|
char 1 32
|
|
char 1 100
|
|
char 1 117
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 103
|
|
char 1 32
|
|
char 1 116
|
|
char 1 104
|
|
char 1 101
|
|
char 1 32
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 101
|
|
char 1 114
|
|
char 1 109
|
|
char 1 105
|
|
char 1 115
|
|
char 1 115
|
|
char 1 105
|
|
char 1 111
|
|
char 1 110
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $1188
|
|
char 1 115
|
|
char 1 116
|
|
char 1 97
|
|
char 1 116
|
|
char 1 115
|
|
char 1 0
|
|
align 1
|
|
LABELV $1185
|
|
char 1 115
|
|
char 1 101
|
|
char 1 116
|
|
char 1 118
|
|
char 1 105
|
|
char 1 101
|
|
char 1 119
|
|
char 1 112
|
|
char 1 111
|
|
char 1 115
|
|
char 1 0
|
|
align 1
|
|
LABELV $1182
|
|
char 1 103
|
|
char 1 99
|
|
char 1 0
|
|
align 1
|
|
LABELV $1179
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 118
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $1176
|
|
char 1 99
|
|
char 1 97
|
|
char 1 108
|
|
char 1 108
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 118
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $1173
|
|
char 1 118
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $1170
|
|
char 1 99
|
|
char 1 97
|
|
char 1 108
|
|
char 1 108
|
|
char 1 118
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $1167
|
|
char 1 119
|
|
char 1 104
|
|
char 1 101
|
|
char 1 114
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $1164
|
|
char 1 102
|
|
char 1 111
|
|
char 1 114
|
|
char 1 99
|
|
char 1 101
|
|
char 1 99
|
|
char 1 104
|
|
char 1 97
|
|
char 1 110
|
|
char 1 103
|
|
char 1 101
|
|
char 1 100
|
|
char 1 0
|
|
align 1
|
|
LABELV $1161
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 0
|
|
align 1
|
|
LABELV $1158
|
|
char 1 102
|
|
char 1 111
|
|
char 1 108
|
|
char 1 108
|
|
char 1 111
|
|
char 1 119
|
|
char 1 112
|
|
char 1 114
|
|
char 1 101
|
|
char 1 118
|
|
char 1 0
|
|
align 1
|
|
LABELV $1155
|
|
char 1 102
|
|
char 1 111
|
|
char 1 108
|
|
char 1 108
|
|
char 1 111
|
|
char 1 119
|
|
char 1 110
|
|
char 1 101
|
|
char 1 120
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $1152
|
|
char 1 102
|
|
char 1 111
|
|
char 1 108
|
|
char 1 108
|
|
char 1 111
|
|
char 1 119
|
|
char 1 0
|
|
align 1
|
|
LABELV $1149
|
|
char 1 108
|
|
char 1 101
|
|
char 1 118
|
|
char 1 101
|
|
char 1 108
|
|
char 1 115
|
|
char 1 104
|
|
char 1 111
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $1144
|
|
char 1 107
|
|
char 1 105
|
|
char 1 108
|
|
char 1 108
|
|
char 1 0
|
|
align 1
|
|
LABELV $1141
|
|
char 1 110
|
|
char 1 111
|
|
char 1 99
|
|
char 1 108
|
|
char 1 105
|
|
char 1 112
|
|
char 1 0
|
|
align 1
|
|
LABELV $1138
|
|
char 1 110
|
|
char 1 111
|
|
char 1 116
|
|
char 1 97
|
|
char 1 114
|
|
char 1 103
|
|
char 1 101
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $1135
|
|
char 1 103
|
|
char 1 111
|
|
char 1 100
|
|
char 1 0
|
|
align 1
|
|
LABELV $1132
|
|
char 1 103
|
|
char 1 105
|
|
char 1 118
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $1124
|
|
char 1 118
|
|
char 1 116
|
|
char 1 97
|
|
char 1 117
|
|
char 1 110
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $1121
|
|
char 1 118
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 108
|
|
char 1 108
|
|
char 1 0
|
|
align 1
|
|
LABELV $1118
|
|
char 1 118
|
|
char 1 111
|
|
char 1 115
|
|
char 1 97
|
|
char 1 121
|
|
char 1 95
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 0
|
|
align 1
|
|
LABELV $1115
|
|
char 1 118
|
|
char 1 111
|
|
char 1 115
|
|
char 1 97
|
|
char 1 121
|
|
char 1 0
|
|
align 1
|
|
LABELV $1110
|
|
char 1 118
|
|
char 1 115
|
|
char 1 97
|
|
char 1 121
|
|
char 1 95
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 0
|
|
align 1
|
|
LABELV $1107
|
|
char 1 118
|
|
char 1 115
|
|
char 1 97
|
|
char 1 121
|
|
char 1 0
|
|
align 1
|
|
LABELV $1104
|
|
char 1 116
|
|
char 1 101
|
|
char 1 108
|
|
char 1 108
|
|
char 1 0
|
|
align 1
|
|
LABELV $1101
|
|
char 1 115
|
|
char 1 97
|
|
char 1 121
|
|
char 1 95
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 0
|
|
align 1
|
|
LABELV $1098
|
|
char 1 115
|
|
char 1 97
|
|
char 1 121
|
|
char 1 0
|
|
align 1
|
|
LABELV $1095
|
|
char 1 98
|
|
char 1 111
|
|
char 1 116
|
|
char 1 95
|
|
char 1 0
|
|
align 1
|
|
LABELV $1087
|
|
char 1 80
|
|
char 1 76
|
|
char 1 68
|
|
char 1 85
|
|
char 1 69
|
|
char 1 76
|
|
char 1 67
|
|
char 1 72
|
|
char 1 65
|
|
char 1 76
|
|
char 1 76
|
|
char 1 69
|
|
char 1 78
|
|
char 1 71
|
|
char 1 69
|
|
char 1 68
|
|
char 1 0
|
|
align 1
|
|
LABELV $1086
|
|
char 1 80
|
|
char 1 76
|
|
char 1 68
|
|
char 1 85
|
|
char 1 69
|
|
char 1 76
|
|
char 1 67
|
|
char 1 72
|
|
char 1 65
|
|
char 1 76
|
|
char 1 76
|
|
char 1 69
|
|
char 1 78
|
|
char 1 71
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $1085
|
|
char 1 99
|
|
char 1 112
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $1078
|
|
char 1 80
|
|
char 1 76
|
|
char 1 68
|
|
char 1 85
|
|
char 1 69
|
|
char 1 76
|
|
char 1 65
|
|
char 1 67
|
|
char 1 67
|
|
char 1 69
|
|
char 1 80
|
|
char 1 84
|
|
char 1 0
|
|
align 1
|
|
LABELV $1077
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 33
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $1052
|
|
char 1 67
|
|
char 1 65
|
|
char 1 78
|
|
char 1 84
|
|
char 1 68
|
|
char 1 85
|
|
char 1 69
|
|
char 1 76
|
|
char 1 95
|
|
char 1 66
|
|
char 1 85
|
|
char 1 83
|
|
char 1 89
|
|
char 1 0
|
|
align 1
|
|
LABELV $1049
|
|
char 1 67
|
|
char 1 65
|
|
char 1 78
|
|
char 1 84
|
|
char 1 68
|
|
char 1 85
|
|
char 1 69
|
|
char 1 76
|
|
char 1 95
|
|
char 1 74
|
|
char 1 85
|
|
char 1 83
|
|
char 1 84
|
|
char 1 68
|
|
char 1 73
|
|
char 1 68
|
|
char 1 0
|
|
align 1
|
|
LABELV $1033
|
|
char 1 78
|
|
char 1 79
|
|
char 1 68
|
|
char 1 85
|
|
char 1 69
|
|
char 1 76
|
|
char 1 95
|
|
char 1 71
|
|
char 1 65
|
|
char 1 77
|
|
char 1 69
|
|
char 1 84
|
|
char 1 89
|
|
char 1 80
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $996
|
|
char 1 115
|
|
char 1 111
|
|
char 1 117
|
|
char 1 110
|
|
char 1 100
|
|
char 1 47
|
|
char 1 119
|
|
char 1 101
|
|
char 1 97
|
|
char 1 112
|
|
char 1 111
|
|
char 1 110
|
|
char 1 115
|
|
char 1 47
|
|
char 1 115
|
|
char 1 97
|
|
char 1 98
|
|
char 1 101
|
|
char 1 114
|
|
char 1 47
|
|
char 1 115
|
|
char 1 97
|
|
char 1 98
|
|
char 1 101
|
|
char 1 114
|
|
char 1 111
|
|
char 1 110
|
|
char 1 46
|
|
char 1 119
|
|
char 1 97
|
|
char 1 118
|
|
char 1 0
|
|
align 1
|
|
LABELV $995
|
|
char 1 115
|
|
char 1 111
|
|
char 1 117
|
|
char 1 110
|
|
char 1 100
|
|
char 1 47
|
|
char 1 119
|
|
char 1 101
|
|
char 1 97
|
|
char 1 112
|
|
char 1 111
|
|
char 1 110
|
|
char 1 115
|
|
char 1 47
|
|
char 1 115
|
|
char 1 97
|
|
char 1 98
|
|
char 1 101
|
|
char 1 114
|
|
char 1 47
|
|
char 1 115
|
|
char 1 97
|
|
char 1 98
|
|
char 1 101
|
|
char 1 114
|
|
char 1 111
|
|
char 1 102
|
|
char 1 102
|
|
char 1 113
|
|
char 1 117
|
|
char 1 105
|
|
char 1 99
|
|
char 1 107
|
|
char 1 46
|
|
char 1 119
|
|
char 1 97
|
|
char 1 118
|
|
char 1 0
|
|
align 1
|
|
LABELV $913
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 117
|
|
char 1 115
|
|
char 1 97
|
|
char 1 103
|
|
char 1 101
|
|
char 1 58
|
|
char 1 32
|
|
char 1 115
|
|
char 1 101
|
|
char 1 116
|
|
char 1 118
|
|
char 1 105
|
|
char 1 101
|
|
char 1 119
|
|
char 1 112
|
|
char 1 111
|
|
char 1 115
|
|
char 1 32
|
|
char 1 120
|
|
char 1 32
|
|
char 1 121
|
|
char 1 32
|
|
char 1 122
|
|
char 1 32
|
|
char 1 121
|
|
char 1 97
|
|
char 1 119
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $896
|
|
char 1 80
|
|
char 1 76
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 67
|
|
char 1 65
|
|
char 1 83
|
|
char 1 84
|
|
char 1 0
|
|
align 1
|
|
LABELV $893
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 76
|
|
char 1 82
|
|
char 1 69
|
|
char 1 65
|
|
char 1 68
|
|
char 1 89
|
|
char 1 67
|
|
char 1 65
|
|
char 1 83
|
|
char 1 84
|
|
char 1 0
|
|
align 1
|
|
LABELV $890
|
|
char 1 78
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 73
|
|
char 1 78
|
|
char 1 80
|
|
char 1 82
|
|
char 1 79
|
|
char 1 71
|
|
char 1 0
|
|
align 1
|
|
LABELV $866
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 99
|
|
char 1 97
|
|
char 1 108
|
|
char 1 108
|
|
char 1 101
|
|
char 1 100
|
|
char 1 32
|
|
char 1 97
|
|
char 1 32
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 32
|
|
char 1 118
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $854
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 84
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 32
|
|
char 1 118
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 32
|
|
char 1 99
|
|
char 1 111
|
|
char 1 109
|
|
char 1 109
|
|
char 1 97
|
|
char 1 110
|
|
char 1 100
|
|
char 1 115
|
|
char 1 32
|
|
char 1 97
|
|
char 1 114
|
|
char 1 101
|
|
char 1 58
|
|
char 1 32
|
|
char 1 108
|
|
char 1 101
|
|
char 1 97
|
|
char 1 100
|
|
char 1 101
|
|
char 1 114
|
|
char 1 32
|
|
char 1 60
|
|
char 1 112
|
|
char 1 108
|
|
char 1 97
|
|
char 1 121
|
|
char 1 101
|
|
char 1 114
|
|
char 1 62
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $853
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 105
|
|
char 1 115
|
|
char 1 32
|
|
char 1 110
|
|
char 1 111
|
|
char 1 116
|
|
char 1 32
|
|
char 1 97
|
|
char 1 32
|
|
char 1 118
|
|
char 1 97
|
|
char 1 108
|
|
char 1 105
|
|
char 1 100
|
|
char 1 32
|
|
char 1 112
|
|
char 1 108
|
|
char 1 97
|
|
char 1 121
|
|
char 1 101
|
|
char 1 114
|
|
char 1 32
|
|
char 1 111
|
|
char 1 110
|
|
char 1 32
|
|
char 1 121
|
|
char 1 111
|
|
char 1 117
|
|
char 1 114
|
|
char 1 32
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $818
|
|
char 1 108
|
|
char 1 101
|
|
char 1 97
|
|
char 1 100
|
|
char 1 101
|
|
char 1 114
|
|
char 1 0
|
|
align 1
|
|
LABELV $812
|
|
char 1 32
|
|
char 1 0
|
|
align 1
|
|
LABELV $803
|
|
char 1 77
|
|
char 1 65
|
|
char 1 88
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 83
|
|
char 1 0
|
|
align 1
|
|
LABELV $800
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 76
|
|
char 1 82
|
|
char 1 69
|
|
char 1 65
|
|
char 1 68
|
|
char 1 89
|
|
char 1 0
|
|
align 1
|
|
LABELV $778
|
|
char 1 80
|
|
char 1 76
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 67
|
|
char 1 65
|
|
char 1 83
|
|
char 1 84
|
|
char 1 0
|
|
align 1
|
|
LABELV $777
|
|
char 1 78
|
|
char 1 79
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 83
|
|
char 1 83
|
|
char 1 80
|
|
char 1 69
|
|
char 1 67
|
|
char 1 0
|
|
align 1
|
|
LABELV $774
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 76
|
|
char 1 82
|
|
char 1 69
|
|
char 1 65
|
|
char 1 68
|
|
char 1 89
|
|
char 1 0
|
|
align 1
|
|
LABELV $771
|
|
char 1 78
|
|
char 1 79
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 73
|
|
char 1 78
|
|
char 1 80
|
|
char 1 82
|
|
char 1 79
|
|
char 1 71
|
|
char 1 0
|
|
align 1
|
|
LABELV $762
|
|
char 1 37
|
|
char 1 105
|
|
char 1 0
|
|
align 1
|
|
LABELV $752
|
|
char 1 80
|
|
char 1 76
|
|
char 1 67
|
|
char 1 65
|
|
char 1 76
|
|
char 1 76
|
|
char 1 69
|
|
char 1 68
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $751
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $747
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $741
|
|
char 1 118
|
|
char 1 115
|
|
char 1 116
|
|
char 1 114
|
|
char 1 32
|
|
char 1 110
|
|
char 1 101
|
|
char 1 120
|
|
char 1 116
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 0
|
|
align 1
|
|
LABELV $738
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 110
|
|
char 1 101
|
|
char 1 120
|
|
char 1 116
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 32
|
|
char 1 110
|
|
char 1 111
|
|
char 1 116
|
|
char 1 32
|
|
char 1 115
|
|
char 1 101
|
|
char 1 116
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $732
|
|
char 1 37
|
|
char 1 115
|
|
char 1 0
|
|
align 1
|
|
LABELV $727
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 59
|
|
char 1 32
|
|
char 1 115
|
|
char 1 101
|
|
char 1 116
|
|
char 1 32
|
|
char 1 110
|
|
char 1 101
|
|
char 1 120
|
|
char 1 116
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $722
|
|
char 1 78
|
|
char 1 79
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 95
|
|
char 1 77
|
|
char 1 65
|
|
char 1 80
|
|
char 1 78
|
|
char 1 79
|
|
char 1 84
|
|
char 1 83
|
|
char 1 85
|
|
char 1 80
|
|
char 1 80
|
|
char 1 79
|
|
char 1 82
|
|
char 1 84
|
|
char 1 69
|
|
char 1 68
|
|
char 1 66
|
|
char 1 89
|
|
char 1 71
|
|
char 1 65
|
|
char 1 77
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $717
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 0
|
|
align 1
|
|
LABELV $714
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 100
|
|
char 1 0
|
|
align 1
|
|
LABELV $709
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 73
|
|
char 1 110
|
|
char 1 118
|
|
char 1 97
|
|
char 1 108
|
|
char 1 105
|
|
char 1 100
|
|
char 1 32
|
|
char 1 103
|
|
char 1 97
|
|
char 1 109
|
|
char 1 101
|
|
char 1 116
|
|
char 1 121
|
|
char 1 112
|
|
char 1 101
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $701
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $696
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 86
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 32
|
|
char 1 99
|
|
char 1 111
|
|
char 1 109
|
|
char 1 109
|
|
char 1 97
|
|
char 1 110
|
|
char 1 100
|
|
char 1 115
|
|
char 1 32
|
|
char 1 97
|
|
char 1 114
|
|
char 1 101
|
|
char 1 58
|
|
char 1 32
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 95
|
|
char 1 114
|
|
char 1 101
|
|
char 1 115
|
|
char 1 116
|
|
char 1 97
|
|
char 1 114
|
|
char 1 116
|
|
char 1 44
|
|
char 1 32
|
|
char 1 110
|
|
char 1 101
|
|
char 1 120
|
|
char 1 116
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 44
|
|
char 1 32
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 32
|
|
char 1 60
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 110
|
|
char 1 97
|
|
char 1 109
|
|
char 1 101
|
|
char 1 62
|
|
char 1 44
|
|
char 1 32
|
|
char 1 103
|
|
char 1 95
|
|
char 1 103
|
|
char 1 97
|
|
char 1 109
|
|
char 1 101
|
|
char 1 116
|
|
char 1 121
|
|
char 1 112
|
|
char 1 101
|
|
char 1 32
|
|
char 1 60
|
|
char 1 110
|
|
char 1 62
|
|
char 1 44
|
|
char 1 32
|
|
char 1 107
|
|
char 1 105
|
|
char 1 99
|
|
char 1 107
|
|
char 1 32
|
|
char 1 60
|
|
char 1 112
|
|
char 1 108
|
|
char 1 97
|
|
char 1 121
|
|
char 1 101
|
|
char 1 114
|
|
char 1 62
|
|
char 1 44
|
|
char 1 32
|
|
char 1 99
|
|
char 1 108
|
|
char 1 105
|
|
char 1 101
|
|
char 1 110
|
|
char 1 116
|
|
char 1 107
|
|
char 1 105
|
|
char 1 99
|
|
char 1 107
|
|
char 1 32
|
|
char 1 60
|
|
char 1 99
|
|
char 1 108
|
|
char 1 105
|
|
char 1 101
|
|
char 1 110
|
|
char 1 116
|
|
char 1 110
|
|
char 1 117
|
|
char 1 109
|
|
char 1 62
|
|
char 1 44
|
|
char 1 32
|
|
char 1 103
|
|
char 1 95
|
|
char 1 100
|
|
char 1 111
|
|
char 1 87
|
|
char 1 97
|
|
char 1 114
|
|
char 1 109
|
|
char 1 117
|
|
char 1 112
|
|
char 1 44
|
|
char 1 32
|
|
char 1 116
|
|
char 1 105
|
|
char 1 109
|
|
char 1 101
|
|
char 1 108
|
|
char 1 105
|
|
char 1 109
|
|
char 1 105
|
|
char 1 116
|
|
char 1 32
|
|
char 1 60
|
|
char 1 116
|
|
char 1 105
|
|
char 1 109
|
|
char 1 101
|
|
char 1 62
|
|
char 1 44
|
|
char 1 32
|
|
char 1 102
|
|
char 1 114
|
|
char 1 97
|
|
char 1 103
|
|
char 1 108
|
|
char 1 105
|
|
char 1 109
|
|
char 1 105
|
|
char 1 116
|
|
char 1 32
|
|
char 1 60
|
|
char 1 102
|
|
char 1 114
|
|
char 1 97
|
|
char 1 103
|
|
char 1 115
|
|
char 1 62
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $695
|
|
char 1 102
|
|
char 1 114
|
|
char 1 97
|
|
char 1 103
|
|
char 1 108
|
|
char 1 105
|
|
char 1 109
|
|
char 1 105
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $692
|
|
char 1 116
|
|
char 1 105
|
|
char 1 109
|
|
char 1 101
|
|
char 1 108
|
|
char 1 105
|
|
char 1 109
|
|
char 1 105
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $689
|
|
char 1 103
|
|
char 1 95
|
|
char 1 100
|
|
char 1 111
|
|
char 1 87
|
|
char 1 97
|
|
char 1 114
|
|
char 1 109
|
|
char 1 117
|
|
char 1 112
|
|
char 1 0
|
|
align 1
|
|
LABELV $686
|
|
char 1 99
|
|
char 1 108
|
|
char 1 105
|
|
char 1 101
|
|
char 1 110
|
|
char 1 116
|
|
char 1 107
|
|
char 1 105
|
|
char 1 99
|
|
char 1 107
|
|
char 1 0
|
|
align 1
|
|
LABELV $683
|
|
char 1 107
|
|
char 1 105
|
|
char 1 99
|
|
char 1 107
|
|
char 1 0
|
|
align 1
|
|
LABELV $680
|
|
char 1 103
|
|
char 1 95
|
|
char 1 103
|
|
char 1 97
|
|
char 1 109
|
|
char 1 101
|
|
char 1 116
|
|
char 1 121
|
|
char 1 112
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $677
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 0
|
|
align 1
|
|
LABELV $674
|
|
char 1 110
|
|
char 1 101
|
|
char 1 120
|
|
char 1 116
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 0
|
|
align 1
|
|
LABELV $671
|
|
char 1 109
|
|
char 1 97
|
|
char 1 112
|
|
char 1 95
|
|
char 1 114
|
|
char 1 101
|
|
char 1 115
|
|
char 1 116
|
|
char 1 97
|
|
char 1 114
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $668
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 73
|
|
char 1 110
|
|
char 1 118
|
|
char 1 97
|
|
char 1 108
|
|
char 1 105
|
|
char 1 100
|
|
char 1 32
|
|
char 1 118
|
|
char 1 111
|
|
char 1 116
|
|
char 1 101
|
|
char 1 32
|
|
char 1 115
|
|
char 1 116
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 103
|
|
char 1 46
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $664
|
|
char 1 78
|
|
char 1 79
|
|
char 1 83
|
|
char 1 80
|
|
char 1 69
|
|
char 1 67
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $661
|
|
char 1 77
|
|
char 1 65
|
|
char 1 88
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 83
|
|
char 1 0
|
|
align 1
|
|
LABELV $658
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 73
|
|
char 1 78
|
|
char 1 80
|
|
char 1 82
|
|
char 1 79
|
|
char 1 71
|
|
char 1 82
|
|
char 1 69
|
|
char 1 83
|
|
char 1 83
|
|
char 1 0
|
|
align 1
|
|
LABELV $654
|
|
char 1 78
|
|
char 1 79
|
|
char 1 86
|
|
char 1 79
|
|
char 1 84
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $649
|
|
char 1 67
|
|
char 1 97
|
|
char 1 112
|
|
char 1 116
|
|
char 1 117
|
|
char 1 114
|
|
char 1 101
|
|
char 1 32
|
|
char 1 116
|
|
char 1 104
|
|
char 1 101
|
|
char 1 32
|
|
char 1 89
|
|
char 1 115
|
|
char 1 97
|
|
char 1 108
|
|
char 1 97
|
|
char 1 109
|
|
char 1 105
|
|
char 1 114
|
|
char 1 105
|
|
char 1 0
|
|
align 1
|
|
LABELV $648
|
|
char 1 67
|
|
char 1 97
|
|
char 1 112
|
|
char 1 116
|
|
char 1 117
|
|
char 1 114
|
|
char 1 101
|
|
char 1 32
|
|
char 1 116
|
|
char 1 104
|
|
char 1 101
|
|
char 1 32
|
|
char 1 70
|
|
char 1 108
|
|
char 1 97
|
|
char 1 103
|
|
char 1 0
|
|
align 1
|
|
LABELV $647
|
|
char 1 78
|
|
char 1 47
|
|
char 1 65
|
|
char 1 0
|
|
align 1
|
|
LABELV $646
|
|
char 1 84
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 32
|
|
char 1 70
|
|
char 1 70
|
|
char 1 65
|
|
char 1 0
|
|
align 1
|
|
LABELV $645
|
|
char 1 83
|
|
char 1 105
|
|
char 1 110
|
|
char 1 103
|
|
char 1 108
|
|
char 1 101
|
|
char 1 32
|
|
char 1 80
|
|
char 1 108
|
|
char 1 97
|
|
char 1 121
|
|
char 1 101
|
|
char 1 114
|
|
char 1 0
|
|
align 1
|
|
LABELV $644
|
|
char 1 68
|
|
char 1 117
|
|
char 1 101
|
|
char 1 108
|
|
char 1 0
|
|
align 1
|
|
LABELV $643
|
|
char 1 74
|
|
char 1 101
|
|
char 1 100
|
|
char 1 105
|
|
char 1 32
|
|
char 1 77
|
|
char 1 97
|
|
char 1 115
|
|
char 1 116
|
|
char 1 101
|
|
char 1 114
|
|
char 1 0
|
|
align 1
|
|
LABELV $642
|
|
char 1 72
|
|
char 1 111
|
|
char 1 108
|
|
char 1 111
|
|
char 1 99
|
|
char 1 114
|
|
char 1 111
|
|
char 1 110
|
|
char 1 32
|
|
char 1 70
|
|
char 1 70
|
|
char 1 65
|
|
char 1 0
|
|
align 1
|
|
LABELV $641
|
|
char 1 70
|
|
char 1 114
|
|
char 1 101
|
|
char 1 101
|
|
char 1 32
|
|
char 1 70
|
|
char 1 111
|
|
char 1 114
|
|
char 1 32
|
|
char 1 65
|
|
char 1 108
|
|
char 1 108
|
|
char 1 0
|
|
align 1
|
|
LABELV $632
|
|
char 1 114
|
|
char 1 101
|
|
char 1 112
|
|
char 1 111
|
|
char 1 114
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $631
|
|
char 1 115
|
|
char 1 101
|
|
char 1 97
|
|
char 1 114
|
|
char 1 99
|
|
char 1 104
|
|
char 1 32
|
|
char 1 97
|
|
char 1 110
|
|
char 1 100
|
|
char 1 32
|
|
char 1 100
|
|
char 1 101
|
|
char 1 115
|
|
char 1 116
|
|
char 1 114
|
|
char 1 111
|
|
char 1 121
|
|
char 1 0
|
|
align 1
|
|
LABELV $630
|
|
char 1 103
|
|
char 1 117
|
|
char 1 97
|
|
char 1 114
|
|
char 1 100
|
|
char 1 32
|
|
char 1 108
|
|
char 1 111
|
|
char 1 99
|
|
char 1 97
|
|
char 1 116
|
|
char 1 105
|
|
char 1 111
|
|
char 1 110
|
|
char 1 0
|
|
align 1
|
|
LABELV $629
|
|
char 1 99
|
|
char 1 111
|
|
char 1 118
|
|
char 1 101
|
|
char 1 114
|
|
char 1 32
|
|
char 1 109
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $628
|
|
char 1 99
|
|
char 1 111
|
|
char 1 109
|
|
char 1 101
|
|
char 1 32
|
|
char 1 104
|
|
char 1 101
|
|
char 1 114
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $627
|
|
char 1 104
|
|
char 1 111
|
|
char 1 108
|
|
char 1 100
|
|
char 1 32
|
|
char 1 116
|
|
char 1 104
|
|
char 1 105
|
|
char 1 115
|
|
char 1 32
|
|
char 1 112
|
|
char 1 111
|
|
char 1 115
|
|
char 1 105
|
|
char 1 116
|
|
char 1 105
|
|
char 1 111
|
|
char 1 110
|
|
char 1 0
|
|
align 1
|
|
LABELV $626
|
|
char 1 104
|
|
char 1 111
|
|
char 1 108
|
|
char 1 100
|
|
char 1 32
|
|
char 1 121
|
|
char 1 111
|
|
char 1 117
|
|
char 1 114
|
|
char 1 32
|
|
char 1 112
|
|
char 1 111
|
|
char 1 115
|
|
char 1 105
|
|
char 1 116
|
|
char 1 105
|
|
char 1 111
|
|
char 1 110
|
|
char 1 0
|
|
align 1
|
|
LABELV $625
|
|
char 1 116
|
|
char 1 97
|
|
char 1 117
|
|
char 1 110
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $622
|
|
char 1 112
|
|
char 1 114
|
|
char 1 97
|
|
char 1 105
|
|
char 1 115
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $605
|
|
char 1 107
|
|
char 1 105
|
|
char 1 108
|
|
char 1 108
|
|
char 1 95
|
|
char 1 105
|
|
char 1 110
|
|
char 1 115
|
|
char 1 117
|
|
char 1 108
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $600
|
|
char 1 107
|
|
char 1 105
|
|
char 1 108
|
|
char 1 108
|
|
char 1 95
|
|
char 1 103
|
|
char 1 97
|
|
char 1 117
|
|
char 1 110
|
|
char 1 116
|
|
char 1 108
|
|
char 1 101
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $589
|
|
char 1 100
|
|
char 1 101
|
|
char 1 97
|
|
char 1 116
|
|
char 1 104
|
|
char 1 95
|
|
char 1 105
|
|
char 1 110
|
|
char 1 115
|
|
char 1 117
|
|
char 1 108
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $579
|
|
char 1 118
|
|
char 1 116
|
|
char 1 101
|
|
char 1 108
|
|
char 1 108
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 116
|
|
char 1 111
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $557
|
|
char 1 118
|
|
char 1 111
|
|
char 1 105
|
|
char 1 99
|
|
char 1 101
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $547
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 100
|
|
char 1 32
|
|
char 1 37
|
|
char 1 100
|
|
char 1 32
|
|
char 1 37
|
|
char 1 100
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 0
|
|
align 1
|
|
LABELV $546
|
|
char 1 118
|
|
char 1 99
|
|
char 1 104
|
|
char 1 97
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $545
|
|
char 1 118
|
|
char 1 116
|
|
char 1 101
|
|
char 1 108
|
|
char 1 108
|
|
char 1 0
|
|
align 1
|
|
LABELV $542
|
|
char 1 118
|
|
char 1 116
|
|
char 1 99
|
|
char 1 104
|
|
char 1 97
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $525
|
|
char 1 116
|
|
char 1 101
|
|
char 1 108
|
|
char 1 108
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 116
|
|
char 1 111
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $503
|
|
char 1 37
|
|
char 1 115
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $497
|
|
char 1 25
|
|
char 1 91
|
|
char 1 37
|
|
char 1 115
|
|
char 1 37
|
|
char 1 99
|
|
char 1 37
|
|
char 1 99
|
|
char 1 25
|
|
char 1 93
|
|
char 1 25
|
|
char 1 58
|
|
char 1 32
|
|
char 1 0
|
|
align 1
|
|
LABELV $496
|
|
char 1 25
|
|
char 1 91
|
|
char 1 37
|
|
char 1 115
|
|
char 1 37
|
|
char 1 99
|
|
char 1 37
|
|
char 1 99
|
|
char 1 25
|
|
char 1 93
|
|
char 1 32
|
|
char 1 40
|
|
char 1 37
|
|
char 1 115
|
|
char 1 41
|
|
char 1 25
|
|
char 1 58
|
|
char 1 32
|
|
char 1 0
|
|
align 1
|
|
LABELV $491
|
|
char 1 25
|
|
char 1 40
|
|
char 1 37
|
|
char 1 115
|
|
char 1 37
|
|
char 1 99
|
|
char 1 37
|
|
char 1 99
|
|
char 1 25
|
|
char 1 41
|
|
char 1 25
|
|
char 1 58
|
|
char 1 32
|
|
char 1 0
|
|
align 1
|
|
LABELV $490
|
|
char 1 25
|
|
char 1 40
|
|
char 1 37
|
|
char 1 115
|
|
char 1 37
|
|
char 1 99
|
|
char 1 37
|
|
char 1 99
|
|
char 1 25
|
|
char 1 41
|
|
char 1 32
|
|
char 1 40
|
|
char 1 37
|
|
char 1 115
|
|
char 1 41
|
|
char 1 25
|
|
char 1 58
|
|
char 1 32
|
|
char 1 0
|
|
align 1
|
|
LABELV $487
|
|
char 1 115
|
|
char 1 97
|
|
char 1 121
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $485
|
|
char 1 37
|
|
char 1 115
|
|
char 1 37
|
|
char 1 99
|
|
char 1 37
|
|
char 1 99
|
|
char 1 25
|
|
char 1 58
|
|
char 1 32
|
|
char 1 0
|
|
align 1
|
|
LABELV $484
|
|
char 1 115
|
|
char 1 97
|
|
char 1 121
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $473
|
|
char 1 99
|
|
char 1 104
|
|
char 1 97
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $472
|
|
char 1 116
|
|
char 1 99
|
|
char 1 104
|
|
char 1 97
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $471
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 37
|
|
char 1 99
|
|
char 1 37
|
|
char 1 99
|
|
char 1 37
|
|
char 1 115
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $443
|
|
char 1 67
|
|
char 1 109
|
|
char 1 100
|
|
char 1 95
|
|
char 1 70
|
|
char 1 111
|
|
char 1 108
|
|
char 1 108
|
|
char 1 111
|
|
char 1 119
|
|
char 1 67
|
|
char 1 121
|
|
char 1 99
|
|
char 1 108
|
|
char 1 101
|
|
char 1 95
|
|
char 1 102
|
|
char 1 58
|
|
char 1 32
|
|
char 1 98
|
|
char 1 97
|
|
char 1 100
|
|
char 1 32
|
|
char 1 100
|
|
char 1 105
|
|
char 1 114
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 0
|
|
align 1
|
|
LABELV $414
|
|
char 1 94
|
|
char 1 50
|
|
char 1 0
|
|
align 1
|
|
LABELV $413
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $412
|
|
char 1 70
|
|
char 1 79
|
|
char 1 82
|
|
char 1 67
|
|
char 1 69
|
|
char 1 80
|
|
char 1 79
|
|
char 1 87
|
|
char 1 69
|
|
char 1 82
|
|
char 1 67
|
|
char 1 72
|
|
char 1 65
|
|
char 1 78
|
|
char 1 71
|
|
char 1 69
|
|
char 1 68
|
|
char 1 0
|
|
align 1
|
|
LABELV $403
|
|
char 1 78
|
|
char 1 79
|
|
char 1 83
|
|
char 1 87
|
|
char 1 73
|
|
char 1 84
|
|
char 1 67
|
|
char 1 72
|
|
char 1 0
|
|
align 1
|
|
LABELV $398
|
|
char 1 80
|
|
char 1 82
|
|
char 1 73
|
|
char 1 78
|
|
char 1 84
|
|
char 1 83
|
|
char 1 80
|
|
char 1 69
|
|
char 1 67
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 0
|
|
align 1
|
|
LABELV $397
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 83
|
|
char 1 112
|
|
char 1 101
|
|
char 1 99
|
|
char 1 116
|
|
char 1 97
|
|
char 1 116
|
|
char 1 111
|
|
char 1 114
|
|
char 1 32
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $395
|
|
char 1 80
|
|
char 1 82
|
|
char 1 73
|
|
char 1 78
|
|
char 1 84
|
|
char 1 70
|
|
char 1 82
|
|
char 1 69
|
|
char 1 69
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 0
|
|
align 1
|
|
LABELV $394
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 70
|
|
char 1 114
|
|
char 1 101
|
|
char 1 101
|
|
char 1 32
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $392
|
|
char 1 80
|
|
char 1 82
|
|
char 1 73
|
|
char 1 78
|
|
char 1 84
|
|
char 1 82
|
|
char 1 69
|
|
char 1 68
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 0
|
|
align 1
|
|
LABELV $391
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 82
|
|
char 1 101
|
|
char 1 100
|
|
char 1 32
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $389
|
|
char 1 80
|
|
char 1 82
|
|
char 1 73
|
|
char 1 78
|
|
char 1 84
|
|
char 1 66
|
|
char 1 76
|
|
char 1 85
|
|
char 1 69
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 0
|
|
align 1
|
|
LABELV $350
|
|
char 1 84
|
|
char 1 79
|
|
char 1 79
|
|
char 1 77
|
|
char 1 65
|
|
char 1 78
|
|
char 1 89
|
|
char 1 66
|
|
char 1 76
|
|
char 1 85
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $345
|
|
char 1 84
|
|
char 1 79
|
|
char 1 79
|
|
char 1 77
|
|
char 1 65
|
|
char 1 78
|
|
char 1 89
|
|
char 1 82
|
|
char 1 69
|
|
char 1 68
|
|
char 1 0
|
|
align 1
|
|
LABELV $334
|
|
char 1 98
|
|
char 1 0
|
|
align 1
|
|
LABELV $333
|
|
char 1 98
|
|
char 1 108
|
|
char 1 117
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $329
|
|
char 1 114
|
|
char 1 0
|
|
align 1
|
|
LABELV $328
|
|
char 1 114
|
|
char 1 101
|
|
char 1 100
|
|
char 1 0
|
|
align 1
|
|
LABELV $321
|
|
char 1 115
|
|
char 1 0
|
|
align 1
|
|
LABELV $320
|
|
char 1 115
|
|
char 1 112
|
|
char 1 101
|
|
char 1 99
|
|
char 1 116
|
|
char 1 97
|
|
char 1 116
|
|
char 1 111
|
|
char 1 114
|
|
char 1 0
|
|
align 1
|
|
LABELV $317
|
|
char 1 102
|
|
char 1 111
|
|
char 1 108
|
|
char 1 108
|
|
char 1 111
|
|
char 1 119
|
|
char 1 50
|
|
char 1 0
|
|
align 1
|
|
LABELV $314
|
|
char 1 102
|
|
char 1 111
|
|
char 1 108
|
|
char 1 108
|
|
char 1 111
|
|
char 1 119
|
|
char 1 49
|
|
char 1 0
|
|
align 1
|
|
LABELV $310
|
|
char 1 115
|
|
char 1 99
|
|
char 1 111
|
|
char 1 114
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $309
|
|
char 1 115
|
|
char 1 99
|
|
char 1 111
|
|
char 1 114
|
|
char 1 101
|
|
char 1 98
|
|
char 1 111
|
|
char 1 97
|
|
char 1 114
|
|
char 1 100
|
|
char 1 0
|
|
align 1
|
|
LABELV $305
|
|
char 1 115
|
|
char 1 101
|
|
char 1 116
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 58
|
|
char 1 32
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $304
|
|
char 1 74
|
|
char 1 79
|
|
char 1 73
|
|
char 1 78
|
|
char 1 69
|
|
char 1 68
|
|
char 1 84
|
|
char 1 72
|
|
char 1 69
|
|
char 1 66
|
|
char 1 65
|
|
char 1 84
|
|
char 1 84
|
|
char 1 76
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $298
|
|
char 1 74
|
|
char 1 79
|
|
char 1 73
|
|
char 1 78
|
|
char 1 69
|
|
char 1 68
|
|
char 1 84
|
|
char 1 72
|
|
char 1 69
|
|
char 1 83
|
|
char 1 80
|
|
char 1 69
|
|
char 1 67
|
|
char 1 84
|
|
char 1 65
|
|
char 1 84
|
|
char 1 79
|
|
char 1 82
|
|
char 1 83
|
|
char 1 0
|
|
align 1
|
|
LABELV $295
|
|
char 1 74
|
|
char 1 79
|
|
char 1 73
|
|
char 1 78
|
|
char 1 69
|
|
char 1 68
|
|
char 1 84
|
|
char 1 72
|
|
char 1 69
|
|
char 1 66
|
|
char 1 76
|
|
char 1 85
|
|
char 1 69
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 0
|
|
align 1
|
|
LABELV $292
|
|
char 1 74
|
|
char 1 79
|
|
char 1 73
|
|
char 1 78
|
|
char 1 69
|
|
char 1 68
|
|
char 1 84
|
|
char 1 72
|
|
char 1 69
|
|
char 1 82
|
|
char 1 69
|
|
char 1 68
|
|
char 1 84
|
|
char 1 69
|
|
char 1 65
|
|
char 1 77
|
|
char 1 0
|
|
align 1
|
|
LABELV $291
|
|
char 1 99
|
|
char 1 112
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 94
|
|
char 1 55
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $279
|
|
char 1 65
|
|
char 1 84
|
|
char 1 84
|
|
char 1 69
|
|
char 1 77
|
|
char 1 80
|
|
char 1 84
|
|
char 1 68
|
|
char 1 85
|
|
char 1 69
|
|
char 1 76
|
|
char 1 75
|
|
char 1 73
|
|
char 1 76
|
|
char 1 76
|
|
char 1 0
|
|
align 1
|
|
LABELV $268
|
|
char 1 37
|
|
char 1 100
|
|
char 1 0
|
|
align 1
|
|
LABELV $267
|
|
char 1 116
|
|
char 1 101
|
|
char 1 97
|
|
char 1 109
|
|
char 1 116
|
|
char 1 97
|
|
char 1 115
|
|
char 1 107
|
|
char 1 0
|
|
align 1
|
|
LABELV $263
|
|
char 1 99
|
|
char 1 108
|
|
char 1 105
|
|
char 1 101
|
|
char 1 110
|
|
char 1 116
|
|
char 1 76
|
|
char 1 101
|
|
char 1 118
|
|
char 1 101
|
|
char 1 108
|
|
char 1 83
|
|
char 1 104
|
|
char 1 111
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $262
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 77
|
|
char 1 117
|
|
char 1 115
|
|
char 1 116
|
|
char 1 32
|
|
char 1 98
|
|
char 1 101
|
|
char 1 32
|
|
char 1 105
|
|
char 1 110
|
|
char 1 32
|
|
char 1 103
|
|
char 1 95
|
|
char 1 103
|
|
char 1 97
|
|
char 1 109
|
|
char 1 101
|
|
char 1 116
|
|
char 1 121
|
|
char 1 112
|
|
char 1 101
|
|
char 1 32
|
|
char 1 48
|
|
char 1 32
|
|
char 1 102
|
|
char 1 111
|
|
char 1 114
|
|
char 1 32
|
|
char 1 108
|
|
char 1 101
|
|
char 1 118
|
|
char 1 101
|
|
char 1 108
|
|
char 1 115
|
|
char 1 104
|
|
char 1 111
|
|
char 1 116
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $252
|
|
char 1 110
|
|
char 1 111
|
|
char 1 99
|
|
char 1 108
|
|
char 1 105
|
|
char 1 112
|
|
char 1 32
|
|
char 1 79
|
|
char 1 78
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $251
|
|
char 1 110
|
|
char 1 111
|
|
char 1 99
|
|
char 1 108
|
|
char 1 105
|
|
char 1 112
|
|
char 1 32
|
|
char 1 79
|
|
char 1 70
|
|
char 1 70
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $245
|
|
char 1 110
|
|
char 1 111
|
|
char 1 116
|
|
char 1 97
|
|
char 1 114
|
|
char 1 103
|
|
char 1 101
|
|
char 1 116
|
|
char 1 32
|
|
char 1 79
|
|
char 1 78
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $244
|
|
char 1 110
|
|
char 1 111
|
|
char 1 116
|
|
char 1 97
|
|
char 1 114
|
|
char 1 103
|
|
char 1 101
|
|
char 1 116
|
|
char 1 32
|
|
char 1 79
|
|
char 1 70
|
|
char 1 70
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $238
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $237
|
|
char 1 103
|
|
char 1 111
|
|
char 1 100
|
|
char 1 109
|
|
char 1 111
|
|
char 1 100
|
|
char 1 101
|
|
char 1 32
|
|
char 1 79
|
|
char 1 78
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $236
|
|
char 1 103
|
|
char 1 111
|
|
char 1 100
|
|
char 1 109
|
|
char 1 111
|
|
char 1 100
|
|
char 1 101
|
|
char 1 32
|
|
char 1 79
|
|
char 1 70
|
|
char 1 70
|
|
char 1 10
|
|
char 1 0
|
|
align 1
|
|
LABELV $224
|
|
char 1 97
|
|
char 1 115
|
|
char 1 115
|
|
char 1 105
|
|
char 1 115
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $221
|
|
char 1 100
|
|
char 1 101
|
|
char 1 102
|
|
char 1 101
|
|
char 1 110
|
|
char 1 100
|
|
char 1 0
|
|
align 1
|
|
LABELV $218
|
|
char 1 103
|
|
char 1 97
|
|
char 1 117
|
|
char 1 110
|
|
char 1 116
|
|
char 1 108
|
|
char 1 101
|
|
char 1 116
|
|
char 1 97
|
|
char 1 119
|
|
char 1 97
|
|
char 1 114
|
|
char 1 100
|
|
char 1 0
|
|
align 1
|
|
LABELV $215
|
|
char 1 105
|
|
char 1 109
|
|
char 1 112
|
|
char 1 114
|
|
char 1 101
|
|
char 1 115
|
|
char 1 115
|
|
char 1 105
|
|
char 1 118
|
|
char 1 101
|
|
char 1 0
|
|
align 1
|
|
LABELV $212
|
|
char 1 101
|
|
char 1 120
|
|
char 1 99
|
|
char 1 101
|
|
char 1 108
|
|
char 1 108
|
|
char 1 101
|
|
char 1 110
|
|
char 1 116
|
|
char 1 0
|
|
align 1
|
|
LABELV $204
|
|
char 1 97
|
|
char 1 114
|
|
char 1 109
|
|
char 1 111
|
|
char 1 114
|
|
char 1 0
|
|
align 1
|
|
LABELV $192
|
|
char 1 97
|
|
char 1 109
|
|
char 1 109
|
|
char 1 111
|
|
char 1 0
|
|
align 1
|
|
LABELV $189
|
|
char 1 119
|
|
char 1 101
|
|
char 1 97
|
|
char 1 112
|
|
char 1 111
|
|
char 1 110
|
|
char 1 110
|
|
char 1 117
|
|
char 1 109
|
|
char 1 0
|
|
align 1
|
|
LABELV $183
|
|
char 1 119
|
|
char 1 101
|
|
char 1 97
|
|
char 1 112
|
|
char 1 111
|
|
char 1 110
|
|
char 1 115
|
|
char 1 0
|
|
align 1
|
|
LABELV $173
|
|
char 1 104
|
|
char 1 101
|
|
char 1 97
|
|
char 1 108
|
|
char 1 116
|
|
char 1 104
|
|
char 1 0
|
|
align 1
|
|
LABELV $165
|
|
char 1 97
|
|
char 1 108
|
|
char 1 108
|
|
char 1 0
|
|
align 1
|
|
LABELV $159
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 85
|
|
char 1 115
|
|
char 1 101
|
|
char 1 114
|
|
char 1 32
|
|
char 1 37
|
|
char 1 115
|
|
char 1 32
|
|
char 1 105
|
|
char 1 115
|
|
char 1 32
|
|
char 1 110
|
|
char 1 111
|
|
char 1 116
|
|
char 1 32
|
|
char 1 111
|
|
char 1 110
|
|
char 1 32
|
|
char 1 116
|
|
char 1 104
|
|
char 1 101
|
|
char 1 32
|
|
char 1 115
|
|
char 1 101
|
|
char 1 114
|
|
char 1 118
|
|
char 1 101
|
|
char 1 114
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $149
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 67
|
|
char 1 108
|
|
char 1 105
|
|
char 1 101
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 105
|
|
char 1 115
|
|
char 1 32
|
|
char 1 110
|
|
char 1 111
|
|
char 1 116
|
|
char 1 32
|
|
char 1 97
|
|
char 1 99
|
|
char 1 116
|
|
char 1 105
|
|
char 1 118
|
|
char 1 101
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $146
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 66
|
|
char 1 97
|
|
char 1 100
|
|
char 1 32
|
|
char 1 99
|
|
char 1 108
|
|
char 1 105
|
|
char 1 101
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 115
|
|
char 1 108
|
|
char 1 111
|
|
char 1 116
|
|
char 1 58
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $120
|
|
char 1 77
|
|
char 1 85
|
|
char 1 83
|
|
char 1 84
|
|
char 1 66
|
|
char 1 69
|
|
char 1 65
|
|
char 1 76
|
|
char 1 73
|
|
char 1 86
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $117
|
|
char 1 78
|
|
char 1 79
|
|
char 1 67
|
|
char 1 72
|
|
char 1 69
|
|
char 1 65
|
|
char 1 84
|
|
char 1 83
|
|
char 1 0
|
|
align 1
|
|
LABELV $116
|
|
char 1 83
|
|
char 1 86
|
|
char 1 73
|
|
char 1 78
|
|
char 1 71
|
|
char 1 65
|
|
char 1 77
|
|
char 1 69
|
|
char 1 0
|
|
align 1
|
|
LABELV $115
|
|
char 1 112
|
|
char 1 114
|
|
char 1 105
|
|
char 1 110
|
|
char 1 116
|
|
char 1 32
|
|
char 1 34
|
|
char 1 37
|
|
char 1 115
|
|
char 1 10
|
|
char 1 34
|
|
char 1 0
|
|
align 1
|
|
LABELV $105
|
|
char 1 115
|
|
char 1 99
|
|
char 1 111
|
|
char 1 114
|
|
char 1 101
|
|
char 1 115
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 37
|
|
char 1 115
|
|
char 1 0
|
|
align 1
|
|
LABELV $97
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 32
|
|
char 1 37
|
|
char 1 105
|
|
char 1 0
|