2023-04-27 22:19:39 -04:00
|
|
|
#ifndef LEGOINPUTMANAGER_H
|
|
|
|
#define LEGOINPUTMANAGER_H
|
|
|
|
|
2023-07-02 03:00:28 -04:00
|
|
|
#include "decomp.h"
|
2023-07-02 02:53:54 -04:00
|
|
|
#include "mxpresenter.h"
|
2023-06-19 01:36:07 -04:00
|
|
|
|
2023-07-02 02:53:54 -04:00
|
|
|
enum NotificationId
|
2023-04-27 22:19:39 -04:00
|
|
|
{
|
2023-06-19 00:02:00 -04:00
|
|
|
NONE = 0,
|
|
|
|
KEYDOWN = 7,
|
|
|
|
MOUSEUP = 8,
|
|
|
|
MOUSEDOWN = 9,
|
|
|
|
MOUSEMOVE = 10,
|
|
|
|
TIMER = 15
|
2023-04-27 22:19:39 -04:00
|
|
|
};
|
|
|
|
|
2023-06-29 04:10:08 -04:00
|
|
|
// VTABLE 0x100d8760
|
|
|
|
// SIZE 0x338
|
2023-07-02 02:53:54 -04:00
|
|
|
class LegoInputManager : public MxPresenter
|
2023-04-27 22:19:39 -04:00
|
|
|
{
|
|
|
|
public:
|
2023-06-29 04:10:08 -04:00
|
|
|
LegoInputManager();
|
|
|
|
virtual ~LegoInputManager() override;
|
|
|
|
|
2023-07-02 04:05:49 -04:00
|
|
|
__declspec(dllexport) void QueueEvent(NotificationId id, unsigned char p2, MxLong p3, MxLong p4, unsigned char p5);
|
2023-06-11 21:03:54 -04:00
|
|
|
__declspec(dllexport) void Register(MxCore *);
|
|
|
|
__declspec(dllexport) void UnRegister(MxCore *);
|
2023-04-27 22:19:39 -04:00
|
|
|
|
2023-09-21 14:51:24 -04:00
|
|
|
virtual MxResult Tickle() override; // vtable+0x8
|
2023-06-29 04:10:08 -04:00
|
|
|
|
2023-09-29 12:09:46 -04:00
|
|
|
undefined m_pad40[0x48];
|
|
|
|
|
|
|
|
MxBool m_unk88;
|
|
|
|
undefined m_unk89[0x113];
|
|
|
|
|
|
|
|
// 0x19C
|
2023-06-23 14:45:25 -04:00
|
|
|
int m_joystickIndex;
|
2023-09-29 12:09:46 -04:00
|
|
|
|
|
|
|
undefined m_pad1a0[0x194];
|
|
|
|
|
|
|
|
// 0x334
|
2023-06-23 14:45:25 -04:00
|
|
|
MxBool m_useJoystick;
|
2023-09-29 12:09:46 -04:00
|
|
|
|
|
|
|
undefined m_unk335;
|
|
|
|
MxBool m_unk336;
|
|
|
|
undefined m_unk337;
|
2023-04-27 22:19:39 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // LEGOINPUTMANAGER_H
|