#include "../common/constants.qh"
#include "../common/deathtypes/all.qh"
#include "../common/mapinfo.qh"
-#include "../common/monsters/all.qh"
+#include "../common/monsters/_mod.qh"
#include "../common/monsters/sv_monsters.qh"
#include "../common/vehicles/all.qh"
#include "../common/notifications/all.qh"
{
WriteHeader(MSG_BROADCAST, TE_CSQC_PINGPLREPORT);
WriteByte(MSG_BROADCAST, this.cnt);
- WriteShort(MSG_BROADCAST, max(1, e.ping));
- WriteByte(MSG_BROADCAST, ceil(e.ping_packetloss * 255));
- WriteByte(MSG_BROADCAST, ceil(e.ping_movementloss * 255));
+ WriteShort(MSG_BROADCAST, bound(1, e.ping, 65535));
+ WriteByte(MSG_BROADCAST, min(ceil(e.ping_packetloss * 255), 255));
+ WriteByte(MSG_BROADCAST, min(ceil(e.ping_movementloss * 255), 255));
// record latency times for clients throughout the match so we can report it to playerstats
if(time > (e.latency_time + LATENCY_THINKRATE))
static_init_late();
static_init_precache();
+ IL_PUSH(g_spawnpoints, e); // just incase
+
MapInfo_Enumerate();
MapInfo_FilterGametype(MapInfo_CurrentGametype(), MapInfo_CurrentFeatures(), MapInfo_RequiredFlags(), MapInfo_ForbiddenFlags(), 0);
}
local float cyc;
// look for info_intermission first
- spot = find (NULL, classname, "info_intermission");
+ spot = find(NULL, classname, "info_intermission");
if (spot)
{ // pick a random one
cyc = random() * 4;
while (cyc > 1)
{
- spot = find (spot, classname, "info_intermission");
+ spot = find(spot, classname, "info_intermission");
if (!spot)
- spot = find (spot, classname, "info_intermission");
+ spot = find(spot, classname, "info_intermission");
cyc = cyc - 1;
}
return spot;
}
// then look for the start position
- spot = find (NULL, classname, "info_player_start");
+ spot = find(NULL, classname, "info_player_start");
if (spot)
return spot;
// testinfo_player_start is only found in regioned levels
- spot = find (NULL, classname, "testplayerstart");
+ spot = find(NULL, classname, "testplayerstart");
if (spot)
return spot;
// then look for the start position
- spot = find (NULL, classname, "info_player_deathmatch");
+ spot = find(NULL, classname, "info_player_deathmatch");
if (spot)
return spot;
}
));
- FOREACH_ENTITY_CLASS("info_player_deathmatch", true, LAMBDA(
+ IL_EACH(g_spawnpoints, true,
+ {
switch(it.team)
{
case NUM_TEAM_1: team1_score = 1; break;
case NUM_TEAM_3: team3_score = 1; break;
case NUM_TEAM_4: team4_score = 1; break;
}
- ));
+ });
ClearWinners();
if(team1_score + team2_score + team3_score + team4_score == 0)
if(IS_CLIENT(it) || it.classname == "" || it.move_movetype == MOVETYPE_PUSH || it.move_movetype == MOVETYPE_FAKEPUSH || it.move_movetype == MOVETYPE_PHYSICS)
continue;
- int mt = it.move_movetype;
-
- if(mt == MOVETYPE_PUSH || mt == MOVETYPE_FAKEPUSH || mt == MOVETYPE_PHYSICS)
- {
- it.move_qcphysics = false;
- set_movetype(it, mt);
- continue;
- }
-
- set_movetype(it, ((it.move_qcphysics) ? MOVETYPE_NONE : it.move_movetype));
+ set_movetype(it, it.move_movetype);
if(it.move_movetype == MOVETYPE_NONE)
continue;