61 lines
2.7 KiB
C++
61 lines
2.7 KiB
C++
|
#pragma once
|
||
|
|
||
|
#include "../network/netPlayer.hpp"
|
||
|
#include "scriptHandler.hpp"
|
||
|
#include "scrThread.hpp"
|
||
|
|
||
|
#pragma pack(push, 1)
|
||
|
namespace rage
|
||
|
{
|
||
|
class netLoggingInterface;
|
||
|
|
||
|
class scriptHandlerMgr
|
||
|
{
|
||
|
public:
|
||
|
virtual ~scriptHandlerMgr() = default;
|
||
|
|
||
|
// Initializes some scripting-related pools.
|
||
|
virtual bool initialize() = 0; // 1 (0x08)
|
||
|
|
||
|
// Called every tick.
|
||
|
virtual void _0x10() = 0; // 2 (0x10)
|
||
|
|
||
|
// Frees some scripting-related pools.
|
||
|
virtual void shutdown() = 0; // 3 (0x18)
|
||
|
|
||
|
virtual void _0x20() = 0; // 4 (0x20)
|
||
|
virtual void _0x28() = 0; // 5 (0x28)
|
||
|
virtual void _0x30() = 0; // 6 (0x30)
|
||
|
|
||
|
// Generates a rage::scriptId from the thread and copies it over to a global structure.
|
||
|
virtual void _0x38(scrThread*) = 0; // 7 (0x38)
|
||
|
|
||
|
// Allocates and constructs a script handler.
|
||
|
virtual scriptHandler *create_script_handler() = 0; // 8 (0x40)
|
||
|
|
||
|
// Finds the script handler for a given script id.
|
||
|
virtual scriptHandler *get_script_handler(scriptId*) = 0; // 9 (0x48)
|
||
|
|
||
|
// Attaches a script thread.
|
||
|
virtual void attach_thread(scrThread*) = 0; // 10 (0x50)
|
||
|
|
||
|
// Detaches a script thread.
|
||
|
virtual void detach_thread(scrThread*) = 0; // 11 (0x58)
|
||
|
|
||
|
// Called when a player joins.
|
||
|
virtual void on_player_join(netPlayer*) = 0; // 12 (0x60)
|
||
|
|
||
|
// Called when a player leaves.
|
||
|
virtual void on_player_left(netPlayer*) = 0; // 13 (0x68)
|
||
|
|
||
|
virtual std::int32_t _0x70() = 0; // 14 (0x70)
|
||
|
virtual void *_0x78() = 0; // 15 (0x78)
|
||
|
public:
|
||
|
char m_padding1[0x28]; // 0x08
|
||
|
bool m_initialized; // 0x30
|
||
|
bool m_initialized2; // 0x31
|
||
|
char m_padding2[0x0E]; // 0x32
|
||
|
netLoggingInterface *m_logger; // 0x40
|
||
|
};
|
||
|
}
|
||
|
#pragma pack(pop)
|