Clean up our player enumflags.
This commit is contained in:
parent
ef00baaa49
commit
6611e8e7fc
1 changed files with 28 additions and 22 deletions
|
@ -24,34 +24,16 @@
|
||||||
/* all potential SendFlags bits we can possibly send */
|
/* all potential SendFlags bits we can possibly send */
|
||||||
enumflags
|
enumflags
|
||||||
{
|
{
|
||||||
PLAYER_KEEPALIVE,
|
PLAYER_TOPFRAME = PLAYER_CUSTOMFIELDSTART,
|
||||||
PLAYER_MODELINDEX,
|
|
||||||
PLAYER_ORIGIN,
|
|
||||||
PLAYER_ORIGIN_Z,
|
|
||||||
PLAYER_ANGLES_X,
|
|
||||||
PLAYER_ANGLES_Y,
|
|
||||||
PLAYER_COLORMAP,
|
|
||||||
PLAYER_VELOCITY,
|
|
||||||
PLAYER_VELOCITY_Z,
|
|
||||||
PLAYER_FLAGS,
|
|
||||||
PLAYER_WEAPON,
|
|
||||||
PLAYER_ITEMS,
|
|
||||||
PLAYER_HEALTH,
|
|
||||||
PLAYER_ARMOR,
|
|
||||||
PLAYER_MOVETYPE,
|
|
||||||
PLAYER_VIEWOFS,
|
|
||||||
PLAYER_TOPFRAME,
|
|
||||||
PLAYER_BOTTOMFRAME,
|
PLAYER_BOTTOMFRAME,
|
||||||
PLAYER_AMMO1,
|
PLAYER_AMMO1,
|
||||||
PLAYER_AMMO2,
|
PLAYER_AMMO2,
|
||||||
PLAYER_AMMO3,
|
PLAYER_AMMO3,
|
||||||
PLAYER_UNUSED1,
|
PLAYER_UNUSED5,
|
||||||
PLAYER_UNUSED2
|
PLAYER_UNUSED6,
|
||||||
|
PLAYER_UNUSED7
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef SERVER
|
#ifdef SERVER
|
||||||
void CSEv_ViewAnglesR_fff(float arg_x, float arg_y, float arg_z){
|
void CSEv_ViewAnglesR_fff(float arg_x, float arg_y, float arg_z){
|
||||||
player pl = (player)self;
|
player pl = (player)self;
|
||||||
|
@ -779,12 +761,36 @@ player::SendEntity
|
||||||
float
|
float
|
||||||
player::SendEntity(entity ePEnt, float fChanged)
|
player::SendEntity(entity ePEnt, float fChanged)
|
||||||
{
|
{
|
||||||
|
bool is_spec = false;
|
||||||
|
bool spectarget = false;
|
||||||
|
|
||||||
/* don't broadcast invisible players */
|
/* don't broadcast invisible players */
|
||||||
if (IsFakeSpectator() && ePEnt != this)
|
if (IsFakeSpectator() && ePEnt != this)
|
||||||
return (0);
|
return (0);
|
||||||
if (!GetModelindex() && ePEnt != this)
|
if (!GetModelindex() && ePEnt != this)
|
||||||
return (0);
|
return (0);
|
||||||
|
|
||||||
|
/* figure out if we should optimise this player */
|
||||||
|
if (ePEnt.flags & FL_CLIENT && ePEnt != this) {
|
||||||
|
NSClientSpectator sp = (NSClientSpectator)ePEnt;
|
||||||
|
is_spec = (sp.IsFakeSpectator() || sp.IsRealSpectator());
|
||||||
|
spectarget = (is_spec == true && edict_num(sp.spec_ent) == this);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* if we're a spectator of any type and spectate this player */
|
||||||
|
if (ePEnt != this && spectarget == false) {
|
||||||
|
fChanged &= ~PLAYER_ITEMS;
|
||||||
|
fChanged &= ~PLAYER_HEALTH;
|
||||||
|
fChanged &= ~PLAYER_TIMINGS;
|
||||||
|
fChanged &= ~PLAYER_AMMO1;
|
||||||
|
fChanged &= ~PLAYER_AMMO2;
|
||||||
|
fChanged &= ~PLAYER_AMMO3;
|
||||||
|
fChanged &= ~PLAYER_FLAGS;
|
||||||
|
fChanged &= ~PLAYER_PUNCHANGLE;
|
||||||
|
fChanged &= ~PLAYER_VIEWZOOM;
|
||||||
|
fChanged &= ~PLAYER_SPECTATE;
|
||||||
|
}
|
||||||
|
|
||||||
WriteByte(MSG_ENTITY, ENT_PLAYER);
|
WriteByte(MSG_ENTITY, ENT_PLAYER);
|
||||||
WriteFloat(MSG_ENTITY, fChanged);
|
WriteFloat(MSG_ENTITY, fChanged);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue