#ifndef PREDICTABLEID_H #define PREDICTABLEID_H #ifdef _WIN32 #pragma once #endif #if !defined( NO_ENTITY_PREDICTION ) class CPredictableId { public: CPredictableId(void); static void ResetInstanceCounters(void); bool IsActive(void) const; void Init(int player, int command, const char* classname, const char* module, int line); int GetPlayer(void) const; int GetHash(void) const; int GetInstanceNumber(void) const; int GetCommandNumber(void) const; void SetAcknowledged(bool ack); bool GetAcknowledged(void) const; int GetRaw(void) const; void SetRaw(int raw); char const* Describe(void) const; bool operator ==(const CPredictableId& other) const; bool operator !=(const CPredictableId& other) const; private: void SetCommandNumber(int commandNumber); void SetPlayer(int playerIndex); void SetInstanceNumber(int counter); struct bitfields { unsigned int ack : 1; unsigned int player : 5; unsigned int command : 10; unsigned int hash : 12; unsigned int instance : 4; } m_PredictableID; }; FORCEINLINE void NetworkVarConstruct(CPredictableId& x) {} #endif #endif