summaryrefslogtreecommitdiff
path: root/cheat/gmod/listener.hpp
blob: 182a615d1ab7d46c39a5c89d6b9ac62d31973582 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#pragma once
#include "sdk.hpp"

struct generic_listener_t : public IGameEventListener2 {
	generic_listener_t( const char* event_name,
		void( *function )( IGameEvent* ) );

	generic_listener_t( ) = default;

	~generic_listener_t( );

	void init( );

	void FireGameEvent( IGameEvent* event ) override { m_function( event ); }
	int  GetEventDebugID( ) override { return 0x2a; }
private:
	void( *m_function )( IGameEvent* );
	const char* m_name{ };
	bool m_registered{ };
};

namespace listeners {
	extern void bullet_impact( IGameEvent* e );
	extern void player_hurt( IGameEvent* e );
	extern void round_start( IGameEvent* e );
}