diff --git a/d3xp/Misc.cpp b/d3xp/Misc.cpp index 415b188..4b67cd4 100644 --- a/d3xp/Misc.cpp +++ b/d3xp/Misc.cpp @@ -1882,7 +1882,9 @@ void idFuncShootProjectile::Event_Activate( idEntity *activator ) { idFuncShootProjectile::WriteToSnapshot ================ */ -void idFuncShootProjectile::WriteToSnapshot( idBitMsg &msg ) const { +void idFuncShootProjectile::WriteToSnapshot( idBitMsgDelta &msg ) const { + // DG: at least in vanilla Doom3 the argument should really be idBitMsgDelta, not idBitMsg! + // FIXME: now that the argument type is fixed, maybe the commented out code below can be uncommented again? // msg.WriteBits( hidden ? 1 : 0, 1 ); // msg.WriteFloat( renderEntity.shaderParms[ SHADERPARM_PARTICLE_STOPTIME ] ); // msg.WriteFloat( renderEntity.shaderParms[ SHADERPARM_TIMEOFFSET ] ); @@ -1893,7 +1895,9 @@ void idFuncShootProjectile::WriteToSnapshot( idBitMsg &msg ) const { idFuncShootProjectile::ReadFromSnapshot ================ */ -void idFuncShootProjectile::ReadFromSnapshot( const idBitMsg &msg ) { +void idFuncShootProjectile::ReadFromSnapshot( const idBitMsgDelta &msg ) { + // DG: at least in vanilla Doom3 the argument should really be idBitMsgDelta, not idBitMsg! + // FIXME: now that the argument type is fixed, maybe the commented out code below can be uncommented again? // hidden = msg.ReadBits( 1 ) != 0; // renderEntity.shaderParms[ SHADERPARM_PARTICLE_STOPTIME ] = msg.ReadFloat(); // renderEntity.shaderParms[ SHADERPARM_TIMEOFFSET ] = msg.ReadFloat(); diff --git a/d3xp/Misc.h b/d3xp/Misc.h index 1bd2d79..9c63c68 100644 --- a/d3xp/Misc.h +++ b/d3xp/Misc.h @@ -368,8 +368,9 @@ public: virtual void Think(); - virtual void WriteToSnapshot( idBitMsg &msg ) const; - virtual void ReadFromSnapshot( const idBitMsg &msg ); + // DG: at least in vanilla Doom3 the arguments should really be idBitMsgDelta, not idBitMsg! + virtual void WriteToSnapshot( idBitMsgDelta &msg ) const; + virtual void ReadFromSnapshot( const idBitMsgDelta &msg ); private: int mRespawnDelay;