diff options
Diffstat (limited to 'tf2/console_log.hpp')
| -rw-r--r-- | tf2/console_log.hpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/tf2/console_log.hpp b/tf2/console_log.hpp new file mode 100644 index 0000000..4659ea1 --- /dev/null +++ b/tf2/console_log.hpp @@ -0,0 +1,34 @@ +#pragma once
+
+#include <memory>
+#include <Windows.h>
+#pragma warning(disable: 4996)
+
+class console {
+public:
+ void create( ) {
+ AllocConsole( );
+ freopen( "CONOUT$", "w", stdout );
+ SetConsoleTitleA( "tf2internal" );
+
+ game_console_print = reinterpret_cast< decltype( game_console_print ) >( GetProcAddress( GetModuleHandleA( "tier0.dll" ), "Msg" ) );
+ }
+
+ void destroy( ) {
+ FreeConsole( );
+ fclose( stdout );
+ }
+
+ __forceinline void log_function( const char* msg ) {
+ printf( "%s: %s", __FUNCTION__, msg );
+ }
+
+ using msg_t = void( __cdecl* )( const char*, ... );
+ msg_t game_console_print;
+
+
+ static console *con( ) {
+ static console g_singleton_;
+ return &g_singleton_;
+ }
+};
\ No newline at end of file |
