NSRenderableEntity: respect the MF_ROTATE .modelflag field.

This commit is contained in:
Marco Cawthorne 2023-04-15 16:58:25 -07:00
parent 0c5c714b79
commit d213ec110f
Signed by: eukara
GPG Key ID: CE2032F0A2882A22
4 changed files with 10 additions and 16 deletions

View File

@ -320,10 +320,6 @@ NSIO::Save(float handle)
SaveString(handle, "weaponmodel", weaponmodel);
SaveFloat(handle, "weaponframe", weaponframe);
SaveFloat(handle, "currentammo", currentammo);
SaveFloat(handle, "ammo_shells", ammo_shells);
SaveFloat(handle, "ammo_nails", ammo_nails);
SaveFloat(handle, "ammo_rockets", ammo_rockets);
SaveFloat(handle, "ammo_cells", ammo_cells);
SaveFloat(handle, "items", items);
SaveFloat(handle, "takedamage", takedamage);
SaveEntity(handle, "chain", chain);
@ -494,18 +490,6 @@ NSIO::Restore(string strKey, string strValue)
case "currentammo":
currentammo = ReadFloat(strValue);
break;
case "ammo_shells":
ammo_shells = ReadFloat(strValue);
break;
case "ammo_nails":
ammo_nails = ReadFloat(strValue);
break;
case "ammo_rockets":
ammo_rockets = ReadFloat(strValue);
break;
case "ammo_cells":
ammo_cells = ReadFloat(strValue);
break;
case "items":
items = ReadFloat(strValue);
break;

View File

@ -96,6 +96,7 @@ private:
PREDICTED_FLOAT(m_flBoneControl3)
PREDICTED_FLOAT(m_flBoneControl4)
PREDICTED_FLOAT(m_flBoneControl5)
PREDICTED_FLOAT_N(modelflags)
PREDICTED_INT(m_iBody)
PREDICTED_FLOAT_N(colormap)
PREDICTED_VECTOR_N(glowmod)

View File

@ -95,6 +95,7 @@ NSRenderableEntity::EvaluateEntity(void)
EVALUATE_FIELD(solid, RDENT_CHANGED_SOLIDMOVETYPE)
EVALUATE_FIELD(movetype, RDENT_CHANGED_SOLIDMOVETYPE)
EVALUATE_FIELD(flags, RDENT_CHANGED_FLAGS)
EVALUATE_FIELD(modelflags, RDENT_CHANGED_FLAGS)
EVALUATE_VECTOR(mins, 0, RDENT_CHANGED_SIZE)
EVALUATE_VECTOR(mins, 1, RDENT_CHANGED_SIZE)
EVALUATE_VECTOR(mins, 2, RDENT_CHANGED_SIZE)
@ -177,6 +178,7 @@ NSRenderableEntity::SendEntity(entity ePEnt, float flChanged)
SENDENTITY_BYTE(solid, RDENT_CHANGED_SOLIDMOVETYPE)
SENDENTITY_BYTE(movetype, RDENT_CHANGED_SOLIDMOVETYPE)
SENDENTITY_INT(flags, RDENT_CHANGED_FLAGS)
SENDENTITY_INT(modelflags, RDENT_CHANGED_FLAGS)
SENDENTITY_COORD(mins[0], RDENT_CHANGED_SIZE)
SENDENTITY_COORD(mins[1], RDENT_CHANGED_SIZE)
SENDENTITY_COORD(mins[2], RDENT_CHANGED_SIZE)
@ -233,6 +235,7 @@ NSRenderableEntity::ReceiveEntity(float flNew, float flChanged)
READENTITY_BYTE(solid, RDENT_CHANGED_SOLIDMOVETYPE)
READENTITY_BYTE(movetype, RDENT_CHANGED_SOLIDMOVETYPE)
READENTITY_INT(flags, RDENT_CHANGED_FLAGS)
READENTITY_INT(modelflags, RDENT_CHANGED_FLAGS)
READENTITY_COORD(mins[0], RDENT_CHANGED_SIZE)
READENTITY_COORD(mins[1], RDENT_CHANGED_SIZE)
READENTITY_COORD(mins[2], RDENT_CHANGED_SIZE)
@ -536,6 +539,10 @@ NSRenderableEntity::predraw(void)
RenderFXPass();
RenderDebugSkeleton();
if (modelflags & MF_ROTATE) {
angles[1] -= frametime * 120.0;
}
if (serverkeyfloat(SERVERKEY_PAUSESTATE) != 1)
frame1time += frametime;

View File

@ -33,6 +33,8 @@
#define ATTR_CHANGED(x) (x ##_net != x)
#define VEC_CHANGED(x,y) (x ##_net[y] != x[y])
noref const float SVC_TEMPENTITY = 23;
#ifdef CLIENT
string __fullspawndata;
#endif