@@ -73,9 +73,43 @@ init()
7373
7474
7575 level thread onPlayerConnect();
76-
7776}
7877
78+ /*default_onTimeLimit()
79+ {
80+ var_0 = undefined;
81+ level.finalKillCam_winner = "none";
82+
83+ if ( level.teamBased )
84+ {
85+ if ( game["teamScores"]["allies"] == game["teamScores"]["axis"] )
86+ var_0 = "tie";
87+ else if ( game["teamScores"]["axis"] > game["teamScores"]["allies"] )
88+ {
89+ level.finalKillCam_winner = "axis";
90+ var_0 = "axis";
91+ }
92+ else
93+ {
94+ level.finalKillCam_winner = "allies";
95+ var_0 = "allies";
96+ }
97+
98+ logstring( "time limit, win: " + var_0 + ", allies: " + game["teamScores"]["allies"] + ", opfor: " + game["teamScores"]["axis"] );
99+ }
100+ else
101+ {
102+ var_0 = maps\mp\gametypes_gamescore::getHighestScoringPlayer();
103+
104+ if ( isdefined( var_0 ) )
105+ logstring( "time limit, win: " + var_0.name );
106+ else
107+ logstring( "time limit, tie" );
108+ }
109+
110+ thread endGame( var_0, game["strings"]["time_limit_reached"] );
111+ }*/
112+
79113ArrayRemoveIndex(array, index)
80114{
81115 new_array = [];
@@ -84,14 +118,18 @@ ArrayRemoveIndex(array, index)
84118 if (i != index)
85119 new_array[new_array.size ] = array[i];
86120 }
87- array = new_array;
121+ return new_array;
88122}
89123
90124mapvote()
91125{
92126 // Choose random maps from the array
93127 maps = [];
94128 maps = strTok( getDvar(" mv_maps" ), " " );
129+
130+ setAllClientsDvar(" votetime" , " 00:00" );
131+ value = " 0/" + int(num_of_bots()/2 +1 );
132+
95133 for (i = 1 ; i <= 6 ;i++)
96134 {
97135 dvar = " map" + i;
@@ -101,7 +139,11 @@ mapvote()
101139 map_preview = " preview_" + map;
102140 setAllClientsDvar( dvar, map_preview );
103141 setAllClientsDvar( dvarname, getmapname( map ) );
104- ArrayRemoveIndex(maps, index);
142+ maps = ArrayRemoveIndex(maps, index);
143+
144+ // Reset UI votes
145+ dvar = " mapvotes" + i;
146+ setAllClientsDvar( dvar, value );
105147 }
106148
107149 for (i = 0 ; i < level .players.size ; i++)
@@ -129,7 +171,6 @@ mapvote()
129171 if ( !level .players[ i ] is_a_bot() )
130172 {
131173 level .players[ i ] closeMenu(" quickresponses" );
132-
133174 }
134175 }
135176 dsr = " " ;
@@ -140,7 +181,6 @@ mapvote()
140181 }
141182 setDvar(" sv_maprotation" , dsr + " map " + mapimgtomapid( getDvar(" map" + winner) ) );
142183 setDvar(" sv_maprotationcurrent" , dsr + " map " + mapimgtomapid( getDvar(" map" + winner) ) );
143-
144184}
145185
146186getindexfomarray(array, value)
@@ -187,7 +227,8 @@ setAllClientsDvar( dvar, value )
187227{
188228 setDvar(dvar, value);
189229 for (i = 0 ; i < level .players.size ; i++)
190- level .players[ i ] setClientDvar( dvar, value );
230+ if ( !level .players[ i ] is_a_bot() )
231+ level .players[ i ] setClientDvar( dvar, value );
191232}
192233mapimgtoname(img)
193234{
@@ -291,13 +332,10 @@ managetime()
291332 else
292333 {
293334 strtime = strtime + " " + seconds;
294- }
295-
335+ }
296336
297337 setAllClientsDvar(" votetime" , strtime);
298338
299-
300-
301339 wait 1 ;
302340 time--;
303341 }
@@ -328,22 +366,19 @@ managevotes()
328366 return ;
329367 }
330368 }
331- wait 0.05 ;
332-
333-
369+ wait 0.05 ;
334370 }
335371}
336372
337373main()
338374{
339375 replaceFunc(maps\mp\gametypes\_quickmessages::quickresponses, ::quickresponses);
340- replacefunc(maps\mp\gametypes\_gamelogic::waittillFinalKillcamDone, ::waittillFinalKillcamDone );
376+ replacefunc(maps\mp\gametypes\_gamelogic::waittillFinalKillcamDone, ::_waittillFinalKillcamDone );
341377}
342378quickresponses(response){}
343379
344- waittillFinalKillcamDone ()
380+ _waittillFinalKillcamDone ()
345381{
346-
347382 if ( !IsDefined( level .finalKillCam_winner ) )
348383 {
349384 if (wasLastRound())
@@ -356,21 +391,15 @@ waittillFinalKillcamDone()
356391 if (wasLastRound())
357392 mapvote();
358393
359-
360394 return 1 ;
361395}
362396
363397onPlayerConnect()
364398{
365399 level endon (" game_ended" );
366- once = 0 ;
367400 for (;;)
368401 {
369402 level waittill (" connected" , player);
370- if (!once)
371- {
372- once = 1 ;
373- }
374403 player thread onPlayerSpawned();
375404 }
376405}
0 commit comments