diff options
Diffstat (limited to 'cheat/gmod/KeyValues.hpp')
| -rw-r--r-- | cheat/gmod/KeyValues.hpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/cheat/gmod/KeyValues.hpp b/cheat/gmod/KeyValues.hpp new file mode 100644 index 0000000..0b11698 --- /dev/null +++ b/cheat/gmod/KeyValues.hpp @@ -0,0 +1,38 @@ +#pragma once
+#include "util.hpp"
+
+class IKeyValuesSystem {
+public:
+ int GetSymbolForString( const char* string, bool create );
+ const char* GetStringForSymbol( int symbol );
+};
+
+class KeyValues
+{
+public:
+ KeyValues( const char *setName );
+ bool LoadFromBuffer( char const *resourceName, const char *pBuffer, void* pFileSystem = nullptr, const char *pPathID = nullptr, bool( *unknown )( const char* ) = nullptr );
+
+ int m_iKeyName;
+
+ char *m_sValue;
+ wchar_t *m_wsValue;
+
+ // we don't delete these
+ union {
+ int m_iValue;
+ float m_flValue;
+ void *m_pValue;
+ unsigned char m_Color[ 4 ];
+ };
+
+ char m_iDataType;
+ char m_bHasEscapeSequences;
+ char m_bEvaluateConditionals;
+
+ KeyValues* FindKey( const char* key_name );
+
+ KeyValues *m_pPeer; // pointer to next key in list
+ KeyValues *m_pSub; // pointer to Start of a new sub key list
+ KeyValues *m_pChain;// Search here if it's not in our list
+};
\ No newline at end of file |
